LibreOffice
LibreOffice 24.2 SDK API Reference
Public Member Functions | List of all members
XMultiLayerStratum Interface Referencepublished

Handles access to a stratum consisting of multiple layers in a single configuration data repository. More...

import"XMultiLayerStratum.idl";

Inheritance diagram for XMultiLayerStratum:
XInterface MultiLayerStratum SingleBackend LdapMultiLayerStratum LdapSingleBackend LocalSingleBackend

Public Member Functions

sequence< string > listLayerIds ([in] string aComponent, [in] string aEntity) raises (BackendAccessException, com::sun::star::lang::IllegalArgumentException)
 identifies the layers within this stratum which should be read and merged to determine data of a component for an entity More...
 
string getUpdateLayerId ([in] string aComponent, [in] string aEntity) raises (BackendAccessException, com::sun::star::lang::NoSupportException, com::sun::star::lang::IllegalArgumentException)
 identifies the layer which should be modified to update data of a component on behalf of an entity. More...
 
XLayer getLayer ([in] string aLayerId, [in] string aTimestamp) raises (BackendAccessException, com::sun::star::lang::IllegalArgumentException)
 retrieves a layer associated to a layer id, if newer than indicated. More...
 
sequence< XLayergetLayers ([in] sequence< string > aLayerIds, [in] string aTimestamp) raises (BackendAccessException, com::sun::star::lang::IllegalArgumentException)
 retrieves the layers associated to a series of layer ids, if newer than indicated. More...
 
sequence< XLayergetMultipleLayers ([in] sequence< string > aLayerIds, [in] sequence< string > aTimestamps) raises (BackendAccessException, com::sun::star::lang::IllegalArgumentException)
 retrieves the layers associated to a series of layer ids, if newer than indicated for each layer. More...
 
XUpdatableLayer getUpdatableLayer ([in] string aLayerId) raises (BackendAccessException, com::sun::star::lang::NoSupportException, com::sun::star::lang::IllegalArgumentException)
 retrieves a writable representation of the layer associated to a layer id. More...
 
- Public Member Functions inherited from XInterface
any queryInterface ([in] type aType)
 queries for a new interface to an existing UNO object. More...
 
void acquire ()
 increases the reference counter by one. More...
 
void release ()
 decreases the reference counter by one. More...
 

Detailed Description

Handles access to a stratum consisting of multiple layers in a single configuration data repository.

The interface provides access to data for multiple entities and timestamp-checking capabilities for efficient caching.

See also
com::sun::star::configuration::backend::XBackendEntities
com::sun::star::util::XTimeStamped
com::sun::star::configuration::backend::XSchemaSupplier
com::sun::star::configuration::backend::XSingleLayerStratum
Since
OOo 1.1.2

Member Function Documentation

◆ getLayer()

XLayer getLayer ( [in] string  aLayerId,
[in] string  aTimestamp 
)
raises (BackendAccessException,
com::sun::star::lang::IllegalArgumentException
)

retrieves a layer associated to a layer id, if newer than indicated.

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.

Parameters
aLayerIdidentifier of the layers to be accessed.

Layer ids can be obtained from XMultiLayerStratum::listLayerIds() or XMultiLayerStratum::getUpdateLayerId().

Parameters
aTimestampa timestamp for the layer.

An empty timestamp indicates, that the layer should be retrieved irrespective of its modification time.

The format and meaning of a timestamp depends on the implementation. Timestamps can be obtained using com::sun::star::util::XTimeStamped::getTimestamp().

Returns
a Layer object providing access to the layer data, NULL if the layer is newer than indicated by the timestamp.
Exceptions
com::sun::star::lang::IllegalArgumentExceptionif the layer id is invalid or if the timestamp is invalid
com::sun::star::configuration::backend::BackendAccessExceptionif an error occurs while accessing the data.
See also
com::sun::star::util::XTimeStamped

◆ getLayers()

sequence<XLayer> getLayers ( [in] sequence< string >  aLayerIds,
[in] string  aTimestamp 
)
raises (BackendAccessException,
com::sun::star::lang::IllegalArgumentException
)

retrieves the layers associated to a series of layer ids, if newer than indicated.

A timestamp can be provided, which is used to indicate a point in time. Only layers that are modified since that time should be returned. The same timestamp is used for all layers.

Parameters
aLayerIdsidentifiers of the layers to be accessed.

Layer ids can be obtained from XMultiLayerStratum::listLayerIds().

Parameters
aTimestampa timestamp for all of the layers.

An empty timestamp indicates, that the layers should be retrieved irrespective of their modification time.

The format and meaning of a timestamp depends on the implementation. Timestamps can be obtained using com::sun::star::util::XTimeStamped::getTimestamp().

Returns
a list of Layer objects providing access to the layer data.

