Class AsyncSerializableDataset
java.lang.Object
de.bsvrz.ars.ars.persistence.writer.AsyncSerializableDataset
- All Implemented Interfaces:
SerializableDataset
Eine Implementierung von
SerializableDataset, die asynchron von einem
SerializeTask komplettiert wird-
Constructor Summary
ConstructorsConstructorDescriptionAsyncSerializableDataset(long archiveTime, long dataTime, long dataIndex, byte dataStateCode, de.bsvrz.dav.daf.main.Data originalData) Erstellt einen neuen AsyncSerializableDataset. -
Method Summary
Modifier and TypeMethodDescriptionlongBestimmt den Archivzeitstempel des Datensatzes.voidcomplete(byte[] data, int uncompressedSize) Wird asynchron aufgerufen, um den serialisierten Datensatz zu übergebenlongBestimmt den je Datenidentifikation eindeutigen vom Datenverteiler vergebenen Datensatzindex dieses Datensatzes.de.bsvrz.dav.daf.main.DataStateBestimmt den Datensatztyp des Datensatzes.longdataTime()Bestimmt den Datenzeitstempel des Datensatzes.longSchätz den Speicherverbrauch dieses ObjektsbooleanhasData()Gibt zurück, ob Nutzdaten vorhanden sind.de.bsvrz.dav.daf.main.DataGibt den ursprünglichen empfangenen Dateninhalt zurück.byte[]Gibt ein den serialisierten Data-Inhalt zurück.toString()intGibt die Größe des originalen, unkomprimierten Daten-Arrays zurück.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface de.bsvrz.ars.ars.persistence.writer.SerializableDataset
asResultData
-
Constructor Details
-
AsyncSerializableDataset
public AsyncSerializableDataset(long archiveTime, long dataTime, long dataIndex, byte dataStateCode, de.bsvrz.dav.daf.main.Data originalData) Erstellt einen neuen AsyncSerializableDataset.- Parameters:
archiveTime- ArchivzeitdataTime- DatenzeitdataIndex- DatenindexdataStateCode- Code für den DataState (sieheDataState.getCode())originalData- Ursprünglicher Datenverteiler-Datensatz mit Nutzdaten
-
-
Method Details
-
archiveTime
public long archiveTime()Bestimmt den Archivzeitstempel des Datensatzes.- Specified by:
archiveTimein interfaceSerializableDataset- Returns:
- Archivzeitstempel in Millisekunden seit 1970
-
dataTime
public long dataTime()Bestimmt den Datenzeitstempel des Datensatzes.- Specified by:
dataTimein interfaceSerializableDataset- Returns:
- Datenzeitstempel in Millisekunden seit 1970
-
dataIndex
public long dataIndex()Bestimmt den je Datenidentifikation eindeutigen vom Datenverteiler vergebenen Datensatzindex dieses Datensatzes.- Specified by:
dataIndexin interfaceSerializableDataset- Returns:
- Datensatzindex
-
dataState
@NotNull public de.bsvrz.dav.daf.main.DataState dataState()Bestimmt den Datensatztyp des Datensatzes.- Specified by:
dataStatein interfaceSerializableDataset- Returns:
- Datensatztyp
-
complete
public void complete(byte[] data, int uncompressedSize) Wird asynchron aufgerufen, um den serialisierten Datensatz zu übergeben- Parameters:
data- DatensatzuncompressedSize- Originale Datengröße falls die Daten komprimiert sind, sonst 0
-
serializedData
@NotNull public byte[] serializedData()Description copied from interface:SerializableDatasetGibt ein den serialisierten Data-Inhalt zurück. Die Daten sind evtl. komprimiert (sieheSerializableDataset.uncompressedSize()). Datenlücken werden als 6-Byte Folge wieContainerFile.NO_SOURCEusw. zurückgegeben. Dieses Byte-Array enthält noch nicht den Header mit Zeitstempeln usw., wie er in die Containerdatei geschrieben wird. Dieser kann mitArchiveDataSerializer.serializeData(SerializableDataset)erzeugt werden.- Specified by:
serializedDatain interfaceSerializableDataset- Returns:
- serialisierte und ggf. komprimierte Daten
-
estimateMemoryUsage
public long estimateMemoryUsage()Description copied from interface:SerializableDatasetSchätz den Speicherverbrauch dieses Objekts- Specified by:
estimateMemoryUsagein interfaceSerializableDataset- Returns:
- Speicherverbrauch in Bytes
-
hasData
public boolean hasData()Description copied from interface:SerializableDatasetGibt zurück, ob Nutzdaten vorhanden sind. Dies ist der Fall, wennSerializableDataset.dataState()den WertDataState.DATAzurückliefert.- Specified by:
hasDatain interfaceSerializableDataset- Returns:
- Sind Nutzdaten vorhanden?
-
originalData
public de.bsvrz.dav.daf.main.Data originalData()Description copied from interface:SerializableDatasetGibt den ursprünglichen empfangenen Dateninhalt zurück. Der Wert kann null sein und ist nur vorhanden, wenn die Daten vorher vom Datenverteiler empfangen wurden. Dies wird nur für die Quittierung benötigt.- Specified by:
originalDatain interfaceSerializableDataset- Returns:
- Originaler Datensatz
-
uncompressedSize
public int uncompressedSize()Description copied from interface:SerializableDatasetGibt die Größe des originalen, unkomprimierten Daten-Arrays zurück. Enthält 0 (=ContainerFile.NOT_COMPRESSED) falls die Daten unkomprimiert sind, dann zählt die Größe des serializedData-Bytearrays.- Specified by:
uncompressedSizein interfaceSerializableDataset- Returns:
- die Größe des unkomprimierten Daten-Arrays
-
toString
-