Package org.epics.archiverappliance.data
Interface FieldValues
-
- All Known Subinterfaces:
DBRTimeEvent
- All Known Implementing Classes:
CSVEvent
,HashMapEvent
,PBScalarByte
,PBScalarDouble
,PBScalarEnum
,PBScalarFloat
,PBScalarInt
,PBScalarShort
,PBScalarString
,PBV4GenericBytes
,PBVectorByte
,PBVectorDouble
,PBVectorEnum
,PBVectorFloat
,PBVectorInt
,PBVectorShort
,PBVectorString
,POJOEvent
,SimulationEvent
public interface FieldValues
EPICS PVs have additional fields like HIHI, LOLO etc that occasionally change. We stick these changes into the event stream as part of the event. This interface caters to that; however, everything is cast as a string. For performance reasons, occasionally the engine sticks in a complete copy of the field values as they are at that point in time into the event. There is a boolean to distinguish between these fieldvalues and those that represent actual changes.- Author:
- mshankar
-
-
Method Summary
Modifier and Type Method Description void
addFieldValue(String fieldName, String fieldValue)
HashMap<String,String>
getFields()
Get the fields as a HashMap.String
getFieldValue(String fieldName)
boolean
hasFieldValues()
Not all events have field values.boolean
isActualChange()
Do the field values in this event represent an actual change?void
markAsActualChange()
Mark this event as containing actual changes to field values.void
setFieldValues(HashMap<String,String> fieldValues, boolean markAsActualChange)
-
-
-
Method Detail
-
hasFieldValues
boolean hasFieldValues()
Not all events have field values. Does this event have any field values?- Returns:
- true or false
-
isActualChange
boolean isActualChange()
Do the field values in this event represent an actual change?- Returns:
- true or false
-
getFields
HashMap<String,String> getFields()
Get the fields as a HashMap. If we have more than one entry with the same key, one of the entries is returned.- Returns:
- The fields as a HashMap
-
getFieldValue
String getFieldValue(String fieldName)
- Parameters:
fieldName
- the field name- Returns:
- The field value as a string
-
markAsActualChange
void markAsActualChange()
Mark this event as containing actual changes to field values.
-
addFieldValue
void addFieldValue(String fieldName, String fieldValue)
- Parameters:
fieldName
- the field namefieldValue
- the field value
-
-