Language:

The Free and Open Productivity Suite
Apache OpenOffice 4.1.4 released

Developer's Guide

API

SDK

Tips 'n' Tricks

Miscellaneous


:: com :: sun :: star :: configuration :: backend ::

interface XLayerHandler
Description
receives a description of a configuration layer as a sequence of events.
Since
OOo 1.1.2

Methods' Summary
startLayer receives notification that a layer description is started for a component.  
endLayer receives notification that a layer description is complete.  
overrideNode receives notification that a description of a node override is started.  
addOrReplaceNode receives notification that a new item is started.  
addOrReplaceNodeFromTemplate receives notification that a new item based on a particular template is started.  
endNode receives notification that a node description is complete.  
dropNode receives notification that a node is dropped from a set.  
overrideProperty receives notification that an existing property is modified.  
setPropertyValue receives notification that the value of the current property is overridden. .  
setPropertyValueForLocale receives notification that the value of the current localized property is overridden for a specific locale .  
endProperty receives notification that a property description is complete.  
addProperty receives notification that a property having a void value is added to the current node.  
addPropertyWithValue receives notification that a property having a non-void value is added to the current node.  
Methods' Details
startLayer
void
startLayer()
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a layer description is started for a component.

Subsequent calls describe the contents of the layer until a matching call to XLayerHandler::endLayer() is encountered.

Throws
com::sun::star::configuration::backend::MalformedDataException if there is an unfinished layer in progress
Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
endLayer
void
endLayer()
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a layer description is complete.

Must match a previous call to XLayerHandler::startLayer().

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if invalid data is detected in the layer
  • if there is a unfinished subnode in progress
  • if no layer is started at all
  • if the layer tries to override read-only or final data

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
overrideNode
void
overrideNode( [in] string  aName,
[in] short  aAttributes,
[in] boolean  bClear )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a description of a node override is started.

Subsequent calls describe overrides to properties and members or items of the node until a matching call to XLayerHandler::endNode()is encountered.

Parameter aName
specifies the name of the node.
Parameter aAttributes
specifies attribute values to be applied to the node.

The value is a combination of NodeAttribute flags.

The attributes are combined cumulatively with those set on lower layers.

Parameter bClear
if true, specifies that the node should be cleared to an empty state by removing all non-mandatory children from lower layers prior to applying the overrides.
Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a layer in progress
  • if there already was a change to that node
  • if there is no node with that name
  • if the node is marked read-only in a lower layer
  • if the name is not a valid node name
  • if the attributes are not valid for the node

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
NodeAttribute
addOrReplaceNode
void
addOrReplaceNode( [in] string  aName,
[in] short  aAttributes )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a new item is started.

The current node must be a set and a preexisting item (if any) must be removeable.

The new item will be created from the default template of the set.

Subsequent calls describe the difference from the template of properties and members or items of the node until a matching call to XLayerHandler::endNode() is encountered.

Parameter aName
specifies the name of the item.
Parameter aAttributes
specifies attribute values to be applied to the new node.

The value is a combination of NodeAttribute flags. Note that NodeAttribute::FUSE has an impact on the semantics of this method.

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a set node in progress currently
  • if there already was a change to a node of that name
  • if the template for the new node is not found
  • if an item of that name on a lower layer is not removeable
  • if the name is not a valid item name
  • if the attributes are not valid for the node

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
NodeAttribute
addOrReplaceNodeFromTemplate
void
addOrReplaceNodeFromTemplate( [in] string  aName,
[in] TemplateIdentifier  aTemplate,
[in] short  aAttributes )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a new item based on a particular template is started.

The current node must be a set and a preexisting item (if any) must be removeable.

Subsequent calls describe the difference from the template of properties and members or items of the node until a matching call to XLayerHandler::endNode() is encountered.

Parameter aName
specifies the name of the item.
Parameter aTemplate
specifies the template to use for the new node
Parameter aAttributes
specifies attribute values to be applied to the new node.

The value is a combination of NodeAttribute flags. Note that NodeAttribute::FUSE has an impact on the semantics of this method.

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a set node in progress currently
  • if there already was a change to a node of that name
  • if the template for the new node is not found
  • if the template is not a valid item type for the containing set
  • if an item of that name on a lower layer is not removeable
  • if the name is not a valid item name
  • if the attributes are not valid for the node

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
NodeAttribute
endNode
void
endNode()
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a node description is complete.

Must match the last open call to XLayerHandler::overrideNode(), XLayerHandler::addOrReplaceNode() or XLayerHandler::addOrReplaceNodeFromTemplate().

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if invalid data is detected in the node
  • if no node is started at all

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
dropNode
void
dropNode( [in] string  aName )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a node is dropped from a set.

The current node must be a set and the item must be removeable.

