merge the formfield patch from ooo-build
[ooovba.git] / configmgr / source / api2 / apiaccessobj.cxx
blobd595653359796d2ede0fd541c91ac294b4509593
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: apiaccessobj.cxx,v $
10 * $Revision: 1.7 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 // MARKER(update_precomp.py): autogen include statement, do not remove
32 #include "precompiled_configmgr.hxx"
33 #include <stdio.h>
34 #include "apiaccessobj.hxx"
36 #include "apiserviceinfo.hxx"
37 #include "confsvccomponent.hxx"
39 namespace configmgr
41 //-----------------------------------------------------------------------------
42 namespace configapi
44 //========================================================================
45 //= service infos
46 //========================================================================
48 const AsciiServiceName c_aUserContainerServices[] =
50 "com.sun.star.configuration.UserAdministration",
51 "com.sun.star.configuration.ConfigurationContainer",
52 "com.sun.star.configuration.ConfigurationUpdateAccess",
53 "com.sun.star.configuration.ConfigurationAccess",
54 NULL
56 const AsciiServiceName c_aContainerServices[] =
58 "com.sun.star.configuration.ConfigurationContainer",
59 "com.sun.star.configuration.ConfigurationUpdateAccess",
60 "com.sun.star.configuration.ConfigurationAccess",
61 NULL
63 const AsciiServiceName c_aUpdateServices[] =
65 "com.sun.star.configuration.ConfigurationUpdateAccess",
66 "com.sun.star.configuration.ConfigurationAccess",
67 NULL
70 const AsciiServiceName c_aAccessServices[] =
72 "com.sun.star.configuration.ConfigurationAccess",
73 NULL
76 const AsciiServiceName c_aNoServices[] =
78 NULL
80 //-----------------------------------------------------------------------------
82 ServiceInfo const aInnerGroupInfoSI =
84 "com.sun.star.configuration.configmgr.OInnerGroupInfoAccess",
85 c_aNoServices
87 ServiceInfo const aInnerGroupUpdateSI =
89 "com.sun.star.configuration.configmgr.OInnerGroupUpdateAccess",
90 c_aNoServices
92 ServiceInfo const aInnerSetInfoSI =
94 "com.sun.star.configuration.configmgr.OInnerSetInfoAccess",
95 c_aNoServices
97 ServiceInfo const aInnerTreeSetSI =
99 "com.sun.star.configuration.configmgr.OInnerTreeSetUpdateAccess",
100 c_aNoServices
102 ServiceInfo const aInnerValueSetSI =
104 "com.sun.star.configuration.configmgr.OInnerValueSetUpdateAccess",
105 c_aNoServices
107 //-----------------------------------------------------------------------------
109 ServiceInfo const aSetElementGroupInfoSI =
111 "com.sun.star.configuration.configmgr.OSetElementGroupInfoAccess",
112 c_aAccessServices
114 ServiceInfo const aSetElementGroupUpdateSI =
116 "com.sun.star.configuration.configmgr.OSetElementGroupUpdateAccess",
117 c_aUpdateServices
119 ServiceInfo const aSetElementSetInfoSI =
121 "com.sun.star.configuration.configmgr.OSetElementSetInfoAccess",
122 c_aAccessServices
124 ServiceInfo const aSetElementTreeSetSI =
126 "com.sun.star.configuration.configmgr.OSetElementTreeSetUpdateAccess",
127 c_aContainerServices
129 ServiceInfo const aSetElementValueSetSI =
131 "com.sun.star.configuration.configmgr.OSetElementValueSetUpdateAccess",
132 c_aContainerServices
134 //-----------------------------------------------------------------------------
136 ServiceInfo const aRootElementGroupInfoSI =
138 "com.sun.star.configuration.configmgr.ORootElementGroupInfoAccess",
139 c_aAccessServices
141 ServiceInfo const aRootElementGroupUpdateSI =
143 "com.sun.star.configuration.configmgr.ORootElementGroupUpdateAccess",
144 c_aUpdateServices
146 ServiceInfo const aRootElementSetInfoSI =
148 "com.sun.star.configuration.configmgr.ORootElementSetInfoAccess",
149 c_aAccessServices
151 ServiceInfo const aRootElementTreeSetUpdateSI =
153 "com.sun.star.configuration.configmgr.ORootElementTreeSetUpdateAccess",
154 c_aContainerServices
156 ServiceInfo const aRootElementValueSetUpdateSI =
158 "com.sun.star.configuration.configmgr.ORootElementValueSetUpdateAccess",
159 c_aContainerServices
161 //-----------------------------------------------------------------------------
163 ServiceInfo const aRootElementReadAccessSI =
165 "com.sun.star.configuration.configmgr.ORootElementReadAccess",
166 c_aAccessServices
168 ServiceInfo const aRootElementUpdateAccessSI =
170 "com.sun.star.configuration.configmgr.ORootElementUpdateAccess",
171 c_aUpdateServices
173 ServiceInfo const aRootElementAdminAccessSI =
175 "com.sun.star.configuration.configmgr.ORootElementUserAdminAccess",
176 c_aUserContainerServices
177 };*/
179 //========================================================================
180 //= service info static members
181 //========================================================================
183 //-----------------------------------------------------------------------------
184 // Inner Elements
185 //-----------------------------------------------------------------------------
187 template <>
188 ServiceImplementationInfo const *
189 const OInnerElement<NodeGroupInfoAccess>::s_pServiceInfo = &aInnerGroupInfoSI;
191 template <>
192 ServiceImplementationInfo const *
193 const OInnerElement<NodeGroupAccess>::s_pServiceInfo = &aInnerGroupUpdateSI;
195 template <>
196 ServiceImplementationInfo const *
197 const OInnerElement<NodeSetInfoAccess>::s_pServiceInfo = &aInnerSetInfoSI;
199 template <>
200 ServiceImplementationInfo const *
201 const OInnerElement<NodeTreeSetAccess>::s_pServiceInfo = &aInnerTreeSetSI;
203 template <>
204 ServiceImplementationInfo const *
205 const OInnerElement<NodeValueSetAccess>::s_pServiceInfo = &aInnerValueSetSI;
208 //-----------------------------------------------------------------------------
209 // Set Elements
210 //-----------------------------------------------------------------------------
212 template <>
213 ServiceImplementationInfo const *
214 const OSetElement<NodeGroupInfoAccess>::s_pServiceInfo = &aSetElementGroupInfoSI;
216 template <>
217 ServiceImplementationInfo const *
218 const OSetElement<NodeGroupAccess>::s_pServiceInfo = &aSetElementGroupUpdateSI;
220 template <>
221 ServiceImplementationInfo const *
222 const OSetElement<NodeSetInfoAccess>::s_pServiceInfo = &aSetElementSetInfoSI;
224 template <>
225 ServiceImplementationInfo const *
226 const OSetElement<NodeTreeSetAccess>::s_pServiceInfo = &aSetElementTreeSetSI;
228 template <>
229 ServiceImplementationInfo const *
230 const OSetElement<NodeValueSetAccess>::s_pServiceInfo = &aSetElementValueSetSI;
232 //-----------------------------------------------------------------------------
233 // Root Elements
234 //-----------------------------------------------------------------------------
236 template <>
237 ServiceImplementationInfo const *
238 const OReadRootElement<NodeGroupInfoAccess>::s_pServiceInfo = &aRootElementGroupInfoSI;
240 template <>
241 ServiceImplementationInfo const *
242 const OUpdateRootElement<NodeGroupAccess>::s_pServiceInfo = &aRootElementGroupUpdateSI;
244 template <>
245 ServiceImplementationInfo const *
246 const OReadRootElement<NodeSetInfoAccess>::s_pServiceInfo = &aRootElementSetInfoSI;
248 template <>
249 ServiceImplementationInfo const *
250 const OUpdateRootElement<NodeTreeSetAccess>::s_pServiceInfo = &aRootElementTreeSetUpdateSI;
252 template <>
253 ServiceImplementationInfo const *
254 const OUpdateRootElement<NodeValueSetAccess>::s_pServiceInfo = &aRootElementValueSetUpdateSI;
258 //========================================================================
259 //= Instantiations
260 //========================================================================
262 //-----------------------------------------------------------------------------
263 // Inner Elements
264 //-----------------------------------------------------------------------------
266 template class OInnerElement<NodeGroupInfoAccess>; // OInnerGroupInfoAccess
267 template class OInnerElement<NodeGroupAccess>; // OInnerGroupUpdateAccess
268 template class OInnerElement<NodeSetInfoAccess>; // OInnerSetInfoAccess
269 template class OInnerElement<NodeTreeSetAccess>; // OInnerTreeSetUpdateAccess
270 template class OInnerElement<NodeValueSetAccess>; // OInnerValueSetUpdateAccess
272 //-----------------------------------------------------------------------------
273 // Set Elements
274 //-----------------------------------------------------------------------------
275 template class OSetElement<NodeGroupInfoAccess>; // OSetElementGroupInfoAccess
276 template class OSetElement<NodeGroupAccess>; // OSetElementGroupUpdateAccess
277 template class OSetElement<NodeSetInfoAccess>; // OSetElementSetInfoAccess
278 template class OSetElement<NodeTreeSetAccess>; // OSetElementTreeSetUpdateAccess
279 template class OSetElement<NodeValueSetAccess>; // OSetElementValueSetUpdateAccess
281 //-----------------------------------------------------------------------------
282 // Root Elements
283 //-----------------------------------------------------------------------------
285 template class OReadRootElement<NodeGroupInfoAccess>; // ORootElementGroupInfoAccess
286 template class OUpdateRootElement<NodeGroupAccess>; // ORootElementGroupUpdateAccess
287 template class OReadRootElement<NodeSetInfoAccess>; // ORootElementSetInfoAccess
288 template class OUpdateRootElement<NodeTreeSetAccess>; // ORootElementTreeSetUpdateAccess
289 template class OUpdateRootElement<NodeValueSetAccess>; // ORootElementValueSetUpdateAccess
291 //-----------------------------------------------------------------------------