1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 #include <precomp.h>
23 #include <reposy.hxx>
24 
25 
26 // NOT FULLY DECLARED SERVICES
27 #include <cpp_internalgate.hxx>
28 #include <idl_internalgate.hxx>
29 
30 
31 namespace ary
32 {
33 
34 
35 //*****************     Repository          ************//
36 
37 DYN Repository &
Create_()38 Repository::Create_()
39 {
40     return *new RepositoryCenter;
41 }
42 
43 
44 
45 
RepositoryCenter()46 RepositoryCenter::RepositoryCenter()
47     :   sDisplayedName(),
48         aLocation(),
49         pCppPartition(0),
50         pIdlPartition(0)
51 {
52     pCppPartition = & cpp::InternalGate::Create_Partition_(*this);
53     pIdlPartition = & idl::InternalGate::Create_Partition_(*this);
54 }
55 
~RepositoryCenter()56 RepositoryCenter::~RepositoryCenter()
57 {
58 }
59 
60 const ::ary::cpp::Gate &
Gate_Cpp() const61 RepositoryCenter::Gate_Cpp() const
62 {
63     csv_assert(pCppPartition);
64     return *pCppPartition;
65 }
66 
67 const ::ary::idl::Gate &
Gate_Idl() const68 RepositoryCenter::Gate_Idl() const
69 {
70     csv_assert(pIdlPartition);
71     return *pIdlPartition;
72 }
73 
74 const String &
Title() const75 RepositoryCenter::Title() const
76 {
77     return sDisplayedName;
78 }
79 
80 
81 ::ary::cpp::Gate &
Gate_Cpp()82 RepositoryCenter::Gate_Cpp()
83 {
84     csv_assert(pCppPartition);
85     return *pCppPartition;
86 }
87 
88 ::ary::idl::Gate &
Gate_Idl()89 RepositoryCenter::Gate_Idl()
90 {
91     csv_assert(pIdlPartition);
92     return *pIdlPartition;
93 }
94 
95 void
Set_Title(const String & i_sName)96 RepositoryCenter::Set_Title(const String & i_sName)
97 {
98     sDisplayedName = i_sName;
99 }
100 
101 
102 
103 
104 //*********************     Repository Type Info Data       ****************//
105 
106 // !!! IMPORTANT - NEVER DELETE OR CHANGE - ADDING ALLOWED
107 
108 
109 
110 /*  ClassType-Ids
111     -------------
112 
113     cpp                 1000
114     idl                 2000
115     corba               3000
116     java                4000
117     information         5000
118     logic location      6000
119     phys location       7000
120     sec. prod.          8000
121 
122 
123     cpp
124     ---
125     Namespace           1000
126     Class               1001
127     Enum                1002
128     Typedef             1003
129     Function            1004
130     Variable            1005
131     EnumValue           1006
132     NamespaceAlias      1007
133 
134     BuiltInType         1200
135     CeType_Final        1201
136     CeType_Extern       1202
137     UsedType            1203
138     PtrType             1211
139     RefType             1212
140     ConstType           1221
141     VolatileType        1222
142     ArrayType           1230
143     TemplateInstance    1235
144     FunctionPtr         1240
145     DataMemberPtr       1250
146     OperationMemberPtr  1260
147 
148     TplParam_Type       1301
149     TplParam_Value      1302
150 
151     OpSignature         1400
152 
153     Define              1601
154     Macro               1602
155 
156     ProjectGroup        1901
157     FileGroup           1902
158 
159     TopProject          1921
160 
161 
162 
163     idl
164     ---
165 
166     Module              2000
167     Interface           2001
168     Function            2002
169     Service             2003
170     Property            2004
171     Enum                2005
172     EnumValue           2006
173     Typedef             2007
174     Struct              2008
175     StructElement       2009
176     Exception           2010
177     ConstantGroup       2011
178     Constant            2012
179     Singleton           2013
180     Attribute           2014
181     SglIfcService       2015
182     SglIfcSingleton     2016
183 
184     BuiltInType         2200
185     CeType              2201
186     Sequence            2202
187     ExplicitType        2203
188     ExplicitNameRoom    2204
189     TemplateParamType   2205
190 
191 
192     java
193     ----
194     Package             4000
195     Interface           4001
196     Class               4002
197 
198     physical location
199     -----------------
200     Root                7000
201     Directory           7030
202     File                7100
203 
204 
205     info
206     ----
207     CodeInformation
208         (IDL)          11002
209 */
210 
211 
212 }   // namespace ary
213