The DSpace Services Framework provides the infrastructure of a more
componentized realization of DSpace. Services, plugins, and providers
are registered with the framework so that they can find each other without
having to know each other too intimately. This should make it easier to
maintain, extend, and understand DSpace as it evolves.
The framework consists of:
- kernel
- initializes and starts the framework,
grants ready access to core services
- service manager
- instantiates, configures, and controls services
- core services
- configuration, events, and the like
- utilities
- includes the DSpace object, a starting point in using the framework
To use the Services Framework, start by creating a running kernel
instance.
- In a standalone application, you can call {@link
org.dspace.servicemanager.DSpaceKernelInit#getKernel} to get a reference
to one.
- In a Spring container, you need to ensure that
{@code spring/spring-dspace-applicationContext.xml} and
{@code spring/spring-dspace-core-services.xml} are loaded. Then you can
wire references to
- {@code org.dspace.services.CachingService}
- {@code org.dspace.services.SessionService}
- {@code org.dspace.services.RequestService}
- {@code org.dspace.services.EventService}
into your beans as needed.
- In a servlet container, you should configure a
{@link org.dspace.servicemanager.servlet.DSpaceKernelServletContextListener context listener}
to instantiate the kernel and a
{@link org.dspace.utils.servlet.DSpaceWebappServletFilter filter}
to establish the connection between the web application and the
framework.
@see
DSpace Services Framework