!--a11y-->
Configuring and Deploying the Repository
Manager 
To enable the repository framework to access the configuration for the repository manager and to pass it to the implementation, you must register the new repository manager implementation as a configurable object in the configuration framework. To do this, you define a new configuration class and instance of the class.
You define a config class in an XML file. The class for the newly developed repository manager com.sap.bc.rf.manager.SimpleRepositoryManager.cc.xml is defined as shown in the example:
<ConfigClass name="com.sap.bc.rf.manager.SimpleRepositoryManager"
extends="RepositoryManager"
hotReload="false"
hotLoad="false"
hotUnload="false">
<attribute name="name" type="string"/>
<attribute name="prefix" type="string" default="/simple"/>
<attribute name="class" type="class"
constant="com.sap.bc.rf.manager.SimpleRepositoryManager"/>
<attribute name="OSRoot" type="string" default="C:/"/>
</ConfigClass>
The
attributes name, prefix and class are inherited from the config class RepositoryManager. In the example, an additional attribute
OSRoot, which is specifically required for the current
repository manager is included in the XML structure:
<attribute name="OSRoot" type="string" default="C:/"/>
The config instances of the config class will contain the additional property OSRoot.
All the properties (attributes) defined in the class can be used by the repository manager implementation. The properties of the config instance are passed to the repository manger at start-up and can be fetched within the AbstractManager’s startUpImpl() method.
You
can define a config instance for testing purposes or to provide a default
configuration for the repository manager. For the config class defined above,
the instance (com.sap.bc.rf.manager.SimpleRepositoryManager.co.xml) can be defined as shown
in the example.
Note that you can also deploy the config class without an instance and then
use the configuration UI within the portal to create the
instance.
The example below shows an example of a config class for testing:
You reference every unified aspect that you implement in the instance definition, to ensure that it is used for the repository manager at runtime. The config class definition and the config instance file, have to be bundled with the deployable unit of the repository manager. You deploy the instance if you want to have a default instance of your repository manager deployed for testing.
<?xml version="1.0" encoding="UTF-8" ?>
<Configurable configclass="com.sap.bc.rf.manager.SimpleRepositoryManager">
<property name="name" value="simple" />
<property name="description" />
<property name="prefix" value="/simple" />
<property name="OSRoot" value="D:/" />
<property name="active" value="true" />
<property name="sendevents" value="true" />
<property name="ignorerootdisplayname" value="false" />
<property name="services" />
<property name="class"
value="com.sap.bc.rf.manager.SimpleRepositoryManager" />
<property
name="namespacemgr.class"
value="com.sap.bc.rf.manager.SimpleNamespaceManager" />
<property name="contentmgr.class"
value="com.sap.bc.rf.manager.SimpleContentManager" />
<property name="propertymgr.class"
value="com.sap.bc.rf.manager.SimplePropertyManager" />
<property name="propertysearchmgr.class" />
<property name="idmappermgr.class"/>
<property name="lockmgr.class"/>
<property name="securitymgr.class" />
<property name="securitymgr.ref" />
<property name="securitymgr.w2kcfg.systemid" />
<property name="securitymgr.aclcfg" />
<property name="securitymgr.aclcacheid" />
<property name="typemgr.class" />
<property name="versioningmgr.class" />
</Configurable>