Class ArrayDumpApplication

java.lang.Object
org.scictrl.csshell.epics.server.application.AbstractApplication
org.scictrl.csshell.epics.server.application.ArrayDumpApplication
All Implemented Interfaces:
org.scictrl.csshell.epics.server.Application, org.scictrl.csshell.epics.server.processor.OnDemandValueProcessor.ValueProvider

public class ArrayDumpApplication extends org.scictrl.csshell.epics.server.application.AbstractApplication

ArrayDumpApplication monitors input PV array record, and dumps array values into file, if any value in array exceeds threshold value, configurable by PV.

Files are stored into directory provided with dataDir XML parameter and file names have prefix 'ArrayDump-'. When dataDir contains more generated files than maxFiles parameter specifies, oldest files are deleted until file number falls below max files limit.

Supported XML parameters

  • input - PV name for input record, must be array record. Required.
  • treshold - threshold value, above which array is dumped to file. Default is 1.0
  • maxFiles - maximal number generated filed, old files are removed if exceeded.
  • dataDir - location of generated files.

Application provides PVs with following suffixes:

  • Peak - peak value of last received array.
  • Treshold - threshold value for array, array is dumped to file if exceeded.
  • PV - String with PV name of input record.
  • Dir - Directory to which array dump files are saved.
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
    Constructor
    Description
    Constructor for ArrayDumpApplication.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    configure(String name, org.apache.commons.configuration.HierarchicalConfiguration config)
    protected void
    protected void
    notifyRecordChange(String name, boolean alarmOnly)

    Methods inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication

    activate, addRecord, addRecordOfCommandProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfOnDemandProcessor, addRecordOfOnLinkValueProcessor, configure, connectLinks, createNewStore, 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • ArrayDumpApplication

      public ArrayDumpApplication()

      Constructor for ArrayDumpApplication.

  • Method Details

    • configure

      public void configure(String name, org.apache.commons.configuration.HierarchicalConfiguration config)
      Specified by:
      configure in interface org.scictrl.csshell.epics.server.Application
      Overrides:
      configure in class org.scictrl.csshell.epics.server.application.AbstractApplication
    • notifyRecordChange

      protected void notifyRecordChange(String name, boolean alarmOnly)
      Overrides:
      notifyRecordChange in class org.scictrl.csshell.epics.server.application.AbstractApplication
    • notifyLinkChange

      protected void notifyLinkChange(String name)
      Overrides:
      notifyLinkChange in class org.scictrl.csshell.epics.server.application.AbstractApplication