Class EpicsChannelMetadataService
java.lang.Object
ch.psi.wica.controlsystem.epics.metadata.EpicsChannelMetadataService
A service which establishes EPICS CA monitors on user-specified channels of
interest, subsequently publishing the information from each monitor update
to interested consumers within the application.
-
Constructor Summary
ConstructorsConstructorDescriptionEpicsChannelMetadataService
(EpicsChannelMetadataPublisher epicsChannelMetadataPublisher) Constructs a new instance. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the service.Returns the statistics associated with this service.void
startDataAcquisition
(EpicsChannelMetadataRequest requestObject) Starts acquiring metadata for the EPICS control system channel specified by the supplied request object.void
stopDataAcquisition
(EpicsChannelMetadataRequest requestObject) Stops acquiring metadata for the EPICS control system channel specified by the supplied request object.
-
Constructor Details
-
EpicsChannelMetadataService
public EpicsChannelMetadataService(@Autowired EpicsChannelMetadataPublisher epicsChannelMetadataPublisher) Constructs a new instance.- Parameters:
epicsChannelMetadataPublisher
- an object which can be used to get the channel metadata.
-
-
Method Details
-
getStatistics
Returns the statistics associated with this service.- Returns:
- the statistics.
-
startDataAcquisition
Starts acquiring metadata for the EPICS control system channel specified by the supplied request object.The EPICS channel may or may not be online when this method is invoked. The connection-state-change event will be published when the connection to the remote IOC is eventually established. Subsequently, the value-change event will be published to provide the latest value of the channel.
- Parameters:
requestObject
- the request specification object.- Throws:
NullPointerException
- if the 'requestObject' argument was null.IllegalStateException
- if this service was previously closed.IllegalStateException
- if the 'requestObject' was already active.
-
stopDataAcquisition
Stops acquiring metadata for the EPICS control system channel specified by the supplied request object.- Parameters:
requestObject
- the request specification object.- Throws:
NullPointerException
- if the 'requestObject' argument was null.IllegalStateException
- if this service was previously closed.IllegalStateException
- if the 'requestObject' was not recognised.
-
close
public void close()Closes the service.
-