1d1766043SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5d1766043SAndrew Rist * distributed with this work for additional information
6d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10d1766043SAndrew Rist *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12d1766043SAndrew Rist *
13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14d1766043SAndrew Rist * software distributed under the License is distributed on an
15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17d1766043SAndrew Rist * specific language governing permissions and limitations
18d1766043SAndrew Rist * under the License.
19d1766043SAndrew Rist *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_configuration_backend_XBackend_idl__
24cdf0e10cSrcweir#define __com_sun_star_configuration_backend_XBackend_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__
27cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir#ifndef __com_sun_star_configuration_backend_XUpdateHandler_idl__
31cdf0e10cSrcweir#include <com/sun/star/configuration/backend/XUpdateHandler.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir
34cdf0e10cSrcweir#ifndef __com_sun_star_configuration_backend_XLayer_idl__
35cdf0e10cSrcweir#include <com/sun/star/configuration/backend/XLayer.idl>
36cdf0e10cSrcweir#endif
37cdf0e10cSrcweir
38cdf0e10cSrcweir#ifndef __com_sun_star_configuration_backend_XSchema_idl__
39cdf0e10cSrcweir#include <com/sun/star/configuration/backend/XSchema.idl>
40cdf0e10cSrcweir#endif
41cdf0e10cSrcweir
42cdf0e10cSrcweir#ifndef __com_sun_star_configuration_backend_BackendAccessException_idl__
43cdf0e10cSrcweir#include <com/sun/star/configuration/backend/BackendAccessException.idl>
44cdf0e10cSrcweir#endif
45cdf0e10cSrcweir
46cdf0e10cSrcweir#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
47cdf0e10cSrcweir#include <com/sun/star/lang/IllegalArgumentException.idl>
48cdf0e10cSrcweir#endif
49cdf0e10cSrcweir
50cdf0e10cSrcweir#ifndef __com_sun_star_lang_NoSupportException_idl__
51cdf0e10cSrcweir#include <com/sun/star/lang/NoSupportException.idl>
52cdf0e10cSrcweir#endif
53cdf0e10cSrcweir
54cdf0e10cSrcweir//=============================================================================
55cdf0e10cSrcweir
56cdf0e10cSrcweirmodule com { module sun { module star { module configuration { module backend {
57cdf0e10cSrcweir
58cdf0e10cSrcweir//=============================================================================
59cdf0e10cSrcweir
60cdf0e10cSrcweir/**
61cdf0e10cSrcweir  Handles access to layered data stored in a repository.
62cdf0e10cSrcweir
63cdf0e10cSrcweir  <p> Data can be retrieved on behalf of one or more entities.</p>
64cdf0e10cSrcweir
65cdf0e10cSrcweir  <p> There is an implied owner entity associated to the object
66cdf0e10cSrcweir     when it is created. This entity should be used for normal data access.
67cdf0e10cSrcweir     For administrative operations data of other entities can be accessed.
68cdf0e10cSrcweir  </p>
69cdf0e10cSrcweir
70cdf0e10cSrcweir  @see com::sun::star::configuration::backend::XBackendEntities
71cdf0e10cSrcweir  @see com::sun::star::configuration::backend::XSchemaSupplier
72cdf0e10cSrcweir
73*0d3a54ffSJürgen Schmidt  @since OpenOffice 1.1.2
74cdf0e10cSrcweir*/
75cdf0e10cSrcweirpublished interface XBackend : ::com::sun::star::uno::XInterface
76cdf0e10cSrcweir{
77cdf0e10cSrcweir	//-------------------------------------------------------------------------
78cdf0e10cSrcweir
79cdf0e10cSrcweir    /**
80cdf0e10cSrcweir      retrieves the layers associated to the owner
81cdf0e10cSrcweir      entity for a component.
82cdf0e10cSrcweir
83cdf0e10cSrcweir      @param aComponent
84cdf0e10cSrcweir                component whose data will be accessed
85cdf0e10cSrcweir
86cdf0e10cSrcweir      @returns
87cdf0e10cSrcweir                a list of objects allowing access to the
88cdf0e10cSrcweir                component data for each layer associated to
89cdf0e10cSrcweir                the current entity
90cdf0e10cSrcweir
91cdf0e10cSrcweir      @throws   com::sun::star::lang::IllegalArgumentException
92cdf0e10cSrcweir                if the component identifier is invalid
93cdf0e10cSrcweir
94cdf0e10cSrcweir      @throws   com::sun::star::configuration::backend::BackendAccessException
95cdf0e10cSrcweir                if an error occurs while accessing the data.
96cdf0e10cSrcweir
97cdf0e10cSrcweir      @see com::sun::star::configuration::backend::XBackendEntities::getOwnerEntity()
98cdf0e10cSrcweir	*/
99cdf0e10cSrcweir    sequence<XLayer> listOwnLayers([in] string aComponent)
100cdf0e10cSrcweir        raises (BackendAccessException,
101cdf0e10cSrcweir                com::sun::star::lang::IllegalArgumentException) ;
102cdf0e10cSrcweir
103cdf0e10cSrcweir	//-------------------------------------------------------------------------
104cdf0e10cSrcweir
105cdf0e10cSrcweir    /**
106cdf0e10cSrcweir      creates an update handler for the owner entity
107cdf0e10cSrcweir      layer for a component.
108cdf0e10cSrcweir
109cdf0e10cSrcweir      @param aComponent
110cdf0e10cSrcweir                component whose data will be updated
111cdf0e10cSrcweir
112cdf0e10cSrcweir      @returns
113cdf0e10cSrcweir                an object allowing manipulation of the
114cdf0e10cSrcweir                component data for the current entity
115cdf0e10cSrcweir
116cdf0e10cSrcweir      @throws   com::sun::star::lang::IllegalArgumentException
117cdf0e10cSrcweir                if the component identifier is invalid
118cdf0e10cSrcweir
119cdf0e10cSrcweir      @throws   com::sun::star::lang::NoSupportException
120cdf0e10cSrcweir                if updates are not supported for this backend
121cdf0e10cSrcweir
122cdf0e10cSrcweir      @throws   com::sun::star::configuration::backend::BackendAccessException
123cdf0e10cSrcweir                if an error occurs while accessing the data.
124cdf0e10cSrcweir
125cdf0e10cSrcweir      @see com::sun::star::configuration::backend::XBackendEntities::getOwnerEntity()
126cdf0e10cSrcweir	*/
127cdf0e10cSrcweir    XUpdateHandler getOwnUpdateHandler([in] string aComponent)
128cdf0e10cSrcweir        raises (BackendAccessException,
129cdf0e10cSrcweir                com::sun::star::lang::NoSupportException,
130cdf0e10cSrcweir                com::sun::star::lang::IllegalArgumentException) ;
131cdf0e10cSrcweir
132cdf0e10cSrcweir	//-------------------------------------------------------------------------
133cdf0e10cSrcweir
134cdf0e10cSrcweir    /**
135cdf0e10cSrcweir      retrieves the layers associated to an entity for a component.
136cdf0e10cSrcweir
137cdf0e10cSrcweir      @param aComponent
138cdf0e10cSrcweir                component whose data will be accessed
139cdf0e10cSrcweir
140cdf0e10cSrcweir      @param aEntity
141cdf0e10cSrcweir                entity whose data will be accessed
142cdf0e10cSrcweir
143cdf0e10cSrcweir      @returns
144cdf0e10cSrcweir                a list of objects allowing access to the
145cdf0e10cSrcweir                component data for each layer associated
146cdf0e10cSrcweir                with the entity.
147cdf0e10cSrcweir
148cdf0e10cSrcweir      @throws   com::sun::star::lang::IllegalArgumentException
149cdf0e10cSrcweir                if the component identifier is invalid
150cdf0e10cSrcweir                or if the entity doesn't exist.
151cdf0e10cSrcweir
152cdf0e10cSrcweir      @throws   com::sun::star::configuration::backend::BackendAccessException
153cdf0e10cSrcweir                if an error occurs while accessing the data.
154cdf0e10cSrcweir
155cdf0e10cSrcweir      @see com::sun::star::configuration::backend::XBackendEntities::supportsEntity()
156cdf0e10cSrcweir	*/
157cdf0e10cSrcweir    sequence<XLayer> listLayers([in] string aComponent,
158cdf0e10cSrcweir                                [in] string aEntity)
159cdf0e10cSrcweir        raises (BackendAccessException,
160cdf0e10cSrcweir                com::sun::star::lang::IllegalArgumentException) ;
161cdf0e10cSrcweir
162cdf0e10cSrcweir	//-------------------------------------------------------------------------
163cdf0e10cSrcweir
164cdf0e10cSrcweir    /**
165cdf0e10cSrcweir      creates an update handler on an entity's layer for a component.
166cdf0e10cSrcweir
167cdf0e10cSrcweir      @param aComponent
168cdf0e10cSrcweir                component whose data will be updated
169cdf0e10cSrcweir
170cdf0e10cSrcweir      @param aEntity
171cdf0e10cSrcweir                entity whose data will be updated
172cdf0e10cSrcweir
173cdf0e10cSrcweir      @returns
174cdf0e10cSrcweir                an object allowing manipulation of the
175cdf0e10cSrcweir                component data for the entity
176cdf0e10cSrcweir
177cdf0e10cSrcweir      @throws   com::sun::star::lang::IllegalArgumentException
178cdf0e10cSrcweir                if the component identifier is invalid
179cdf0e10cSrcweir                or if the entity doesn't exist.
180cdf0e10cSrcweir
181cdf0e10cSrcweir      @throws   com::sun::star::lang::NoSupportException
182cdf0e10cSrcweir                if updates are not supported for this backend
183cdf0e10cSrcweir
184cdf0e10cSrcweir      @throws   com::sun::star::configuration::backend::BackendAccessException
185cdf0e10cSrcweir                if an error occurs while accessing the data.
186cdf0e10cSrcweir
187cdf0e10cSrcweir      @see com::sun::star::configuration::backend::XBackendEntities::supportsEntity()
188cdf0e10cSrcweir	*/
189cdf0e10cSrcweir    XUpdateHandler getUpdateHandler([in] string aComponent,
190cdf0e10cSrcweir                                    [in] string aEntity)
191cdf0e10cSrcweir        raises (BackendAccessException,
192cdf0e10cSrcweir                com::sun::star::lang::NoSupportException,
193cdf0e10cSrcweir                com::sun::star::lang::IllegalArgumentException) ;
194cdf0e10cSrcweir
195cdf0e10cSrcweir	//-------------------------------------------------------------------------
196cdf0e10cSrcweir} ;
197cdf0e10cSrcweir
198cdf0e10cSrcweir//=============================================================================
199cdf0e10cSrcweir
200cdf0e10cSrcweir} ; } ; } ; } ; } ;
201cdf0e10cSrcweir
202cdf0e10cSrcweir#endif
203