Parameter aName
specifies the name of the node.
Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a set node in progress currently
  • if there already was a change to a node of that name
  • if there is no item with that name
  • if the item is not removeable
  • if the name is not a valid node name

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
overrideProperty
void
overrideProperty( [in] string  aName,
[in] short  aAttributes,
[in] type  aType,
[in] boolean  bClear )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that an existing property is modified.

Subsequent calls describe new value(s) for the property until a matching call to XLayerHandler::endProperty() is encountered.

Parameter aName
specifies the name of the property.
Parameter aAttributes
specifies the new attributes of the property.

The value is a combination of NodeAttribute flags.

The attributes are combined cumulatively with those set on lower layers.

Parameter aType
specifies the type of the property.

This must be the same type as is already defined in the schema or lower layers, unless the previous type was unspecified (as indicated by TypeClass::ANY.)

A void type indicates that the type is unspecified in this layer. In this case any subsequent value may be of a generic type (e.g. string or - for list values - string[].) Such values may be converted to the type defined in the schema by the implementation.

Parameter bClear
if true, specifies that the property should be cleared to an empty state by discarding all values from lower layers prior to applying the overrides.
Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a group or extensible node in progress currently
  • if there already was a change to a property of that name
  • if there is no property with that name
  • if the property is read-only
  • if the type does not match the type of the property
  • if a type is missing and cannot be determined otherwise
  • if the name is not a valid property name
  • if the attributes are not valid for the property

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
NodeAttribute
setPropertyValue
void
setPropertyValue( [in] any  aValue )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that the value of the current property is overridden. .
Parameter aValue
specifies the new value of the property.

The value must match the type of the current property. If the property does not have the SchemaAttribute::REQUIRED flag set, the value can be void.

If the current property is localized, this value applies to the default locale.

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a property in progress currently
  • if there already was a change to the value of that property
  • if the value does not have the proper type
  • if the value is not valid for the property

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
NodeAttribute
setPropertyValueForLocale
void
setPropertyValueForLocale( [in] any  aValue,
[in] string  aLocale )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that the value of the current localized property is overridden for a specific locale .
Parameter aValue
specifies the new value of the property.

The value must match the type of the current property. If the property does not have the SchemaAttribute::REQUIRED flag set, the value can be void.

Parameter aLocale
specifies the locale this value should apply to.
Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't a property in progress currently
  • if the current property isn't localized
  • if there already was a change to the property for that locale
  • if the value does not have the proper type
  • if the value is not valid for the property
  • if the locale is not a valid locale

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
NodeAttribute
endProperty
void
endProperty()
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a property description is complete.

Must match an open call to XLayerHandler::overrideProperty(),

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if invalid data is detected in the property
  • if no property is started at all

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
addProperty
void
addProperty( [in] string  aName,
[in] short  aAttributes,
[in] type  aType )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a property having a void value is added to the current node.

The current node must be extensible.

Parameter aName
specifies the name of the new property.
Parameter aAttributes
specifies the attributes of the new property.

The value is a combination of NodeAttribute flags and may also contain the SchemaAttribute::REQUIRED flag.

NodeAttribute::MANDATORY need not be set, as dynamically added properties always are mandatory in subsequent layers.

Parameter aType
specifies the type of the new property.
Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't an extensible node in progress currently
  • if a property with that name already exists
  • if the specified type is not allowed for a property
  • if the name is not a valid property name
  • if the attributes are not valid for the property

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
SchemaAttribute
addPropertyWithValue
void
addPropertyWithValue( [in] string  aName,
[in] short  aAttributes,
[in] any  aValue )
raises( MalformedDataException,
::com::sun::star::lang::WrappedTargetException );

Description
receives notification that a property having a non-void value is added to the current node.

The current node must be extensible.

Parameter aName
specifies the name of the new property.
Parameter aAttributes
specifies the attributes of the new property.

The value is a combination of NodeAttribute flags and may also contain the SchemaAttribute::REQUIRED flag.

NodeAttribute::MANDATORY need not be set, as dynamic properties always are mandatory in subsequent layers.

Parameter aValue
specifies the value of the new property.

The value also determines the type. Therefore the value must not be void.

Throws
com::sun::star::configuration::backend::MalformedDataException
  • if there isn't an extensible node in progress currently
  • if a property with that name already exists
  • if the type of the value is not an allowed type or if the value is void
  • if the name is not a valid property name
  • if the value is not valid for the property
  • if the attributes are not valid for the property

Not every implementation can detect each condition

Throws
com::sun::star::lang::WrappedTargetException if an error occurs processing the event.
See also
SchemaAttribute
Top of Page

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache and the Apache feather logo are trademarks of The Apache Software Foundation. OpenOffice, OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.