diff options
Diffstat (limited to 'offapi/com/sun/star/configuration/backend/UpdatableLayer.idl')
-rw-r--r-- | offapi/com/sun/star/configuration/backend/UpdatableLayer.idl | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/offapi/com/sun/star/configuration/backend/UpdatableLayer.idl b/offapi/com/sun/star/configuration/backend/UpdatableLayer.idl new file mode 100644 index 000000000..df9fff0f9 --- /dev/null +++ b/offapi/com/sun/star/configuration/backend/UpdatableLayer.idl @@ -0,0 +1,109 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_configuration_backend_UpdatableLayer_idl__ +#define __com_sun_star_configuration_backend_UpdatableLayer_idl__ + +#include <com/sun/star/configuration/backend/Layer.idl> +#include <com/sun/star/configuration/backend/XUpdatableLayer.idl> + + +module com { module sun { module star { module configuration { module backend { + + +/** + provides read/write access to a configuration data layer. + + <p>A layer contains the configuration setting changes to be performed + on a default layer (or schema) to obtain the values of those settings + for a given entity and component. + </p> + <p>An updatable layer can be read or replaced with another layer. + </p> + + @since OOo 1.1.2 + */ +published service UpdatableLayer +{ + + /** + handles read access to the contents of the layer. + + <p> If the implementation supports + com::sun::star::util::XTimeStamped, + then after executing XUpdatableLayer::replaceWith() + the timestamp will be the one for the replaced contents and + if reading after updates is supported the next read will reproduce the + replaced data. + </p> + */ + service Layer ; + + + /** + provides write access to the contents of the layer. + + <p> Depending of the actual type (simple, i.e pure XLayer or + composite, i.e XCompositeLayer) of the current layer and + the provided replacement layer, the operation performed + by XUpdatableLayer::replaceWith(), will vary. + </p> + <p> For the different current/replacement layer combinations, we have: + <dl> + <dt>Simple/Simple<dt> + <dd>the provided layer's contents replace the current one's.</dd> + + <dt>Composite/Composite<dt> + <dd>all layers (main and sub) present in the + provided layer are used to replace the corresponding current + layer contents. Sublayers present in the current layer but + not in the provided one are left untouched. Sublayers present + in the provided layer but not in the current one are added to + the current layer. + </dd> + + <dt>Simple/Composite<dt> + <dd>the main layer and sublayers of the provided layer + are merged into one whose contents replace the current layer. + </dd> + + <dt>Composite/Simple<dt> + <dd>the provided layer is split into a composite one whose contents + are then used to replace the current layer as described above. + </dd> + + </dl> + <em> Not all implementations of XUpdatableLayer + support conversions of the replacement layer. + In such a case the sublayers of the provided layer may be ignored + or all simple data be merged into the main layer. + </em> + </p> + */ + interface XUpdatableLayer ; + + +} ; + + +} ; } ; } ; } ; } ; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |