final class InfoModel extends Serializable with LazyLogging
The InfoModel class represents the IPFIX Information Model.
The Information Model contains Information Elmenets.
To use the standard IPFIX Information Model, the caller invokes
the getStandardInfoModel()
method on the companion
object. If necessary, that function reads the standard model
from an XML file. The caller is given an empty model that
inherits from the standard model. This allows the caller to
manipulate the information model without invalidating the standard
model or disrupting other threads.
- See also
The companion object for more details.
- Alphabetic
- By Inheritance
- InfoModel
- LazyLogging
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
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
- def add(ie: InfoElement): Unit
Adds the information element
ie
and the corresponding reverse element if there is a known function to do that mapping. - def addReverseMapper(pen: Long): Option[MakeReversibleElement]
Registers an object that creates a reverse InfoElement by masking the elementId of the element's Identifier by 0x4000 and prepending "reverse" to the element's name when the enterpriseId of the element is
pen
. - def addReverseMapper(pen: Long, bits: Int): Option[MakeReversibleElement]
Registers an object that creates a reverse InfoElement by masking the elementId of the element's Identifier by
bits
and prepending "reverse" to the element's name when the enterpriseId of the element ispen
. - def addReverseMapper(pen: Long, mre: MakeReversibleElement): Option[MakeReversibleElement]
Registers the class or object
mre
as being the one to use when attempting to find the corresponding reverse InfoElement for anInfoElement
whose enterpriseId ispen
. - def apply(name: String): InfoElement
Gets the information element from the model that has the specified
name
.Gets the information element from the model that has the specified
name
.- name
Name of the element to retrieve
- Since
1.3.1
- Exceptions thrown
InvalidInfoElementException
if an InfoElement is not found
- def apply(id: Identifier): InfoElement
Gets the information element from the model that has the specified Identifier.
Gets the information element from the model that has the specified Identifier.
- id
Identifier of the element to retrieve
- Since
1.3.1
- Exceptions thrown
InvalidInfoElementException
if an InfoElement is not found
- def apply(elementId: Int, enterpriseId: Long = 0L): InfoElement
Gets the information element from the model that has the specified
elementId
andenterpriseId'.
Gets the information element from the model that has the specified
elementId
andenterpriseId'.
- enterpriseId
The Private Enterprise Number of the element to find.
- Since
1.3.1
- Exceptions thrown
InvalidInfoElementException
if an InfoElement is not found
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def contains(name: String): Boolean
Returns
true
if this model contains an InfoElement that has the specifiedname
.Returns
true
if this model contains an InfoElement that has the specifiedname
. Returnsfalse
otherwise. - def contains(id: Identifier): Boolean
Returns
true
if this model contains an InfoElement that has the specified Identifier. - def contains(elementId: Int, enterpriseId: Long = 0L): Boolean
Returns
true
if this model contains an InfoElement that has the specifiedelementId
andenterpriseId'; returns
falseotherwise. Also returns
falseif
elementIdor
enterpriseIdare outside the range of legal values.
Returns
true
if this model contains an InfoElement that has the specifiedelementId
andenterpriseId'; returns
falseotherwise. Also returns
falseif
elementIdor
enterpriseIdare outside the range of legal values.
- enterpriseId
The Private Enterprise Number of the element to find.
- 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])
- def get(name: String): Option[InfoElement]
Gets the information element from the model that has the specified
name
as an Option. - def get(id: Identifier): Option[InfoElement]
Gets the information element from the model that has the specified identifier as an Option.
- def get(elementId: Int, enterpriseId: Long = 0L): Option[InfoElement]
Gets the information element from the model that has the specified
elementId
andenterpriseId
as an Option.Gets the information element from the model that has the specified
elementId
andenterpriseId
as an Option. Returns None ifelementId
orenterpriseId
are outside the range of legal values.- enterpriseId
The Private Enterprise Number of the element to find.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def importElements(nodes: NodeSeq): Unit
Creates an InfoElement from each node in
nodes
and adds that InfoElement to the InfoModel.Creates an InfoElement from each node in
nodes
and adds that InfoElement to the InfoModel.- nodes
The sequence of Nodes to parse
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def iterator: Iterator[InfoElement]
Returns an Iterator to visit the InfoElements in the model.
- lazy val logger: Logger
- Attributes
- protected
- Definition Classes
- LazyLogging
- Annotations
- @transient()
- 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()
- val parent: Option[InfoModel]
- def remove(name: String): Option[InfoElement]
Marks as deleted the information element that has the specified name.
Marks as deleted the information element that has the specified name. Returns the deleted element.
- def remove(id: Identifier): Option[InfoElement]
Marks as deleted the information element that has the specified identifier.
Marks as deleted the information element that has the specified identifier. Returns the deleted element.
- def setCreateStandardReverse(withReverse: Boolean): Boolean
Determines whether reverse elements are included with the standard model.
Determines whether reverse elements are included with the standard model. Returns
true
if previous setting was to include reverse elements, andfalse
if the previous setting was not to include reverse elements. - 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.