Skip to content
Snippets Groups Projects
Commit 41f6d94f authored by juanf's avatar juanf
Browse files

SSDM-12514 : Adding new plugin type to startup

parent 97b676d1
No related branches found
No related tags found
1 merge request!40SSDM-13578 : 2PT : Database and V3 Implementation - include the new AFS "free"...
......@@ -7,6 +7,8 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.Session;
public interface IOperationListener<OPERATION extends IOperation, RESULT extends IOperationResult> {
public static final String LISTENER_PROPERTY_KEY = "operation-listener";
public abstract void beforeOperation(IApplicationServerInternalApi api, Session session, OPERATION operation);
public abstract void afterOperation(IApplicationServerInternalApi api, Session session, OPERATION operation, RESULT result, RuntimeException runtimeException);
}
......@@ -21,6 +21,7 @@ import java.io.IOException;
import java.util.Map;
import java.util.Properties;
import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.operation.IOperationListener;
import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.service.CustomASServiceProvider;
import ch.systemsx.cisd.base.unix.Unix;
import ch.systemsx.cisd.common.io.PropertyIOUtils;
......@@ -50,8 +51,9 @@ public class AutoSymlink
new PluginType("services",
CustomASServiceProvider.SERVICES_PROPERTY_KEY);
PluginType miscellaneous = new PluginType("miscellaneous", null);
PluginType apiListener = new PluginType("api-listener", IOperationListener.LISTENER_PROPERTY_KEY);
CorePluginsInjector injector =
new CorePluginsInjector(ScannerType.AS, new IPluginType[] { maintenanceTasks, services, miscellaneous });
new CorePluginsInjector(ScannerType.AS, new IPluginType[] { maintenanceTasks, services, miscellaneous, apiListener });
Map<String, File> pluginFolders = injector.injectCorePlugins(properties);
createSymlinks(new File("webapps/openbis/WEB-INF/lib/"), pluginFolders);
}
......
......@@ -19,6 +19,7 @@ package ch.systemsx.cisd.openbis.generic.server.coreplugin;
import java.io.IOException;
import java.util.Properties;
import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.operation.IOperationListener;
import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.service.CustomASServiceProvider;
import ch.systemsx.cisd.common.maintenance.MaintenanceTaskUtils;
import ch.systemsx.cisd.common.spring.ExposablePropertyPlaceholderConfigurer;
......@@ -65,10 +66,11 @@ public class CorePluginsInjectingPropertyPlaceholderConfigurer extends
CustomImport.PropertyNames.CUSTOM_IMPORTS.getName());
PluginType queryDatabases = new PluginType("query-databases", "query-databases");
PluginType miscellaneous = new PluginType("miscellaneous", null);
PluginType apiListener = new PluginType("api-listener", IOperationListener.LISTENER_PROPERTY_KEY);
PluginType webapps = PLUGIN_TYPE_WEBAPPS;
new CorePluginsInjector(ScannerType.AS, new IPluginType[]
{ maintenanceTasks, services, customImports, queryDatabases, miscellaneous, dssDataSources,
{ maintenanceTasks, services, customImports, queryDatabases, miscellaneous, apiListener, dssDataSources,
webapps }).injectCorePlugins(properties);
// Inject the web apps into jetty
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment