1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_configuration_backend_LayerUpdateMerger_idl__ 24#define __com_sun_star_configuration_backend_LayerUpdateMerger_idl__ 25 26#ifndef __com_sun_star_lang_XInitialization_idl__ 27#include <com/sun/star/lang/XInitialization.idl> 28#endif 29 30#ifndef __com_sun_star_configuration_backend_XUpdateHandler_idl__ 31#include <com/sun/star/configuration/backend/XUpdateHandler.idl> 32#endif 33 34//============================================================================= 35 36module com { module sun { module star { module configuration { module backend { 37 38//============================================================================= 39 40/** 41 applies updates to a configuration layer. 42 43 <p> The configuration layer data is read from a <type>XLayer</type> 44 and the changed layer is provided as <type>XLayer</type> again or 45 described to a <type>XLayerHandler</type>. 46 </p> 47 48 @see com::sun::star::configuration::backend::UpdatableLayer 49 Service describes a layer and accepts a changed layer.. 50 51 @since OOo 1.1.2 52*/ 53published service LayerUpdateMerger 54{ 55 //------------------------------------------------------------------------- 56 57 /** accepts events describing the changes. 58 */ 59 interface com::sun::star::configuration::backend::XUpdateHandler ; 60 61 //------------------------------------------------------------------------- 62 63 /** allows initializing layer data source and target. 64 65 <p> Both source and target of the update can be provided by passing a 66 <type>XUpdatableLayer</type> object. Alternatively they can be 67 provided individually by providing a <type>XLayer</type> object as 68 data source and an <type>XLayerHandler</type> object to receive the 69 updated data. 70 </p> 71 <p> Implementations can provide more arguments to finetune the behavior. 72 Such arguments are provided as 73 <type scope="com::sun::star::beans">NamedValue</type>. 74 Implementations should support the following named arguments: 75 <dl> 76 <dt><code>Overwrite</code> : <atom>boolean</atom></dt> 77 <dd>If <FALSE/>, specifies that changes should be applied 78 only if the existing layer is empty. 79 </dd> 80 <dt><code>Truncate</code> : <atom>boolean</atom></dt> 81 <dd>If <TRUE/> requests that changes should not be merged onto 82 existing data, but that the changes should be applied 83 to a layer that is completely empty. 84 </dd> 85 </dl> 86 </p> 87 */ 88 interface com::sun::star::lang::XInitialization ; 89 90 //------------------------------------------------------------------------- 91} ; 92 93//============================================================================= 94 95} ; } ; } ; } ; } ; 96 97#endif 98