diff options
Diffstat (limited to 'offapi/com/sun/star/configuration/backend/XSingleLayerStratum.idl')
-rw-r--r-- | offapi/com/sun/star/configuration/backend/XSingleLayerStratum.idl | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/offapi/com/sun/star/configuration/backend/XSingleLayerStratum.idl b/offapi/com/sun/star/configuration/backend/XSingleLayerStratum.idl new file mode 100644 index 000000000000..522463b0e612 --- /dev/null +++ b/offapi/com/sun/star/configuration/backend/XSingleLayerStratum.idl @@ -0,0 +1,154 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XSingleLayerStratum.idl,v $ + * $Revision: 1.6 $ + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_configuration_backend_XSingleLayerStratum_idl__ +#define __com_sun_star_configuration_backend_XSingleLayerStratum_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_configuration_backend_XLayer_idl__ +#include <com/sun/star/configuration/backend/XLayer.idl> +#endif + +#ifndef __com_sun_star_configuration_backend_XUpdatableLayer_idl__ +#include <com/sun/star/configuration/backend/XUpdatableLayer.idl> +#endif + +#ifndef __com_sun_star_configuration_backend_BackendAccessException_idl__ +#include <com/sun/star/configuration/backend/BackendAccessException.idl> +#endif + +#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ +#include <com/sun/star/lang/IllegalArgumentException.idl> +#endif + +#ifndef __com_sun_star_lang_NoSupportException_idl__ +#include <com/sun/star/lang/NoSupportException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module configuration { module backend { + +//============================================================================= + +/** + Handles access to a stratum consisting of a single layer + in a configuration data repository + + <p> The interface provides timestamp-checking capabilities + for efficient caching. + </p> + + @see com::sun::star::util::XTimeStamped + @see com::sun::star::configuration::backend::XSchemaSupplier + @see com::sun::star::configuration::backend::XMultiLayerStratum + + @since OOo 1.1.2 +*/ +published interface XSingleLayerStratum : ::com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + /** + retrieves the layer data for a component, if newer than indicated. + + <p> A timestamp can be provided, which is used to indicate + a point in time. The layer should be returned only if is modified + since that time. + </p> + + @param aComponent + The name of the component to access. + + @param aTimestamp + a timestamp for the layer. + + <p> An empty timestamp indicates, that the layer should be + retrieved irrespective of its modification time. + </p> + <p> The format and meaning of a timestamp depends on + the implementation. Timestamps can be obtained using + <member scope="com::sun::star::util">XTimeStamped::getTimestamp()</member>. + </p> + + @returns + a <type>Layer</type> object providing access to the layer data, + <NULL/> if the layer is newer than indicated by the timestamp. + + @throws com::sun::star::lang::IllegalArgumentException + if the component identifier is invalid or + if the timestamp is invalid. + + @throws com::sun::star::configuration::backend::BackendAccessException + if an error occurs while accessing the data. + + @see com::sun::star::util::XTimeStamped + */ + XLayer getLayer([in] string aComponent, + [in] string aTimestamp) + raises (BackendAccessException, + com::sun::star::lang::IllegalArgumentException) ; + + //------------------------------------------------------------------------- + + /** + retrieves a writable representation of the layer for a component. + + @param aComponent + The name of the component to access. + + @return + an <type>UpdatableLayer</type> object providing + write access to the layer + + @throws com::sun::star::lang::IllegalArgumentException + if the component identifier is invalid. + + @throws com::sun::star::lang::NoSupportException + if the implementation does not support updates. + + @throws com::sun::star::configuration::backend::BackendAccessException + if an error occurs while accessing the data. + */ + XUpdatableLayer getUpdatableLayer([in] string aComponent) + raises (BackendAccessException, + com::sun::star::lang::NoSupportException, + com::sun::star::lang::IllegalArgumentException) ; + + //------------------------------------------------------------------------- +} ; + +//============================================================================= + +} ; } ; } ; } ; } ; + +#endif |