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 protectedSingleProcessFactory()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.protectedSingleProcessFactory(Name processName)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Processcreate()Processcreate(Name name)Create a process for execution.protected abstract InternationalStringgetDescription()InternationalStringgetDescription(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 returnedInternationalStringgetTitle()Name suitable for display to end user.InternationalStringgetTitle(Name name)Human readable title suitable for display for the specified processprotected abstract StringgetVersion()StringgetVersion(Name name)Return the version of the processbooleanisAvailable()Default Implementation return trueprotected abstract booleansupportsProgress()booleansupportsProgress(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:ProcessFactoryCreate a process for execution.- Specified by:
createin interfaceProcessFactory- Parameters:
name- the process identifier- Returns:
- Process implementation
-
getNames
public Set<Name> getNames()
Description copied from interface:ProcessFactoryThe 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:
getNamesin interfaceProcessFactory- Returns:
- a set of names handled by this process factory
-
getDescription
public InternationalString getDescription(Name name)
Description copied from interface:ProcessFactoryHuman readable description of the specified process- Specified by:
getDescriptionin interfaceProcessFactory- Parameters:
name- the process whose description is to be returned
-
getParameterInfo
public Map<String,Parameter<?>> getParameterInfo(Name name)
Description copied from interface:ProcessFactoryDescription of the Map parameter to use when executing.- Specified by:
getParameterInfoin 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:ProcessFactoryDescription of the results returned- Specified by:
getResultInfoin interfaceProcessFactory- Parameters:
name- the process identifierparameters- the parameters to be used- Throws:
IllegalArgumentException
-
getTitle
public InternationalString getTitle(Name name)
Description copied from interface:ProcessFactoryHuman 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:
getTitlein interfaceProcessFactory- Parameters:
name- the process identifier
-
getVersion
public String getVersion(Name name)
Description copied from interface:ProcessFactoryReturn the version of the process- Specified by:
getVersionin interfaceProcessFactory- Parameters:
name- the process identifier- Returns:
- String version
-
supportsProgress
public boolean supportsProgress(Name name)
Description copied from interface:ProcessFactoryIt 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:
supportsProgressin interfaceProcessFactory- Parameters:
name- the process identifier- Returns:
- true if it supports progress monitoring
-
isAvailable
public boolean isAvailable()
Default Implementation return true- Specified by:
isAvailablein interfaceOptionalFactory
-
getImplementationHints
public Map<RenderingHints.Key,?> getImplementationHints()
The default implementation returns an empty map.- Specified by:
getImplementationHintsin 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:
getTitlein interfaceProcessFactory- Returns:
- A short name suitable for display in a user interface.
-
getVersion
protected abstract String getVersion()
-
supportsProgress
protected abstract boolean supportsProgress()
-
-