LibreOffice LibreOffice 25.2 SDK API Reference

Included Services | Exported Interfaces | List of all members
SimpleSetUpdate Service Referencepublished

provides write access to a dynamic, homogeneous, non-hierarchical set of values or objects. More...

`import"SimpleSetUpdate.idl";`

Inheritance diagram for SimpleSetUpdate:

## Included Services
service | SimpleSetAccess
| is the basic service providing read access to a (not necessarily hierarchical) set. More...

## Exported Interfaces
interface | com::sun::star::container::XNameContainer
| allows inserting, removing, and replacing elements. More...
interface | com::sun::star::lang::XSingleServiceFactory
| allows creating an object that can be inserted into this set. More...
interface | com::sun::star::lang::XMultiServiceFactory
| allows creating various objects that can be inserted into this set. More...
Exported Interfaces inherited from SimpleSetAccess
interface | com::sun::star::container::XNameAccess
| is the basic service for accessing child and descendent nodes. More...
interface | com::sun::star::configuration::XTemplateContainer
| provides additional information about the element type. More...
interface | com::sun::star::util::XStringEscape
| allows normalizing and denormalizing external names. More...
interface | com::sun::star::container::XContainer
| allows attaching listeners to this node to monitor changes to the set. More...

## Additional Inherited Members
Public Member Functions inherited from XNameAccess
any | getByName ([in] string aName) raises ( com::sun::star::container::NoSuchElementException, com::sun::star::lang::WrappedTargetException )
sequence< string > | getElementNames ()
boolean | hasByName ([in] string aName)
Public Member Functions inherited from XElementAccess
type | getElementType ()
boolean | hasElements ()
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...
Public Member Functions inherited from XNameContainer
void | insertByName ([in] string aName, [in] any aElement) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::ElementExistException, com::sun::star::lang::WrappedTargetException )
| inserts the given element at the specified name. More...
void | removeByName ([in] string Name) raises ( com::sun::star::container::NoSuchElementException, com::sun::star::lang::WrappedTargetException )
| removes the element with the specified name. More...
Public Member Functions inherited from XNameReplace
void | replaceByName ([in] string aName, [in] any aElement) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::NoSuchElementException, com::sun::star::lang::WrappedTargetException )
| replaces the element with the specified name with the given element. More...
Protected Member Functions inherited from XTemplateContainer
string | getElementTemplateName ()
| retrieves the name of the template More...
Protected Member Functions inherited from XStringEscape
string | escapeString ([in] string aString) raises ( com::sun::star::lang::IllegalArgumentException)
| encodes an arbitrary string into an escaped form compatible with some naming rules. More...
string | unescapeString ([in] string aEscapedString) raises ( com::sun::star::lang::IllegalArgumentException)
| decodes an escaped string into the original form. More...
Protected Member Functions inherited from XContainer
void | addContainerListener ([in] com::sun::star::container::XContainerListener xListener)
| adds the specified listener to receive events when elements are inserted or removed. More...
void | removeContainerListener ([in] com::sun::star::container::XContainerListener xListener)
| removes the specified listener so it does not receive any events from this container. More...
Protected Member Functions inherited from XSingleServiceFactory
com::sun::star::uno::XInterface | createInstance () raises ( com::sun::star::uno::Exception )
| Creates an instance of a service implementation. More...
com::sun::star::uno::XInterface | createInstanceWithArguments ([in] sequence< any > aArguments) raises ( com::sun::star::uno::Exception )
| Creates an instance of a service implementation initialized with some arguments. More...
Protected Member Functions inherited from XMultiServiceFactory
com::sun::star::uno::XInterface | createInstance ([in] string aServiceSpecifier) raises ( com::sun::star::uno::Exception )
| Creates an instance classified by the specified name. More...
com::sun::star::uno::XInterface | createInstanceWithArguments ([in] string ServiceSpecifier, [in] sequence< any > Arguments) raises ( com::sun::star::uno::Exception )
| Creates an instance classified by the specified name and passes the arguments to that instance. More...
sequence< string > | getAvailableServiceNames ()
| Provides the available names of the factory to be used to create instances. More...

