The Template that describes this Record.
Gets the value within the record for the given field by field position within the Template.
Gets the value within the record for the given field by field position within the Template.
The index of the field whose value to return.
The value for the referenced field.
if the index is out of range
(idx < 0 || idx >= template.size())
Modifies the current record so that it carries as little data as necessary to exist by itself.
Modifies the current record so that it carries as little data as
necessary to exist by itself. More specifically, it detaches
itself from as much of its parent Message's data as
possible. If non-complete subsets of Records are going
to be kept in memory, they should be detached so they don't
carry the memory of any discarded Records by association
to their parent Messages.
the record itself (not a new record)
Gets the export time of the Message that generated this record as an Option.
Gets the export time of the Message that generated this record as an Option.
The export time of the Message or None if the record represents a list element or was not read from a Message.
Returns the Message object from which the Record was read as an Option or scala.None if the Record was not read from a Message.
Returns the observation domain of the Message that generated this record as an Option or None if the record represents a list element or was not read from a Message.
Gets the number of octets required to write the record to a stream.
Gets a Set containing the InfoElement used by any basic list on the
record and by the record's ListElements.
Gets a Set containing the Template used by the record and the
Templates used by any ListElements in the
record.
Gets the value within the record for the given field by finding the field matching an InfoElement within the Template.
Gets the value within the record for the given field by finding the field matching an InfoElement within the Template.
The InfoElement to find with the record's Template in order to get its position.
The value for the referenced field.
1.3.1
java.lang.IndexOutOfBoundsException if the Template does not
contain the InfoElement.
Gets the value within the record for the given field by finding the field matching a FieldSpec within the Template.
Gets the value within the record for the given field by finding the field matching a FieldSpec within the Template.
The field to find with the record's Template in order to get its position.
The value for the referenced field.
1.3.1
java.lang.IndexOutOfBoundsException if the Template does not
contain the FieldSpec.
Gets the value within the record for the field referenced by the extractor as an Option.
Gets the value within the record for the field referenced by the extractor as an Option.
The result type of the extractor.
A field extractor.
The value for the referenced field, or scala.None if the extractor does not match a field in this record.
Returns an Iterator where iteration yields a Field.
Fills the fields of obj that are marked with the
IPFIXExtract annotation from this record.
Fills the fields of obj that are marked with the
IPFIXExtract annotation from this record.
the object to fill
IPFIXExtract
Gets the number of fields in the record.
The Template that describes this Record.
Appends this Record to a buffer for writing to an IPFIX stream.
Appends this Record to a buffer for writing to an IPFIX stream.
The function uses the template IDs in session if the Record
contains SubTemplateLists or a SubTemplateMultiList. Assumes
the Template(s) used by the Record have already
been added to the Session and appeneded to the buffer.
A Record instance represents an IPFIX data record. Each record contains a set of values which are described by the record's Template.
Each IPFIX data type can be mapped to its Java data type as in the table below:
octetArray⟶ Seq[Byte]1unsigned8⟶Intunsigned16⟶Intunsigned32⟶Longunsigned64⟶Long2signed8⟶Intsigned16⟶Intsigned32⟶Intsigned64⟶Longfloat32⟶Floatfloat64⟶Doubleboolean⟶BooleanmacAddress⟶Seq[Byte]1,3string⟶StringdateTimeSeconds⟶InstantdateTimeMilliseconds⟶InstantdateTimeMicroseconds⟶InstantdateTimeNanoseconds⟶Instantipv4Address⟶IPv4Addressipv6Address⟶IPv6AddressbasicList⟶BasicListsubTemplateList⟶SubTemplateListsubTemplateMultiList⟶SubTemplateMultiList1 The
Seq[Byte]returned foroctetArrayormacAddressis a read-only view on the underlying record data. If you want to save the data without keeping the full record data from being garbage collected, you should copy theSeq.2
Longis signed, so anunsigned64with its high bit set will appear as negative.3 The
Seq[Byte]returned for amacAddresswill always be of length 6.A record's fields are described by a Template, which may be retrieved from the record using the #template value. Using the data from the template, the user can cast the record's objects to the appropriate Java type.
Alternatively, a record's values can be retrieved in a typed manner using either a FieldExtractor, or a Fillable object. A FieldExtractor acts as a reference to a particular field in a record regardless of the current template of the record. A Fillable object is an object which contains fields that have been marked with the IPFIXExtract annotation. A record's fill() method can be used to "fill in" the object's fields from the record.
Template
Fillable
FieldExtractor