trait DataType extends AnyRef
The DataType trait defines members that must exist on classes that provide an implementation of each possible DataTypes value, where those values represent an IPFIX Information Element Data Types as defined in RFC5102.
- Alphabetic
- By Inheritance
- DataType
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def checkType(obj: Any): Boolean
Returns
true
whenobj
is the correct type for the DataType. - abstract val defaultLength: Int
The default length of the DataType.
- abstract def getValue(buffer: ByteBuffer, session: Session, ie: InfoElement): Any
Converts the bytes in the ByteBuffer which represent the specified InfoElement to an object.
Converts the bytes in the ByteBuffer which represent the specified InfoElement to an object.
session
is wherebuffer
was collected, and it is used to resolve the contents of ListElements. - abstract val id: DataTypes
A reference to the DataTypes value that this class implements.
- abstract val maximumValue: Option[Long]
An optional maximum value for the DataType.
- abstract val minimumValue: Option[Long]
An optional minimum value for the DataType.
- abstract val name: String
The name of the DataType.
- abstract def octetLength(obj: Any, len: Int): Int
Returns the number of bytes that toBuffer() would write to the buffer, where
len
is the length of the InfoElement according to the record's Template (that is, thelength
member of the IEFieldSpecifier).Returns the number of bytes that toBuffer() would write to the buffer, where
len
is the length of the InfoElement according to the record's Template (that is, thelength
member of the IEFieldSpecifier). Returns VARLEN whenobj
is not of the correct type for the DataType. This method is useful primarily for determining the length of variable length data types. - abstract def toBuffer(buffer: ByteBuffer, session: Session, len: Int, obj: Any): ByteBuffer
Converts the object into a stream of bytes and appends the bytes to the ByteBuffer, where
len
is the length of the InfoElement according to the record's Template (that is, thelength
member of the IEFieldSpecifier).Converts the object into a stream of bytes and appends the bytes to the ByteBuffer, where
len
is the length of the InfoElement according to the record's Template (that is, thelength
member of the IEFieldSpecifier). When the object is a SubTemplateList or SubTemplateMultiList,session
is used to find the Template given a Template ID.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
This is documentation for Mothra, a collection of Scala and Spark library functions for working with Internet-related data. Some modules contain APIs of general use to Scala programmers. Some modules make those tools more useful on Spark data-processing systems.
Please see the documentation for the individual packages for more details on their use.
Scala Packages
These packages are useful in Scala code without involving Spark:
org.cert.netsa.data
This package, which is collected as the
netsa-data
library, provides types for working with various kinds of information:org.cert.netsa.data.net
- types for working with network dataorg.cert.netsa.data.time
- types for working with time dataorg.cert.netsa.data.unsigned
- types for working with unsigned integral valuesorg.cert.netsa.io.ipfix
The
netsa-io-ipfix
library provides tools for reading and writing IETF IPFIX data from various connections and files.org.cert.netsa.io.silk
To read and write CERT NetSA SiLK file formats and configuration files, use the
netsa-io-silk
library.org.cert.netsa.util
The "junk drawer" of
netsa-util
so far provides only two features: First, a method for equipping Scala scala.collection.Iterators with exception handling. And second, a way to query the versions of NetSA libraries present in a JVM at runtime.Spark Packages
These packages require the use of Apache Spark:
org.cert.netsa.mothra.datasources
Spark datasources for CERT file types. This package contains utility features which add methods to Apache Spark DataFrameReader objects, allowing IPFIX and SiLK flows to be opened using simple
spark.read...
calls.The
mothra-datasources
library contains both IPFIX and SiLK functionality, whilemothra-datasources-ipfix
andmothra-datasources-silk
contain only what's needed for the named datasource.org.cert.netsa.mothra.analysis
A grab-bag of analysis helper functions and example analyses.
org.cert.netsa.mothra.functions
This single Scala object provides Spark SQL functions for working with network data. It is the entirety of the
mothra-functions
library.