Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/bundle/CDOServerApplication.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/bundle/CDOServerApplication.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/bundle/CDOServerApplication.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/bundle/CDOServerApplication.java
index 1ffaf5358b..1a4b660bdc 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/bundle/CDOServerApplication.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/bundle/CDOServerApplication.java
@@ -36,6 +36,10 @@ public class CDOServerApplication extends OSGiApplication
{
public static final String ID = OM.BUNDLE_ID + ".app"; //$NON-NLS-1$
+ public static final String PROP_CONFIGURATOR_TYPE = "org.eclipse.emf.cdo.server.repositoryConfiguratorType";
+
+ public static final String PROP_CONFIGURATOR_DESCRIPTION = "org.eclipse.emf.cdo.server.repositoryConfiguratorDescription";
+
public static final String PROP_BROWSER_PORT = "org.eclipse.emf.cdo.server.browser.port"; //$NON-NLS-1$
private IRepository[] repositories;
@@ -47,6 +51,13 @@ public class CDOServerApplication extends OSGiApplication
super(ID);
}
+ protected RepositoryConfigurator getConfigurator(IManagedContainer container)
+ {
+ String type = OMPlatform.INSTANCE.getProperty(PROP_CONFIGURATOR_TYPE, RepositoryConfigurator.Factory.Default.TYPE);
+ String description = OMPlatform.INSTANCE.getProperty(PROP_CONFIGURATOR_DESCRIPTION);
+ return (RepositoryConfigurator)container.getElement(RepositoryConfigurator.Factory.PRODUCT_GROUP, type, description);
+ }
+
@Override
protected void doStart() throws Exception
{
@@ -57,7 +68,8 @@ public class CDOServerApplication extends OSGiApplication
File configFile = OMPlatform.INSTANCE.getConfigFile("cdo-server.xml"); //$NON-NLS-1$
if (configFile != null && configFile.exists())
{
- RepositoryConfigurator repositoryConfigurator = new RepositoryConfigurator(container);
+ RepositoryConfigurator repositoryConfigurator = getConfigurator(container);
+
repositories = repositoryConfigurator.configure(configFile);
if (repositories == null || repositories.length == 0)
{

Back to the top