The list has the same length as aLayerIds. Each layer object is associated to the layer id in the corresponding position.

For layers that are newer than indicated by the timestamp, the list contains a NULL element.

Exceptions
com::sun::star::lang::IllegalArgumentExceptionif one of the layer ids is invalid or if the timestamp is invalid
com::sun::star::configuration::backend::BackendAccessExceptionif an error occurs while accessing the data.
See also
com::sun::star::util::XTimeStamped

◆ getMultipleLayers()

sequence<XLayer> getMultipleLayers ( [in] sequence< string >  aLayerIds,
[in] sequence< string >  aTimestamps 
)
raises (BackendAccessException,
com::sun::star::lang::IllegalArgumentException
)

retrieves the layers associated to a series of layer ids, if newer than indicated for each layer.

For each layer an individual timestamp can be provided, which is used to indicate the last known version of the layer. Only layers that are modified since that time should be returned.

Parameters
aLayerIdsidentifiers of the layers to be accessed.

Layer ids can be obtained from XMultiLayerStratum::listLayerIds().

Parameters
aTimestampstimestamps for each of the layers.

This list must have the same length as aLayerIds. Timestamps are matched to layer ids by their position.

An empty timestamp indicates, that the associated layer should be retrieved irrespective of its modification time.

The format and meaning of a timestamp depends on the implementation. Timestamps can be obtained using com::sun::star::util::XTimeStamped::getTimestamp().

Returns
a list of Layer objects providing access to the layer data.

The list has the same length as aLayerIds. Each layer object is associated to the layer id in the corresponding position.

For layers that are newer than indicated by the corresponding timestamp, the list contains a NULL element.

Exceptions
com::sun::star::lang::IllegalArgumentExceptionif one of the layer ids is invalid or if one of the timestamps is invalid or if the lengths of the arguments don't match.
com::sun::star::configuration::backend::BackendAccessExceptionif an error occurs while accessing the data.
See also
com::sun::star::util::XTimeStamped

◆ getUpdatableLayer()

retrieves a writable representation of the layer associated to a layer id.

Parameters
aLayerIdidentifier of the layer to be accessed for writing.

A layer id for writing can be obtained from XMultiLayerStratum::getUpdateLayerId().

Returns
an UpdatableLayer object providing write access to the layer
Exceptions
com::sun::star::lang::IllegalArgumentExceptionif the layer id is invalid.
com::sun::star::lang::NoSupportExceptionif the implementation does not support updates.
com::sun::star::configuration::backend::BackendAccessExceptionif an error occurs while accessing the data.

◆ getUpdateLayerId()

string getUpdateLayerId ( [in] string  aComponent,
[in] string  aEntity 
)
raises (BackendAccessException,
com::sun::star::lang::NoSupportException,
com::sun::star::lang::IllegalArgumentException
)

identifies the layer which should be modified to update data of a component on behalf of an entity.

The layer id returned is one of the layer ids obtained from XMultiLayerStratum::listLayerIds() for the same component and entity.

Parameters
aComponentThe name of the component to access.
aEntityThe name of an entity on behalf of which data will be accessed.
Returns
a layer identifier that can be used to obtain an UpdatableLayer object.
Exceptions
com::sun::star::lang::IllegalArgumentExceptionif the component identifier is invalid or if the entity doesn't exist.
com::sun::star::lang::NoSupportExceptionif the implementation does not support updates.
com::sun::star::configuration::backend::BackendAccessExceptionif an error occurs while accessing the data.
See also
com::sun::star::configuration::backend::XMultiLayerStratum::getUpdatableLayer()
com::sun::star::configuration::backend::XBackendEntities

◆ listLayerIds()

sequence<string> listLayerIds ( [in] string  aComponent,
[in] string  aEntity 
)
raises (BackendAccessException,
com::sun::star::lang::IllegalArgumentException
)

identifies the layers within this stratum which should be read and merged to determine data of a component for an entity

Parameters
aComponentThe name of the component to access.
aEntityThe name of an entity on behalf of which data will be accessed.
Returns
a list of layer identifiers that can be used to retrieve Layer objects.

The list is ordered by priority. Typically the most general layers (global defaults, entire organization) are first, more specific layers (associated to specific groups or roles) are next and the entity's own data is last.

Exceptions
com::sun::star::lang::IllegalArgumentExceptionif the component identifier is invalid or if the entity doesn't exist.
com::sun::star::configuration::backend::BackendAccessExceptionif an error occurs while accessing the data.
See also
com::sun::star::configuration::backend::XMultiLayerStratum::getLayer()
com::sun::star::configuration::backend::XMultiLayerStratum::getLayers()
com::sun::star::configuration::backend::XMultiLayerStratum::getMultipleLayers()
com::sun::star::configuration::backend::XBackendEntities

The documentation for this interface was generated from the following file: