xref: /trunk/main/offapi/com/sun/star/configuration/ConfigurationRegistry.idl (revision ffd38472365e95f6a578737bc9a5eb0fac624a86)
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
10cdf0e10cSrcweir *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir *
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.
19cdf0e10cSrcweir *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_configuration_ConfigurationRegistry_idl__
24cdf0e10cSrcweir#define __com_sun_star_configuration_ConfigurationRegistry_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir//=============================================================================
27cdf0e10cSrcweir
28cdf0e10cSrcweir#ifndef __com_sun_star_registry_XSimpleRegistry_idl__
29cdf0e10cSrcweir#include <com/sun/star/registry/XSimpleRegistry.idl>
30cdf0e10cSrcweir#endif
31cdf0e10cSrcweir#ifndef __com_sun_star_util_XFlushable_idl__
32cdf0e10cSrcweir#include <com/sun/star/util/XFlushable.idl>
33cdf0e10cSrcweir#endif
34cdf0e10cSrcweir
35cdf0e10cSrcweirmodule com { module sun { module star { module configuration {
36cdf0e10cSrcweir
37cdf0e10cSrcweir//=============================================================================
38cdf0e10cSrcweir
39cdf0e10cSrcweir
40cdf0e10cSrcweir/*  provides access to a configuration tree as a registry.
41cdf0e10cSrcweir
42cdf0e10cSrcweir    <p>This service is deprecated,
43cdf0e10cSrcweir    <type scope="com.sun.star.configuration">ConfigurationProvider</type> should
44cdf0e10cSrcweir    be used instead.</p>
45cdf0e10cSrcweir
46cdf0e10cSrcweir    <p> Using the <type scope="com::sun::star::registry">XSimpleRegistry</type>
47cdf0e10cSrcweir    interface, the service can be bound to a subtree within the
48cdf0e10cSrcweir    configuration tree, as provided by an
49cdf0e10cSrcweir    <type scope="com.sun.star.configuration">ConfigurationProvider</type>
50cdf0e10cSrcweir    service, which must be accessible from the service factory you use for the
51cdf0e10cSrcweir    creation of this service.
52cdf0e10cSrcweir    </p>
53cdf0e10cSrcweir    <p> There are some restrictions when accessing a configuration tree using a registry.
54cdf0e10cSrcweir    Most of them are implications of the fact that a configuration tree is very static in
55cdf0e10cSrcweir    it's structure. Removal and addition of sub nodes is allowed only for special
56cdf0e10cSrcweir    nodes, and even then the new elements have to comply to a given scheme (which is some
57cdf0e10cSrcweir    kind of attribute of the container node). So for instance the
58cdf0e10cSrcweir    <member scope="com.sun.star.registry">XRegistryKey::createKey()</member> method is not allowed
59cdf0e10cSrcweir    for some nodes.
60cdf0e10cSrcweir    </p><p>
61cdf0e10cSrcweir    Thus anybody using this service is strongly advised to read and understand the specification
62cdf0e10cSrcweir    of an configuration provider (<type scope="com.sun.star.configuration">ConfigurationProvider</type>)
63cdf0e10cSrcweir    and all of it's aspects.
64cdf0e10cSrcweir    </p>
65cdf0e10cSrcweir
66cdf0e10cSrcweir    @author Frank Schoenheit
67cdf0e10cSrcweir    @version 1.0 2000/07/06
68cdf0e10cSrcweir*/
69cdf0e10cSrcweir
70cdf0e10cSrcweirpublished service ConfigurationRegistry
71cdf0e10cSrcweir{
72cdf0e10cSrcweir    /** controls the binding of the object to a configuration sub tree.
73cdf0e10cSrcweir        <p><member scope="com::sun::star::registry">XSimpleRegistry::open()</member>
74cdf0e10cSrcweir        is used to open a special subtree within the configuration tree.
75cdf0e10cSrcweir        </p>
76cdf0e10cSrcweir        <p>The parameters of this method control the location of the root of the to-be-opened
77cdf0e10cSrcweir        configuration node and the access mode (read only or updatable).
78cdf0e10cSrcweir        </p>
79cdf0e10cSrcweir    */
80cdf0e10cSrcweir    interface com::sun::star::registry::XSimpleRegistry;
81cdf0e10cSrcweir
82cdf0e10cSrcweir    /** is used to commit changes to the configuration.
83cdf0e10cSrcweir        <p>As specified for the
84cdf0e10cSrcweir        <type scope="com::sun::star::configuration">ConfigurationUpdateAccess</type>
85*a893be29SPedro Giffuni        service, all changes made to an configuration subtree have to be committed
86cdf0e10cSrcweir        before they become persistent.
87cdf0e10cSrcweir        To do this for a configuration accessed as a registry, call
88cdf0e10cSrcweir        <method scope="com::sun::star::util">XFlushable::flush</method>.
89cdf0e10cSrcweir        </p>
90cdf0e10cSrcweir        <p><strong>Warning:</strong><em>Changes that are not flushed will be
91cdf0e10cSrcweir        lost.</em>
92cdf0e10cSrcweir        </p>
93cdf0e10cSrcweir    */
94cdf0e10cSrcweir    interface com::sun::star::util::XFlushable;
95cdf0e10cSrcweir};
96cdf0e10cSrcweir
97cdf0e10cSrcweir
98cdf0e10cSrcweir//=============================================================================
99cdf0e10cSrcweir
100cdf0e10cSrcweir}; }; }; };
101cdf0e10cSrcweir
102cdf0e10cSrcweir
103cdf0e10cSrcweir#endif
104