Class DeviceGroupApplication
java.lang.Object
org.scictrl.csshell.epics.server.application.AbstractApplication
org.scictrl.csshell.epics.server.application.devicegroup.DeviceGroupApplication
- All Implemented Interfaces:
Application,OnDemandValueProcessor.ValueProvider
DeviceGroupApplication class.
- Author:
- igor@scictrl.com
-
Field Summary
Fields inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication
database, DEFAULT_NAME_DELIMITER, dynamicRecordCreator, ERROR_SUM, LINK_ERROR, LINK_ERROR_STRING, links, log, name, NAME_DELIMITER, nameDelimiter, records -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidactivate()Application has now reference to Database.voidConfigures the internals of this application, provides reference to configuration with root inside applications tag.protected org.apache.commons.configuration.PropertiesConfigurationCreates new store configuration object with file APP/APP.properties in configuration folder location.protected voidnotifyLinkChange(String name) This method is called whenever record value changed for any record, which belongs to this application (it was added to the applicationAbstractApplication.addRecord(String, Record)).protected voidnotifyRecordChange(String name, boolean alarmOnly) This method is called whenever record value changed for any record, which belongs to this application (it was added to the applicationAbstractApplication.addRecord(String, Record)).Methods inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication
addRecord, addRecordOfCommandProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfOnDemandProcessor, addRecordOfOnLinkValueProcessor, configure, connectLinks, fullRecordName, getLinks, getName, getNameDelimiter, getNotNull, getRecord, getRecordErrorSum, getRecordLinkError, getRecordNames, getRecords, getStore, getStore, getValue, initialize, isActivated, isDynamicRecordCreator, log4debug, log4error, log4error, log4info, notifyRecordWrite, processLinkChange, pushDoneCommandProcessor, reconnectLinks, resetOnDemandProcessor, restore, store, toString, updateErrorSum, updateErrorSum, updateLinkError, updateLinkError
-
Constructor Details
-
DeviceGroupApplication
public DeviceGroupApplication()Constructor for DeviceGroupApplication.
-
-
Method Details
-
createNewStore
protected org.apache.commons.configuration.PropertiesConfiguration createNewStore()Creates new store configuration object with file APP/APP.properties in configuration folder location. Override this method to provide different file name as storage. NEw store is created by call toAbstractApplication.getStore(String, String).- Overrides:
createNewStorein classAbstractApplication- Returns:
- new properties store
-
configure
public void configure(String name, org.apache.commons.configuration.HierarchicalConfiguration config) Configures the internals of this application, provides reference to configuration with root inside applications tag. Server structure is not yet initialized, so does not have reference to Database, the Database reference will be available during activate call.- Specified by:
configurein interfaceApplication- Overrides:
configurein classAbstractApplication- Parameters:
name- aStringobjectconfig- configuration with room inside application tag.
-
notifyLinkChange
This method is called whenever record value changed for any record, which belongs to this application (it was added to the applicationAbstractApplication.addRecord(String, Record)). Implementation class should override this method to intercept the update.- Overrides:
notifyLinkChangein classAbstractApplication- Parameters:
name- the name of record, that triggered change.
-
notifyRecordChange
This method is called whenever record value changed for any record, which belongs to this application (it was added to the applicationAbstractApplication.addRecord(String, Record)). Implementation class should override this method to intercept the update.- Overrides:
notifyRecordChangein classAbstractApplication- Parameters:
name- the name of record, that triggered change.alarmOnly- iftruethen only alarm has been changed
-
activate
public void activate()Application has now reference to Database. Application might want to connect to other records on this server or PVs on other servers. This can not be done until all records from configuration has been loaded. Call to this method signals application that records has been loaded and linking to other values can be commenced.- Specified by:
activatein interfaceApplication- Overrides:
activatein classAbstractApplication
-