Constructor
new StreamAggregateDatum(streamId, ts, iPropsopt, aPropsopt, sPropsopt, tagsopt)
Constructor.
Name | Type | Attributes | Description |
---|---|---|---|
streamId | string | the datum stream ID | |
ts | Array.<(Date|number|string)> | an array with 2 elements for the datum start and end timestamps, either as a | |
iProps | Array.<Array.<number>> | <optional> | the instantaneous property values and associated statistics |
aProps | Array.<Array.<number>> | <optional> | the accumulating property values and associated statistics |
sProps | Array.<String> | <optional> | the status property values |
tags | Set.<String> | | <optional> | the tag values |
Methods
toJsonEncoding(registryopt) → {string}
Get this object as a standard JSON encoded string value.
This method returns the JSON form of the result of StreamAggregateDatum#toJsonObject().
Name | Type | Attributes | Description |
---|---|---|---|
registry | module:util~DatumStreamMetadataRegistry | <optional> | a stream metadata registry to encode as a registry-indexed stream datum |
the JSON encoded string
- Type:
- string
toJsonObject(registryopt) → {Array}
Get this object as an array suitable for encoding into a standard stream datum JSON string.
This method can encode the datum into an array using one of two ways, depending on whether the registry
argument is provided. When provided, the first array element will be the stream metadata index based on calling DatumStreamMetadataRegistry#indexOfMetadataStreamId(). Otherwise the first array element will be the stream ID itself.
For example if a registry is used, the resulting array might look like this:
[0,[1650945600000,1651032000000],[3.6,2,0,7.2],[19.1,2,18.1, 20.1],[1.422802,1138.446687,1139.869489]]
while without a registry the array might look like this:
["7714f762-2361-4ec2-98ab-7e96807b32a6", [1650945600000,1651032000000],[3.6,2,0,7.2],[19.1,2,18.1, 20.1],[1.422802,1138.446687,1139.869489]]
Name | Type | Attributes | Description |
---|---|---|---|
registry | module:util~DatumStreamMetadataRegistry | <optional> | a stream metadata registry to encode as a registry-indexed stream datum |
the datum stream array object
- Type:
- Array
toObject(meta, withoutStatisticsopt) → {Object}
Get this instance as a simple object.
The following basic properties will be set on the returned object:
streamId
- the stream IDdate
- the timestampdate_end
- the ending timestamp, if availablesourceId
- the metadata source IDnodeId
orlocationId
- either the node ID or location ID from the metadatatags
- any tags (as an Array)
Beyond that, all instantaneous, accumulating, and status properties will be included. If duplicate property names exist between the different classifications, the first-available value will be used. Any available statistics for each property are included as well, using property names with the following suffixes:
_count
- count of datum_min
- minimum value_max
- maximum value_start
- starting value_end
- ending value
Name | Type | Attributes | Description |
---|---|---|---|
meta | module:domain~DatumStreamMetadata | a metadata instance to encode the property names with | |
withoutStatistics | boolean | <optional> |
|
an object populated with all available properties
- Type:
- Object
(static) fromJsonEncoding(json, meta) → {module:domain~StreamAggregateDatum}
Parse a JSON string into a StreamAggregateDatum instance.
The JSON must be encoded the same way StreamAggregateDatum#toJsonEncoding() does.
Name | Type | Description |
---|---|---|
json | string | the JSON to parse |
meta | module:domain~DatumStreamMetadata | | a metadata instance or metadata registry to decode with |
the stream datum instance
(static) fromJsonObject(data, meta) → {module:domain~StreamAggregateDatum}
Create a new StreamAggregateDatum instance from an array parsed from a stream datum JSON string.
The array must have been parsed from JSON that was encoded the same way StreamAggregateDatum#toJsonEncoding() does.
Name | Type | Description |
---|---|---|
data | Array | the array parsed from JSON |
meta | module:domain~DatumStreamMetadata | | a metadata instance or metadata registry to decode with |
the stream datum instance