org.pentaho.platform.api.engine
Interface IServiceManager

All Known Implementing Classes:
DefaultServiceManager

public interface IServiceManager

A service manager allows a POJO to be exposed as various types of services by constructing a simple ServiceConfig and calling #registerService(ServiceConfig). An implementation of IServiceManager acts as a depot of service objects in the Pentaho BI platform.

For information on providing services via platform plugins, see the wiki link below.

Author:
aphillips
See Also:
http://wiki.pentaho.com/display/ServerDoc2x/Developing+Plugins#DevelopingPlugins-Definingawebservice(newinCitrus)}

Method Summary
 Object getServiceBean(String serviceType, String serviceId)
          Returns an instance of a registered servicing object.
 IServiceConfig getServiceConfig(String serviceType, String serviceId)
          Gets the configuration for the requested service.
 void initServices()
          Activates the services that have been registered with the service manager.
 void registerService(IServiceConfig config)
          Registers a service with the service manager.
 

Method Detail

registerService

void registerService(IServiceConfig config)
                     throws ServiceException
Registers a service with the service manager. The service may not become active until #initServices(IPentahoSession) has been called.

Parameters:
wsDefinition - the web service definition
Throws:
ServiceException

initServices

void initServices()
                  throws ServiceInitializationException
Activates the services that have been registered with the service manager.

Parameters:
session - the current session
Throws:
ServiceInitializationException

getServiceBean

Object getServiceBean(String serviceType,
                      String serviceId)
                      throws ServiceException
Returns an instance of a registered servicing object.

Parameters:
serviceType - the type of the service, used to lookup the correct service class
serviceId - the unique id of the service
Returns:
an instance of the servicing object
Throws:
ServiceException - if no service object can be found or there was a problem retrieving the service object

getServiceConfig

IServiceConfig getServiceConfig(String serviceType,
                                String serviceId)
Gets the configuration for the requested service.

Parameters:
serviceType - the type of the service, used to lookup the correct service class
serviceId - the unique id of the service
Returns:
configuration of the service