Site Manager Developer Manual / Version 2107
Table Of Contents
The
Site Manager
is configured with XML files. It is possible to define special
configuration files for distinct groups or users of the CoreMedia system. To configure the usage of special
configuration files you may adapt the following properties in the
editor.properties
file (see
Section 3.4, “Defining XML Files For Configuration”
for details):
editor.startup.configuration
editor.configuration
group.configuration
user.configuration
If you only use group.configuration
, you can define one specific configuration file for each group.
To have multiple configuration files for one group, you may configure the set of files and in which order they are
parsed in
editor-startup.xml
(default) or in the file configured by
editor.startup.configuration
. Mind that group configuration in
editor-startup.xml
overrides the mechanism one configuration file per group which especially means: If users are not member of any
group configured in
<ConfigGroups>
no group configurations are applied to these users.
In both cases, that is either with one configuration file per group or with multiple configuration files per group
you have to set the property
group.configuration
to point to configuration files with a path relative
to
<CoreMediaHome>
or to the URL where to find the files. The path/URL defined has to contain a
wildcard
{0}
which will be replaced either by the group name or by the names as defined in the
<Configuration>
element (see below).
Example:
group.configuration=properties/corem/editor-{0}.xml
The
Content Server
will look in the
properties/corem
directory for
a file called
editor-<PlaceHolder>.xml
where
<PlaceHolder>
will be replaced
by the values of the
name
attribute of the <Configuration>
element described below
or by the group name if no <ConfigGroups>
element is used.
If a user is member of more than one group, the exact behavior reading group configuration files is undetermined.
If multiple matching
<ConfigGroup>
exist, one of them is chosen by random. If
<ConfigGroups>
configuration is not used but direct mapping groups to configuration files all
matching configuration files are read but in an undetermined order. To determine the exact behavior you have to
implement your own selection scheme. Proceed as follows:
Extend
GenericEditor
Override the
getConfigurationGroupNames(UserModel user)
method which is inherited fromAbstractEditor
with your own selection scheme. The default implementation of the method either returns the configuration file names as configured in the<Configuration>
element (first case) and if no<ConfigGroups>
element is used the unordered list of groups a user is member of. You might want to use the convenience methodgetUserConfigGroups(UserModel user)
to create your own implementation. For further reference see the Javadoc.Add your class to the
class
attribute of the<Editor>
element in theeditor-startup.xml
file.
<ConfigGroups>
Child elements:
<ConfigGroup>
Parent elements:
<Editor>
<Editor> <ConfigGroups> . . </ConfigGroups> </Editor>
This element combines the elements for the group configuration.
The element has no attributes. If
<ConfigGoups>
is not used but
group.configuration
is set, only the general editor configuration file (default:
editor.xml
) and the matching group specific configuration files will be applied. See the
Site Manager
chapter in the
Administration and
Operations Manual
for details.
<ConfigGroup>
Child elements:
<Configuration>
Parent elements:
<ConfigGroup>
<ConfigGroups> <ConfigGroup name="editor" domain="main"> . . </ConfigGroup> </ConfigGroups>
This element defines for which group and domain the configuration should be used. It groups the
<Configuration>
elements.
Attribute | Description |
---|---|
name | The name of an existing group in the CoreMedia user management for which the configuration will be used. |
domain | The domain of the group. |
Table 3.3. Attributes of the <ConfigGroup> element
<Configuration>
Child elements:
Parent elements:
<ConfigGroup>
<ConfigGroups> <ConfigGroup name="editor"> <Configuration name="common"/> <Configuration name="special"/> </ConfigGroup> </ConfigGroups>
This element defines the name with which the placeholder in
group.configuration
will be replaced and
the order in which multiple configuration files are applied. In the example above the placeholder will first be
replaced with "common" and then with "special", if the user is member of the "editor" group. This especially means
that in case of conflicting settings the settings from the special file will override the settings in the common
file.
Attribute | Description |
---|---|
name | Name which will replace the placeholder in the
group.configuration
property of editor.properties . In general, this is not the name of an
existing group, but it can be.
|
Table 3.4. Attribute of the <Configuration> element