Class BasicScanclassHistorySet
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- java.util.ArrayList<HistoricalTagValue>
-
- com.inductiveautomation.ignition.gateway.sqltags.model.BasicScanclassHistorySet
-
- All Implemented Interfaces:
GroupableData
,HistoricalData
,HistoricalDataList
,RetryHistoricalData
,ScanclassHistorySet
,java.io.Serializable
,java.lang.Cloneable
,java.lang.Iterable<HistoricalTagValue>
,java.util.Collection<HistoricalTagValue>
,java.util.List<HistoricalTagValue>
,java.util.RandomAccess
public class BasicScanclassHistorySet extends java.util.ArrayList<HistoricalTagValue> implements ScanclassHistorySet, GroupableData
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description BasicScanclassHistorySet(java.lang.String providerName, java.lang.String scName, int execRate)
BasicScanclassHistorySet(java.lang.String gatewayName, java.lang.String providerName, java.lang.String scName, int execRate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(HistoricalTagValue e)
protected void
addToCache(HistoricalTagValue htv)
HistoricalData
badData()
boolean
contains(java.lang.Object o)
java.lang.Exception
failureReason()
int
getDataCount()
This is a fairly ambiguous number, but basically indicates how many rows will ultimately be inserted in the database.int
getExecRate()
The rate that the scan class is executing at.java.util.Date
getExecutionTime()
HistoryFlavor
getFlavor()
The very broad "flavor" designator, used to get the data to the correct sink.java.lang.String
getGatewayName()
Returns the name of the source gateway.java.lang.String
getGroupId()
A string identifing the "group" of the data.java.lang.String
getLoggerName()
Returns the name of the logger that should be notified when something happens to this data.java.lang.String
getProviderName()
Returns the name of the tag provider that generated this set.java.lang.String
getSetName()
The name of the scan classjava.lang.String
getSignature()
The signature is a static string that describes this data as uniquely as possible.GroupableData
groupData(GroupableData other)
Merge another piece of similar data into this one.boolean
isRetry()
void
markAsBad(HistoricalTagValue value)
void
setExecutionTime(java.util.Date execTime)
void
setFailureReason(java.lang.Exception failureReason)
void
setRetry(boolean isRetry)
java.lang.String
toString()
boolean
usingBadData()
void
usingBadData(boolean usingBadData)
-
Methods inherited from class java.util.ArrayList
add, addAll, addAll, clear, clone, ensureCapacity, equals, forEach, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeIf, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
-
-
-
-
Constructor Detail
-
BasicScanclassHistorySet
public BasicScanclassHistorySet(java.lang.String providerName, java.lang.String scName, int execRate)
-
BasicScanclassHistorySet
public BasicScanclassHistorySet(java.lang.String gatewayName, java.lang.String providerName, java.lang.String scName, int execRate)
-
-
Method Detail
-
getLoggerName
public java.lang.String getLoggerName()
Description copied from interface:HistoricalData
Returns the name of the logger that should be notified when something happens to this data. If null or empty, notifications won't occur (errors, however, may still be logged to the general logger).- Specified by:
getLoggerName
in interfaceHistoricalData
-
getFlavor
public HistoryFlavor getFlavor()
Description copied from interface:HistoricalData
The very broad "flavor" designator, used to get the data to the correct sink. That is, different sinks support different types of data, and this is used to match them up.- Specified by:
getFlavor
in interfaceHistoricalData
-
getSignature
public java.lang.String getSignature()
Description copied from interface:HistoricalData
The signature is a static string that describes this data as uniquely as possible. This will be used to group data in the data cache (for example, when displaying quarantined data), as well as uniquely identifying cacheable schemas, etc.Basically, the golden rule is that if two pieces of data have the same signature, the came from the same place, and are going to the same place, and in theory could be grouped together (note: they won't be, that is done with the
GroupableData
interface).- Specified by:
getSignature
in interfaceHistoricalData
-
getDataCount
public int getDataCount()
Description copied from interface:HistoricalData
This is a fairly ambiguous number, but basically indicates how many rows will ultimately be inserted in the database. Used for judging transaction size.- Specified by:
getDataCount
in interfaceHistoricalData
-
getExecRate
public int getExecRate()
Description copied from interface:ScanclassHistorySet
The rate that the scan class is executing at. Returns 0 to indicate a non-direct scan class (one that doesn't execute regularly)- Specified by:
getExecRate
in interfaceScanclassHistorySet
-
getExecutionTime
public java.util.Date getExecutionTime()
- Specified by:
getExecutionTime
in interfaceScanclassHistorySet
-
setExecutionTime
public void setExecutionTime(java.util.Date execTime)
-
getSetName
public java.lang.String getSetName()
Description copied from interface:ScanclassHistorySet
The name of the scan class- Specified by:
getSetName
in interfaceScanclassHistorySet
-
getProviderName
public java.lang.String getProviderName()
Description copied from interface:ScanclassHistorySet
Returns the name of the tag provider that generated this set.- Specified by:
getProviderName
in interfaceScanclassHistorySet
-
getGatewayName
public java.lang.String getGatewayName()
Description copied from interface:ScanclassHistorySet
Returns the name of the source gateway. If null, it is the local gateway.- Specified by:
getGatewayName
in interfaceScanclassHistorySet
-
markAsBad
public void markAsBad(HistoricalTagValue value)
- Specified by:
markAsBad
in interfaceRetryHistoricalData
- Parameters:
value
-HistoricalTagValue
that store wasn't able to process
-
badData
@Nullable public HistoricalData badData()
- Specified by:
badData
in interfaceRetryHistoricalData
- Returns:
- Copy of the
HistoricalData
containing only data that was marked as bad or null if no data is added
-
usingBadData
public void usingBadData(boolean usingBadData)
- Specified by:
usingBadData
in interfaceRetryHistoricalData
- Parameters:
usingBadData
- true if usingRetryHistoricalData.markAsBad(HistoricalTagValue)
, instead of throwing exceptions
-
usingBadData
public boolean usingBadData()
- Specified by:
usingBadData
in interfaceRetryHistoricalData
- Returns:
- true if store is using
RetryHistoricalData.markAsBad(HistoricalTagValue)
to keep track of bad data instead of throwing an exception
-
setRetry
public void setRetry(boolean isRetry)
- Specified by:
setRetry
in interfaceRetryHistoricalData
- Parameters:
isRetry
- true when an attempt to process data has failed at least once
-
isRetry
public boolean isRetry()
- Specified by:
isRetry
in interfaceRetryHistoricalData
- Returns:
- true when an attempt to process this data has failed at least once
-
setFailureReason
public void setFailureReason(@Nullable java.lang.Exception failureReason)
- Specified by:
setFailureReason
in interfaceRetryHistoricalData
-
failureReason
public java.lang.Exception failureReason()
- Specified by:
failureReason
in interfaceRetryHistoricalData
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.util.AbstractCollection<HistoricalTagValue>
-
add
public boolean add(HistoricalTagValue e)
- Specified by:
add
in interfacejava.util.Collection<HistoricalTagValue>
- Specified by:
add
in interfacejava.util.List<HistoricalTagValue>
- Overrides:
add
in classjava.util.ArrayList<HistoricalTagValue>
-
addToCache
protected void addToCache(HistoricalTagValue htv)
-
contains
public boolean contains(java.lang.Object o)
- Specified by:
contains
in interfacejava.util.Collection<HistoricalTagValue>
- Specified by:
contains
in interfacejava.util.List<HistoricalTagValue>
- Overrides:
contains
in classjava.util.ArrayList<HistoricalTagValue>
-
getGroupId
public java.lang.String getGroupId()
Description copied from interface:GroupableData
A string identifing the "group" of the data. In other words, any piece of data from this group can be merged together.- Specified by:
getGroupId
in interfaceGroupableData
-
groupData
public GroupableData groupData(GroupableData other)
Description copied from interface:GroupableData
Merge another piece of similar data into this one.- Specified by:
groupData
in interfaceGroupableData
-
-