| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_configuration_ConfigurationRegistry_idl__ |
| #define __com_sun_star_configuration_ConfigurationRegistry_idl__ |
| |
| //============================================================================= |
| |
| #ifndef __com_sun_star_registry_XSimpleRegistry_idl__ |
| #include <com/sun/star/registry/XSimpleRegistry.idl> |
| #endif |
| #ifndef __com_sun_star_util_XFlushable_idl__ |
| #include <com/sun/star/util/XFlushable.idl> |
| #endif |
| |
| module com { module sun { module star { module configuration { |
| |
| //============================================================================= |
| |
| |
| /* provides access to a configuration tree as a registry. |
| |
| <p>This service is deprecated, |
| <type scope="com.sun.star.configuration">ConfigurationProvider</type> should |
| be used instead.</p> |
| |
| <p> Using the <type scope="com::sun::star::registry">XSimpleRegistry</type> |
| interface, the service can be bound to a subtree within the |
| configuration tree, as provided by an |
| <type scope="com.sun.star.configuration">ConfigurationProvider</type> |
| service, which must be accessible from the service factory you use for the |
| creation of this service. |
| </p> |
| <p> There are some restrictions when accessing a configuration tree using a registry. |
| Most of them are implications of the fact that a configuration tree is very static in |
| it's structure. Removal and addition of sub nodes is allowed only for special |
| nodes, and even then the new elements have to comply to a given scheme (which is some |
| kind of attribute of the container node). So for instance the |
| <member scope="com.sun.star.registry">XRegistryKey::createKey()</member> method is not allowed |
| for some nodes. |
| </p><p> |
| Thus anybody using this service is strongly advised to read and understand the specification |
| of an configuration provider (<type scope="com.sun.star.configuration">ConfigurationProvider</type>) |
| and all of it's aspects. |
| </p> |
| |
| @author Frank Schoenheit |
| @version 1.0 2000/07/06 |
| */ |
| |
| published service ConfigurationRegistry |
| { |
| /** controls the binding of the object to a configuration sub tree. |
| <p><member scope="com::sun::star::registry">XSimpleRegistry::open()</member> |
| is used to open a special subtree within the configuration tree. |
| </p> |
| <p>The parameters of this method control the location of the root of the to-be-opened |
| configuration node and the access mode (read only or updatable). |
| </p> |
| */ |
| interface com::sun::star::registry::XSimpleRegistry; |
| |
| /** is used to commit changes to the configuration. |
| <p>As specified for the |
| <type scope="com::sun::star::configuration">ConfigurationUpdateAccess</type> |
| service, all changes made to an configuration subtree have to be commited |
| before they become persistent. |
| To do this for a configuration accessed as a registry, call |
| <method scope="com::sun::star::util">XFlushable::flush</method>. |
| </p> |
| <p><strong>Warning:</strong><em>Changes that are not flushed will be |
| lost.</em> |
| </p> |
| */ |
| interface com::sun::star::util::XFlushable; |
| }; |
| |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| |
| #endif |
| |