1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_configuration_backend_DataImporter_idl__ 28#define __com_sun_star_configuration_backend_DataImporter_idl__ 29 30#ifndef __com_sun_star_task_XJob_idl__ 31#include <com/sun/star/task/XJob.idl> 32#endif 33 34//============================================================================= 35 36module com { module sun { module star { module configuration { module backend { 37 38//============================================================================= 39 40/** 41 allows importing data from one configuration repository into another. . 42 43 @since OOo 1.1.2 44*/ 45published service DataImporter 46{ 47 //------------------------------------------------------------------------- 48 49 /** allows running an import job 50 51 <p> The source and destination repositories are selected by arguments 52 passed to 53 <member scope="com::sun::star::task">XJob::execute()</member>. 54 The names and meanings of such arguments depend on 55 the implementation. Each implementation must document such arguments. 56 </p> 57 58 <p> Implementations may return a value from 59 <member scope="com::sun::star::task">XJob::execute()</member> 60 that indicates the status of job execution. The type and meaning of 61 such status indicators depend on the implementation. 62 </p> 63 <p>If <void/> or <TRUE/> is returned, this indicates successful 64 execution. If an 65 <type scope="com::sun::star::uno">Exception</type> is returned, 66 it represents an error condition encountered during execution. 67 </p> 68 69 <p> The following arguments to 70 <member scope="com::sun::star::task">XJob::execute()</member> 71 should be supported by implementations. Implementations must document 72 a failure to support any of these arguments: 73 <dl> 74 <dt><code>ImporterService</code> : <atom >string</atom></dt> 75 <dd>A service or implementation name used to instantiate the 76 <type>Importer</type> to use for importing. If this parameter 77 is missing, the implementation selects an appropriate importer. 78 By default, a <type>MergeImporter</type> should be used. 79 </dd> 80 <dt><code>OverwriteExisting</code> : <atom >boolean</atom></dt> 81 <dd>If <TRUE/>, specifies that no existing data should be 82 overwritten by the import. If the <type>Importer</type> used 83 does not support such protection, an error may be raised. 84 If some data is not imported, because there is existing 85 data, this is indicated by returning an appropriate exception. 86 </dd> 87 <dt><code>TruncateExisting</code> : <atom >boolean</atom></dt> 88 <dd>If <TRUE/>, specifies that existing data should be 89 discarded and replaced by the imported data. 90 If the <type>Importer</type> used does not support this 91 operation, an error may be raised. 92 By default, a <type>CopyImporter</type> is used to perform 93 truncating import. 94 </dd> 95 <dt><code>Entity</code> : <atom >string</atom></dt> 96 <dd>An identifier for the entity in the destination backend for 97 which the imported data should apply. The value will be passed 98 to <member>XLayerImporter::importLayerForEntity()</member>. 99 If this parameter is missing, the implementation uses 100 <member>XLayerImporter::importLayer()</member> instead. 101 </dd> 102 <dt><code>Component</code> : <atom >string</atom></dt> 103 <dd>Names the component for which to import data. If this 104 parameter is missing, the selection of data to import depends 105 on implementation-specific parameters. 106 </dd> 107 <dt><code>LayerFilter</code> : <type >LayerFilter</type></dt> 108 <dd>A filter to transform data during import. This parameter is 109 optional. If this parameter is missing, data will be imported 110 unaltered. <em>Support for this parameter is optional.</em> 111 If the implementation does not support a filter it will raise an 112 <type scope="com::sun::star::lang">IllegalArgumentException</type>. 113 </dd> 114 </dl> 115 </p> 116 117 */ 118 interface com::sun::star::task::XJob ; 119 120 //------------------------------------------------------------------------- 121} ; 122 123//============================================================================= 124 125} ; } ; } ; } ; } ; 126 127#endif 128