## Detailed Description

provides write access to a dynamic, homogeneous, non-hierarchical set of values or objects.

Allows adding and removing elements. Helps create new elements to be added.

This service extends SimpleSetAccess to support modifying the container. Any child objects shall in turn support modifying access.

## Exported Interfaces

## ◆ SimpleSetAccess

service SimpleSetAccess

is the basic service providing read access to a (not necessarily hierarchical) set.

## Exported Interfaces

## ◆ com::sun::star::container::XNameContainer

interface com::sun::star::container::XNameContainer

allows inserting, removing, and replacing elements.

This interface extends the interface com::sun::star::container::XNameAccess supported by service SimpleSetAccess to allow modifying the container.

If available, changes can be observed by registering a listener with interface com::sun::star::container::XContainer.

If the elements of this set are of simple type (the type returned by com::sun::star::container::XElementAccess::getElementType() is not an interface type), then values of that type can directly be passed to com::sun::star::container::XNameContainer::insertByName() and com::sun::star::container::XNameContainer::replaceByName().

Otherwise new elements have to be constructed to match the type prescribed by the element template of this set. Such elements can be created using interfaces com::sun::star::lang::XSingleServiceFactory and, if supported, com::sun::star::lang::XMultiServiceFactory.

Objects to be inserted must not be contained in any set at the time of insertion. com::sun::star::container::XChild::getParent() must return `NULL`. If a name had been assigned to the object prior to insertion (using com::sun::star::container::XNamed::setName() or by other means), this name is ignored and will be lost. After insertion the name of the object is the name that was used as argument to com::sun::star::container::XNameContainer::insertByName() or com::sun::star::container::XNameContainer::replaceByName().

Objects that are removed using com::sun::star::container::XNameContainer::removeByName() or replaced using com::sun::star::container::XNameContainer::replaceByName() remain valid and can be reinserted into a set supporting the same template and even under a different name.

An implementation need not support insertion of objects that were not obtained in one of the ways described above. If it does, the implementation must reject elements that do not have the correct structure as described by the template.

## ◆ com::sun::star::lang::XMultiServiceFactory

interface com::sun::star::lang::XMultiServiceFactory
| optional

allows creating various objects that can be inserted into this set.

[optional]

This interface may be implemented by an implementation of service SetUpdate to support creating elements from other than the basic element template. An example of this would be an implementation that supports inheritance, allowing the use of templates derived from the basic template by extension.

This interface may only be implemented if the element type of the set (as returned by com::sun::star::container::XElementAccess::getElementType()) is an object type, such as an interface. An implementation should also implement interface XTemplateContainer which is optional in this service.

The service identifier argument passed to com::sun::star::lang::XMultiServiceFactory::createInstance() or com::sun::star::lang::XMultiServiceFactory::createInstanceWithArguments() names the template to be instantiated or otherwise identifies the structure to be built. The implementation must at least support using the template name obtained from XTemplateContainer::getElementTemplateName() as a service identifier, in which case the result shall be the same as if the corresponding member of com::sun::star::lang::XSingleServiceFactory had been called.

## ◆ com::sun::star::lang::XSingleServiceFactory

interface com::sun::star::lang::XSingleServiceFactory
| optional

allows creating an object that can be inserted into this set.

[conditional]

This interface shall be implemented by an implementation, if and only if the element type of the set, as returned by com::sun::star::container::XElementAccess::getElementType(), is an object type, such as an interface.

Using com::sun::star::lang::XSingleServiceFactory::createInstance() an instance of the element template of this set is created. If the set supports multiple templates or variations of the basic template, a default variant of the basic template is instantiated. If an implementation supports variations, they may be specified by passing arguments to com::sun::star::lang::XSingleServiceFactory::createInstanceWithArguments(). There are no predefined arguments for all versions of this service.

The object created is not contained in the set and does not have a name yet. It may subsequently be inserted into the set and named using com::sun::star::container::XNameContainer::insertByName() or com::sun::star::container::XNameContainer::replaceByName().

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

- com/sun/star/configuration/SimpleSetUpdate.idl