public interface ResourceProcessor
service.pid
standard OSGi service property which should be a unique string.
The order of the method calls on a particular Resource Processor in case of install/update session is the following:
begin(DeploymentSession)
process(String, InputStream)
calls till there are resources to
process or rollback()
and the further steps are ignoreddropped(String)
calls till there are resources to dropprepare()
commit()
or rollback()
begin(DeploymentSession)
dropAllResources()
or rollback()
and the further steps
are ignoredprepare()
commit()
or rollback()
Modifier and Type | Method and Description |
---|---|
void |
begin(DeploymentSession session)
Called when the Deployment Admin starts a new operation on the given
deployment package, and the resource processor is associated a resource
within the package.
|
void |
cancel()
Processing of a resource passed to the resource processor may take long.
|
void |
commit()
Called when the processing of the current deployment package is finished.
|
void |
dropAllResources()
This method is called during an "uninstall" deployment session.
|
void |
dropped(java.lang.String resource)
Called when a resource, associated with a particular resource processor,
had belonged to an earlier version of a deployment package but is not
present in the current version of the deployment package.
|
void |
prepare()
This method is called on the Resource Processor immediately before
calling the
commit method. |
void |
process(java.lang.String name,
java.io.InputStream stream)
Called when a resource is encountered in the deployment package for which
this resource processor has been selected to handle the processing of
that resource.
|
void |
rollback()
Called when the processing of the current deployment package is finished.
|
void begin(DeploymentSession session)
session
- object that represents the current session to the resource
processorDeploymentSession
void process(java.lang.String name, java.io.InputStream stream) throws ResourceProcessorException
name
- The name of the resource relative to the deployment package
root directory.stream
- The stream for the resource.ResourceProcessorException
- if the resource cannot be processed.
Only
ResourceProcessorException.CODE_RESOURCE_SHARING_VIOLATION
and ResourceProcessorException.CODE_OTHER_ERROR
error
codes are allowed.void dropped(java.lang.String resource) throws ResourceProcessorException
resource
- the name of the resource to drop (it is the same as the
value of the "Name" attribute in the deployment package's
manifest)ResourceProcessorException
- if the resource is not allowed to be
dropped. Only the
ResourceProcessorException.CODE_OTHER_ERROR
error code is
allowedvoid dropAllResources() throws ResourceProcessorException
ResourceProcessorException
- if all resources could not be dropped.
Only the ResourceProcessorException.CODE_OTHER_ERROR
is
allowed.void prepare() throws ResourceProcessorException
commit
method. The Resource Processor has to check
whether it is able to commit the operations since the last begin
method call. If it determines that it is not able to commit the changes,
it has to raise a ResourceProcessorException
with the
ResourceProcessorException.CODE_PREPARE
error code.ResourceProcessorException
- if the resource processor is able to
determine it is not able to commit. Only the
ResourceProcessorException.CODE_PREPARE
error code is
allowed.void commit()
void rollback()
void cancel()
cancel()
method notifies the resource processor that it
should interrupt the processing of the current resource. This method is
called by the DeploymentAdmin
implementation after the
DeploymentAdmin.cancel()
method is called.Copyright © OSGi Alliance (2000, 2018). All Rights Reserved. Licensed under the OSGi Specification License, Version 2.0