|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectgate.util.AbstractFeatureBearer
gate.creole.AbstractResource
gate.creole.AbstractController
@CreoleResource(icon="application") public abstract class AbstractController
| Nested Class Summary | |
|---|---|
protected class |
AbstractController.InternalStatusListener
A simple status listener used to forward the events upstream. |
protected class |
AbstractController.IntervalProgressListener
A progress listener used to convert a 0..100 interval into a smaller one |
| Field Summary | |
|---|---|
protected Map |
benchmarkFeatures
Shared featureMap |
protected String |
benchmarkID
Benchmark ID of this resource. |
private Vector |
controllerListeners
The list of ControllerListeners registered with this
resource |
protected boolean |
interrupted
|
protected String |
name
|
private Vector |
progressListeners
The list of ProgressListeners registered with this
resource |
private Vector |
statusListeners
The list of StatusListeners registered with this
resource |
| Fields inherited from class gate.creole.AbstractResource |
|---|
serialVersionUID |
| Fields inherited from class gate.util.AbstractFeatureBearer |
|---|
features |
| Constructor Summary | |
|---|---|
AbstractController()
|
|
| Method Summary | |
|---|---|
void |
addControllerListener(ControllerListener l)
|
void |
addProgressListener(ProgressListener l)
Adds a ProgressListener to the list of listeners for
this processing resource. |
void |
addStatusListener(StatusListener l)
Adds a StatusListener to the list of listeners for this
processing resource |
void |
cleanup()
Clears the internal data of the resource, when it gets released * |
void |
execute()
Execute this controller. |
protected void |
executeImpl()
Executes the PRs in this controller, according to the execution strategy of the particular controller type (simple pipeline, parallel execution, once-per-document in a corpus, etc.). |
protected void |
fireProcessFinished()
Notifies all the ProgressListeners of a progress
finished. |
protected void |
fireProgressChanged(int e)
Notifies all the ProgressListeners of a progress change
event. |
protected void |
fireResourceAdded(ControllerEvent e)
|
protected void |
fireResourceRemoved(ControllerEvent e)
|
protected void |
fireStatusChanged(String e)
Notifies all the StatusListeners of a change of status. |
String |
getBenchmarkId()
Returns the benchmark ID of this controller. |
protected Set<ControllerAwarePR> |
getControllerAwarePRs()
Get the set of PRs from this controller that implement ControllerAwarePR. |
String |
getName()
Returns the name of this resource |
List |
getOffendingPocessingResources()
Checks whether all the contained PRs have all the required runtime parameters set. |
Resource |
init()
Initialise this resource, and return it. |
void |
interrupt()
Notifies all the PRs in this controller that they should stop their execution as soon as possible. |
boolean |
isInterrupted()
Returns true if this executable has been interrupted via the Executable.interrupt() method since the last time its Executable.execute() method
was called |
void |
reInit()
Reinitialises the processing resource. |
void |
removeControllerListener(ControllerListener l)
|
void |
removeProgressListener(ProgressListener l)
Removes a ProgressListener from the list of listeners
for this processing resource. |
void |
removeStatusListener(StatusListener l)
Removes a StatusListener from the list of listeners for
this processing resource |
void |
setBenchmarkId(String benchmarkID)
Sets the benchmark ID of this controller. |
void |
setName(String name)
Sets the name of this resource |
void |
setPRs(Collection PRs)
Populates this controller from a collection of ProcessingResources
(optional operation). |
| Methods inherited from class gate.creole.AbstractResource |
|---|
checkParameterValues, getBeanInfo, getParameterValue, getParameterValue, removeResourceListeners, setParameterValue, setParameterValue, setParameterValues, setParameterValues, setResourceListeners |
| Methods inherited from class gate.util.AbstractFeatureBearer |
|---|
getFeatures, setFeatures |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface gate.Controller |
|---|
getPRs |
| Methods inherited from interface gate.Resource |
|---|
getParameterValue, setParameterValue, setParameterValues |
| Field Detail |
|---|
protected String benchmarkID
protected Map benchmarkFeatures
protected String name
private transient Vector statusListeners
StatusListeners registered with this
resource
private transient Vector progressListeners
ProgressListeners registered with this
resource
private transient Vector controllerListeners
ControllerListeners registered with this
resource
protected boolean interrupted
| Constructor Detail |
|---|
public AbstractController()
| Method Detail |
|---|
public void execute()
throws ExecutionException
ControllerAwarePRs of the start and end of execution, and
delegates to the executeImpl() method to do the real work.
Subclasses should override executeImpl() rather than this method.
execute in interface Controllerexecute in interface ExecutableExecutionExceptionprotected Set<ControllerAwarePR> getControllerAwarePRs()
ControllerAwarePR. If there are no such PRs in this controller, an
empty set is returned. This implementation simply filters the collection
returned by Controller.getPRs(), override this method if your
subclass admits a more efficient implementation.
protected void executeImpl()
throws ExecutionException
execute() method to handle sending
notifications to controller aware PRs.
ExecutionException
public Resource init()
throws ResourceInstantiationException
init in interface Resourceinit in class AbstractResourceResourceInstantiationException
public void reInit()
throws ResourceInstantiationException
ProcessingResource
reInit in interface ProcessingResourceResourceInstantiationExceptionpublic void cleanup()
cleanup in interface Resourcecleanup in class AbstractResourcepublic void setPRs(Collection PRs)
ProcessingResources
(optional operation).
Controllers that are serializable must implement this method needed by GATE
to restore their contents.
setPRs in interface ControllerUnsupportedOperationException - if the setPRs method is not supported by this
controller.public void interrupt()
interrupt in interface Executablepublic boolean isInterrupted()
ExecutableExecutable.interrupt() method since the last time its Executable.execute() method
was called
isInterrupted in interface Executablepublic void removeStatusListener(StatusListener l)
StatusListener from the list of listeners for
this processing resource
public void addStatusListener(StatusListener l)
StatusListener to the list of listeners for this
processing resource
protected void fireStatusChanged(String e)
StatusListeners of a change of status.
e - the message describing the status changepublic void addProgressListener(ProgressListener l)
ProgressListener to the list of listeners for
this processing resource.
public void removeProgressListener(ProgressListener l)
ProgressListener from the list of listeners
for this processing resource.
protected void fireProgressChanged(int e)
ProgressListeners of a progress change
event.
e - the new value of execution completionprotected void fireProcessFinished()
ProgressListeners of a progress
finished.
public List getOffendingPocessingResources()
throws ResourceInstantiationException
List of ProcessingResources that have required
parameters with null values if they exist null
otherwise.
{@link - ResourceInstantiationException}
if problems occur while inspecting the parameters for one of the
resources. These will normally be introspection problems and are
usually caused by the lack of a parameter or of the read accessor
for a parameter.
ResourceInstantiationExceptionpublic void setName(String name)
setName in interface NameBearersetName in class AbstractResourcepublic String getName()
getName in interface NameBearergetName in class AbstractResourcepublic void removeControllerListener(ControllerListener l)
public void addControllerListener(ControllerListener l)
protected void fireResourceAdded(ControllerEvent e)
protected void fireResourceRemoved(ControllerEvent e)
public void setBenchmarkId(String benchmarkID)
setBenchmarkId in interface BenchmarkablebenchmarkID - the benchmark ID, which must not contain spaces
as it is already used as a separator in the log, you can use
Benchmark.createBenchmarkId(String, String) for it.public String getBenchmarkId()
getBenchmarkId in interface Benchmarkable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||