1------------------------------------------------------------------------------
2--                                                                          --
3--                            Matreshka Project                             --
4--                                                                          --
5--                          Ada Modeling Framework                          --
6--                                                                          --
7--                        Runtime Library Component                         --
8--                                                                          --
9------------------------------------------------------------------------------
10--                                                                          --
11-- Copyright © 2011-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: 2772 $ $Date: 2012-03-29 22:45:04 +0400 (Thu, 29 Mar 2012) $
43------------------------------------------------------------------------------
44--  Helper subprograms for element modification notification.
45------------------------------------------------------------------------------
46with AMF.UML;
47
48package AMF.Internals.Tables.UML_Notification is
49
50   procedure Notify_Attribute_Set
51    (Element   : AMF.Internals.AMF_Element;
52     Property  : AMF.Internals.CMOF_Element;
53     Old_Value : AMF.Internals.AMF_Element;
54     New_Value : AMF.Internals.AMF_Element);
55
56   procedure Notify_Attribute_Set
57    (Element   : AMF.Internals.AMF_Element;
58     Property  : AMF.Internals.CMOF_Element;
59     Old_Value : AMF.UML.UML_Aggregation_Kind;
60     New_Value : AMF.UML.UML_Aggregation_Kind);
61
62   procedure Notify_Attribute_Set
63    (Element   : AMF.Internals.AMF_Element;
64     Property  : AMF.Internals.CMOF_Element;
65     Old_Value : AMF.UML.UML_Call_Concurrency_Kind;
66     New_Value : AMF.UML.UML_Call_Concurrency_Kind);
67
68   procedure Notify_Attribute_Set
69    (Element   : AMF.Internals.AMF_Element;
70     Property  : AMF.Internals.CMOF_Element;
71     Old_Value : AMF.UML.UML_Expansion_Kind;
72     New_Value : AMF.UML.UML_Expansion_Kind);
73
74   procedure Notify_Attribute_Set
75    (Element   : AMF.Internals.AMF_Element;
76     Property  : AMF.Internals.CMOF_Element;
77     Old_Value : AMF.UML.UML_Interaction_Operator_Kind;
78     New_Value : AMF.UML.UML_Interaction_Operator_Kind);
79
80   procedure Notify_Attribute_Set
81    (Element   : AMF.Internals.AMF_Element;
82     Property  : AMF.Internals.CMOF_Element;
83     Old_Value : AMF.UML.UML_Message_Sort;
84     New_Value : AMF.UML.UML_Message_Sort);
85
86   procedure Notify_Attribute_Set
87    (Element   : AMF.Internals.AMF_Element;
88     Property  : AMF.Internals.CMOF_Element;
89     Old_Value : AMF.UML.UML_Object_Node_Ordering_Kind;
90     New_Value : AMF.UML.UML_Object_Node_Ordering_Kind);
91
92   procedure Notify_Attribute_Set
93    (Element   : AMF.Internals.AMF_Element;
94     Property  : AMF.Internals.CMOF_Element;
95     Old_Value : AMF.UML.Optional_UML_Parameter_Effect_Kind;
96     New_Value : AMF.UML.Optional_UML_Parameter_Effect_Kind);
97
98   procedure Notify_Attribute_Set
99    (Element   : AMF.Internals.AMF_Element;
100     Property  : AMF.Internals.CMOF_Element;
101     Old_Value : AMF.UML.UML_Parameter_Direction_Kind;
102     New_Value : AMF.UML.UML_Parameter_Direction_Kind);
103
104   procedure Notify_Attribute_Set
105    (Element   : AMF.Internals.AMF_Element;
106     Property  : AMF.Internals.CMOF_Element;
107     Old_Value : AMF.UML.UML_Pseudostate_Kind;
108     New_Value : AMF.UML.UML_Pseudostate_Kind);
109
110   procedure Notify_Attribute_Set
111    (Element   : AMF.Internals.AMF_Element;
112     Property  : AMF.Internals.CMOF_Element;
113     Old_Value : AMF.UML.UML_Transition_Kind;
114     New_Value : AMF.UML.UML_Transition_Kind);
115
116   procedure Notify_Attribute_Set
117    (Element   : AMF.Internals.AMF_Element;
118     Property  : AMF.Internals.CMOF_Element;
119     Old_Value : AMF.UML.UML_Visibility_Kind;
120     New_Value : AMF.UML.UML_Visibility_Kind);
121
122   procedure Notify_Attribute_Set
123    (Element   : AMF.Internals.AMF_Element;
124     Property  : AMF.Internals.CMOF_Element;
125     Old_Value : AMF.UML.Optional_UML_Visibility_Kind;
126     New_Value : AMF.UML.Optional_UML_Visibility_Kind);
127
128end AMF.Internals.Tables.UML_Notification;
129