Package org.geotools.process.impl
Class SingleProcessFactory
- Object
-
- SingleProcessFactory
-
- All Implemented Interfaces:
ProcessFactory
,Factory
,OptionalFactory
- Direct Known Subclasses:
AbstractFeatureCollectionProcessFactory
public abstract class SingleProcessFactory extends Object implements ProcessFactory
Helper class for a process factory that will return just a single process- Author:
- Andrea Aime - OpenGeo
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
SingleProcessFactory()
Utility method for factories that will use the process factory name in order to define the process name by stripping the "Factory" at the end of the name.protected
SingleProcessFactory(Name processName)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Process
create()
Process
create(Name name)
Create a process for execution.protected abstract InternationalString
getDescription()
InternationalString
getDescription(Name name)
Human readable description of the specified processMap<RenderingHints.Key,?>
getImplementationHints()
The default implementation returns an empty map.Set<Name>
getNames()
The names (non human readable) that can be used to refer to the processes generated by this factory.protected abstract Map<String,Parameter<?>>
getParameterInfo()
Map<String,Parameter<?>>
getParameterInfo(Name name)
Description of the Map parameter to use when executing.protected abstract Map<String,Parameter<?>>
getResultInfo(Map<String,Object> parameters)
Map<String,Parameter<?>>
getResultInfo(Name name, Map<String,Object> parameters)
Description of the results returnedInternationalString
getTitle()
Name suitable for display to end user.InternationalString
getTitle(Name name)
Human readable title suitable for display for the specified processprotected abstract String
getVersion()
String
getVersion(Name name)
Return the version of the processboolean
isAvailable()
Default Implementation return trueprotected abstract boolean
supportsProgress()
boolean
supportsProgress(Name name)
It is up to the process implementors to implement progress on the task, this method is used to see if the process has progress monitoring implemented
-
-
-
Constructor Detail
-
SingleProcessFactory
protected SingleProcessFactory()
Utility method for factories that will use the process factory name in order to define the process name by stripping the "Factory" at the end of the name.
-
SingleProcessFactory
protected SingleProcessFactory(Name processName)
- Parameters:
processName
-
-
-
Method Detail
-
create
public Process create(Name name)
Description copied from interface:ProcessFactory
Create a process for execution.- Specified by:
create
in interfaceProcessFactory
- Parameters:
name
- the process identifier- Returns:
- Process implementation
-
getNames
public Set<Name> getNames()
Description copied from interface:ProcessFactory
The names (non human readable) that can be used to refer to the processes generated by this factory.This name is used to advertise the availability of a Process in a WPS; while the Title and Description will change depending on the users locale; this name will be consistent. It is up to the implementor to ensure this name is unique
- Specified by:
getNames
in interfaceProcessFactory
- Returns:
- a set of names handled by this process factory
-
getDescription
public InternationalString getDescription(Name name)
Description copied from interface:ProcessFactory
Human readable description of the specified process- Specified by:
getDescription
in interfaceProcessFactory
- Parameters:
name
- the process whose description is to be returned
-
getParameterInfo
public Map<String,Parameter<?>> getParameterInfo(Name name)
Description copied from interface:ProcessFactory
Description of the Map parameter to use when executing.- Specified by:
getParameterInfo
in interfaceProcessFactory
- Parameters:
name
- the process identifier- Returns:
- Description of required parameters
-
getResultInfo
public Map<String,Parameter<?>> getResultInfo(Name name, Map<String,Object> parameters) throws IllegalArgumentException
Description copied from interface:ProcessFactory
Description of the results returned- Specified by:
getResultInfo
in interfaceProcessFactory
- Parameters:
name
- the process identifierparameters
- the parameters to be used- Throws:
IllegalArgumentException
-
getTitle
public InternationalString getTitle(Name name)
Description copied from interface:ProcessFactory
Human readable title suitable for display for the specified processPlease note that this title is *not* stable across locale; if you want to remember a ProcessFactory between runs please use getName (which is dependent on the implementor to guarantee uniqueness) or use the classname
- Specified by:
getTitle
in interfaceProcessFactory
- Parameters:
name
- the process identifier
-
getVersion
public String getVersion(Name name)
Description copied from interface:ProcessFactory
Return the version of the process- Specified by:
getVersion
in interfaceProcessFactory
- Parameters:
name
- the process identifier- Returns:
- String version
-
supportsProgress
public boolean supportsProgress(Name name)
Description copied from interface:ProcessFactory
It is up to the process implementors to implement progress on the task, this method is used to see if the process has progress monitoring implemented- Specified by:
supportsProgress
in interfaceProcessFactory
- Parameters:
name
- the process identifier- Returns:
- true if it supports progress monitoring
-
isAvailable
public boolean isAvailable()
Default Implementation return true- Specified by:
isAvailable
in interfaceOptionalFactory
-
getImplementationHints
public Map<RenderingHints.Key,?> getImplementationHints()
The default implementation returns an empty map.- Specified by:
getImplementationHints
in interfaceFactory
- Returns:
- The map of hints, or an {@linkplain java.util.Collections.emptyMap() empty map} if none.
-
create
protected abstract Process create()
-
getDescription
protected abstract InternationalString getDescription()
-
getResultInfo
protected abstract Map<String,Parameter<?>> getResultInfo(Map<String,Object> parameters) throws IllegalArgumentException
- Throws:
IllegalArgumentException
-
getTitle
public InternationalString getTitle()
Name suitable for display to end user.- Specified by:
getTitle
in interfaceProcessFactory
- Returns:
- A short name suitable for display in a user interface.
-
getVersion
protected abstract String getVersion()
-
supportsProgress
protected abstract boolean supportsProgress()
-
-