This plugin is used to configure the predefined taxonomies to inject into JCR.
To use the plugin in the component configuration, you must use the following target-component:
<target-component>org.exoplatform.services.cms.taxonomy.TaxonomyService</target-component>
The configuration is applied mainly in packaging/wcm/webapp/src/main/webapp/WEB-INF/conf/dms-extension/dms/dms-categories-configuration.xml
.
Sample configuration:
<external-component-plugins>
<target-component>org.exoplatform.services.cms.taxonomy.TaxonomyService</target-component>
<component-plugin>
<name>predefinedTaxonomyPlugin</name>
<set-method>addTaxonomyPlugin</set-method>
<type>org.exoplatform.services.cms.taxonomy.impl.TaxonomyPlugin</type>
<init-params>
<value-param>
<name>autoCreateInNewRepository</name>
<value>true</value>
</value-param>
<value-param>
<name>repository</name>
<value>repository</value>
</value-param>
<value-param>
<name>workspace</name>
<value>dms-system</value>
</value-param>
<value-param>
<name>treeName</name>
<value>System</value>
</value-param>
<object-param>
<name>permission.configuration</name>
<object type="org.exoplatform.services.cms.taxonomy.impl.TaxonomyConfig">
<field name="taxonomies">
<collection type="java.util.ArrayList">
<value>
<object type="org.exoplatform.services.cms.taxonomy.impl.TaxonomyConfig$Taxonomy">
<field name="permissions">
<collection type="java.util.ArrayList">
<value>
<object type="org.exoplatform.services.cms.taxonomy.impl.TaxonomyConfig$Permission">
<field name="identity">
<string>*:/platform/users</string>
</field>
<field name="read">
<string>true</string>
</field>
<field name="addNode">
<string>true</string>
</field>
<field name="setProperty">
<string>true</string>
</field>
<field name="remove">
<string>false</string>
</field>
</object>
</value>
</collection>
</field>
</object>
</value>
</collection>
</field>
</object>
</object-param>
<object-param>
...
</object-param>
</init-params>
</component-plugin>
</external-component-plugins>
In which:
Name:
predefinedTaxonomyPlugin
Set-method:
addTaxonomyPlugin
Type:
org.exoplatform.services.cms.taxonomy.impl.TaxonomyPlugin
Init-param:
Value-param | Type | Value | Description |
---|---|---|---|
autoCreateInNewRepository |
boolean
|
true
| Enables/Disables the creation of the taxonomies in the newly created repository. |
repository |
string
|
repository
| The name of the repository where taxonomies are created. |
workspace |
string
|
dms-system
| The name of the workspace where taxonomies are created. |
treeName |
string
|
system
| The name of the taxonomy tree created. |
Object type:
org.exoplatform.services.cms.taxonomy.impl.TaxonomyConfig
Name | Type | Value | Description |
---|---|---|---|
taxonomies |
ArrayList
| {java.util.ArrayList} | The list of taxonomies to be configured with permission. |
Object type:
org.exoplatform.services.cms.taxonomy.impl.TaxonomyConfig$Taxonomy
Name | Type | Value | Description |
---|---|---|---|
permissions |
ArrayList
| {java.util.ArrayList} | The list of permissions for users or groups to access the taxonomy. |
Object type:
org.exoplatform.services.cms.taxonomy.impl.TaxonomyConfig$Permission
Name | Type | Value | Description |
---|---|---|---|
identity |
string
| *:/platform/users | The name of the user, group or membership. |
read |
boolean
|
true
| The permission to read the taxonomy tree. |
addNode |
boolean
|
true
| The permission to add a node to the taxonomy tree. |
setProperty |
boolean
|
true
| The permission to set properties for a node in the taxonomy tree. |
remove |
boolean
|
false
| The permission to remove a node from the taxonomy tree. |