org.cishell.framework.algorithm
Interface AlgorithmFactory
public interface AlgorithmFactory
A service interface for creating Algorithm
s to be executed.
An algorithm developer must create an implementation of this interface and
register it (along with some standard metadata about the algorithm, defined
in the AlgorithmProperty
class) in the OSGi service registry.
If the algorithm requires input in addition to the raw data provided, a
MetaTypeProvider
must be published to OSGi's MetaTypeService
(usually through a METADATA.XML file in the algorithm's bundle).
See the
CIShell Specification 1.0 for documentation on the full requirements for
algorithm creation.
- Author:
- Bruce Herr (bh2@bh2.net)
createAlgorithm
Algorithm createAlgorithm(Data[] data,
Dictionary parameters,
CIShellContext context)
- Creates an
Algorithm
to be executed
- Parameters:
data
- The data to be given to the Algorithm to process.
Some Algorithms may ignore this value. The order and
type of data given are specified in the service
dictionary (the 'in_data' key) when registered as a
service in OSGi.parameters
- A set of key-value pairs that were created based on
the associated input specification published to the
MetaTypeService
context
- The context by which the Algorithm can gain access to
standard CIShell services
- Returns:
- An
Algorithm
primed for execution