1------------------------------------------------------------------------------
2--                                                                          --
3--                            Matreshka Project                             --
4--                                                                          --
5--                          Ada Modeling Framework                          --
6--                                                                          --
7--                        Runtime Library Component                         --
8--                                                                          --
9------------------------------------------------------------------------------
10--                                                                          --
11-- Copyright © 2012, Vadim Godunko <vgodunko@gmail.com>                     --
12-- All rights reserved.                                                     --
13--                                                                          --
14-- Redistribution and use in source and binary forms, with or without       --
15-- modification, are permitted provided that the following conditions       --
16-- are met:                                                                 --
17--                                                                          --
18--  * Redistributions of source code must retain the above copyright        --
19--    notice, this list of conditions and the following disclaimer.         --
20--                                                                          --
21--  * Redistributions in binary form must reproduce the above copyright     --
22--    notice, this list of conditions and the following disclaimer in the   --
23--    documentation and/or other materials provided with the distribution.  --
24--                                                                          --
25--  * Neither the name of the Vadim Godunko, IE nor the names of its        --
26--    contributors may be used to endorse or promote products derived from  --
27--    this software without specific prior written permission.              --
28--                                                                          --
29-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS      --
30-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT        --
31-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR    --
32-- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT     --
33-- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,   --
34-- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED --
35-- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR   --
36-- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF   --
37-- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING     --
38-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS       --
39-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.             --
40--                                                                          --
41------------------------------------------------------------------------------
42--  $Revision: 2807 $ $Date: 2012-04-07 01:28:23 +0400 (Sat, 07 Apr 2012) $
43------------------------------------------------------------------------------
44--  This file is generated, don't edit it.
45------------------------------------------------------------------------------
46with AMF.Elements;
47with AMF.Internals.Helpers;
48with AMF.Internals.Tables.Utp_Attributes;
49with AMF.String_Collections;
50with AMF.UML.Structured_Classifiers;
51with AMF.Visitors.Utp_Iterators;
52with AMF.Visitors.Utp_Visitors;
53
54package body AMF.Internals.Utp_Test_Components is
55
56   ------------------------------------
57   -- Get_Base_Structured_Classifier --
58   ------------------------------------
59
60   overriding function Get_Base_Structured_Classifier
61    (Self : not null access constant Utp_Test_Component_Proxy)
62       return AMF.UML.Structured_Classifiers.UML_Structured_Classifier_Access is
63   begin
64      return
65        AMF.UML.Structured_Classifiers.UML_Structured_Classifier_Access
66         (AMF.Internals.Helpers.To_Element
67           (AMF.Internals.Tables.Utp_Attributes.Internal_Get_Base_Structured_Classifier
68             (Self.Element)));
69   end Get_Base_Structured_Classifier;
70
71   ------------------------------------
72   -- Set_Base_Structured_Classifier --
73   ------------------------------------
74
75   overriding procedure Set_Base_Structured_Classifier
76    (Self : not null access Utp_Test_Component_Proxy;
77     To   : AMF.UML.Structured_Classifiers.UML_Structured_Classifier_Access) is
78   begin
79      AMF.Internals.Tables.Utp_Attributes.Internal_Set_Base_Structured_Classifier
80       (Self.Element,
81        AMF.Internals.Helpers.To_Element
82         (AMF.Elements.Element_Access (To)));
83   end Set_Base_Structured_Classifier;
84
85   --------------------------------
86   -- Get_Compatible_SUT_Version --
87   --------------------------------
88
89   overriding function Get_Compatible_SUT_Version
90    (Self : not null access constant Utp_Test_Component_Proxy)
91       return AMF.String_Collections.Set_Of_String is
92   begin
93      raise Program_Error;
94      return X : AMF.String_Collections.Set_Of_String;
95   end Get_Compatible_SUT_Version;
96
97   --------------------------------
98   -- Get_Compatible_SUT_Variant --
99   --------------------------------
100
101   overriding function Get_Compatible_SUT_Variant
102    (Self : not null access constant Utp_Test_Component_Proxy)
103       return AMF.String_Collections.Set_Of_String is
104   begin
105      raise Program_Error;
106      return X : AMF.String_Collections.Set_Of_String;
107   end Get_Compatible_SUT_Variant;
108
109   -------------------
110   -- Enter_Element --
111   -------------------
112
113   overriding procedure Enter_Element
114    (Self    : not null access constant Utp_Test_Component_Proxy;
115     Visitor : in out AMF.Visitors.Abstract_Visitor'Class;
116     Control : in out AMF.Visitors.Traverse_Control) is
117   begin
118      if Visitor in AMF.Visitors.Utp_Visitors.Utp_Visitor'Class then
119         AMF.Visitors.Utp_Visitors.Utp_Visitor'Class
120          (Visitor).Enter_Test_Component
121            (AMF.Utp.Test_Components.Utp_Test_Component_Access (Self),
122           Control);
123      end if;
124   end Enter_Element;
125
126   -------------------
127   -- Leave_Element --
128   -------------------
129
130   overriding procedure Leave_Element
131    (Self    : not null access constant Utp_Test_Component_Proxy;
132     Visitor : in out AMF.Visitors.Abstract_Visitor'Class;
133     Control : in out AMF.Visitors.Traverse_Control) is
134   begin
135      if Visitor in AMF.Visitors.Utp_Visitors.Utp_Visitor'Class then
136         AMF.Visitors.Utp_Visitors.Utp_Visitor'Class
137          (Visitor).Leave_Test_Component
138            (AMF.Utp.Test_Components.Utp_Test_Component_Access (Self),
139           Control);
140      end if;
141   end Leave_Element;
142
143   -------------------
144   -- Visit_Element --
145   -------------------
146
147   overriding procedure Visit_Element
148    (Self     : not null access constant Utp_Test_Component_Proxy;
149     Iterator : in out AMF.Visitors.Abstract_Iterator'Class;
150     Visitor  : in out AMF.Visitors.Abstract_Visitor'Class;
151     Control  : in out AMF.Visitors.Traverse_Control) is
152   begin
153      if Iterator in AMF.Visitors.Utp_Iterators.Utp_Iterator'Class then
154         AMF.Visitors.Utp_Iterators.Utp_Iterator'Class
155          (Iterator).Visit_Test_Component
156            (Visitor,
157             AMF.Utp.Test_Components.Utp_Test_Component_Access (Self),
158           Control);
159      end if;
160   end Visit_Element;
161
162end AMF.Internals.Utp_Test_Components;
163