sealed trait FilterResult extends EnumEntry
A four-way logic filter result. Passes if every record in the partition will pass the filter. Fails if every record in the partition will fail the filter, Maybe if some of the records in the partition might pass and some might fail the filter, Nulls if every record in the partition will produce NULL for the filter.
FilterResults may be explicitly converted to Booleans indicating whether it's possible for the result of the filter to be true (canMatch):
Passes
⟹true
Fails
⟹false
Maybe
⟹true
Nulls
⟹false
Logical and (&&
) behavior:
Passes && Passes
⟹Passes
Passes && Fails
⟹Fails
Passes && Maybe
⟹Maybe
Passes && Nulls
⟹Nulls
Fails && Passes
⟹Fails
Fails && Fails
⟹Fails
Fails && Maybe
⟹Fails
Fails && Nulls
⟹Fails
Maybe && Passes
⟹Maybe
Maybe && Fails
⟹Fails
Maybe && Maybe
⟹Maybe
Maybe && Nulls
⟹Fails
Nulls && Passes
⟹Nulls
Nulls && Fails
⟹Fails
Nulls && Maybe
⟹Fails
Nulls && Nulls
⟹Nulls
Logical or (||
) behavior:
Passes || Passes
⟹Passes
Passes || Fails
⟹Passes
Passes || Maybe
⟹Passes
Passes || Nulls
⟹Passes
Fails || Passes
⟹Passes
Fails || Fails
⟹Fails
Fails || Maybe
⟹Maybe
Fails || Nulls
⟹Nulls
Maybe || Passes
⟹Passes
Maybe || Fails
⟹Maybe
Maybe || Maybe
⟹Maybe
Maybe || Nulls
⟹Maybe
Nulls || Passes
⟹Passes
Nulls || Fails
⟹Nulls
Nulls || Maybe
⟹Maybe
Nulls || Nulls
⟹Nulls
Logical not (!
) behavior:
!Passes
⟹Fails
!Fails
⟹Passes
!Maybe
⟹Maybe
!Nulls
⟹Nulls
- Alphabetic
- By Inheritance
- FilterResult
- EnumEntry
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def &&(that: => FilterResult): FilterResult
Shortcutting three-way logical and of two filter results.
- abstract def canMatch: Boolean
Convert four-way logical value to a Boolean indicating whether the filter can possibly match records in the partition:
Convert four-way logical value to a Boolean indicating whether the filter can possibly match records in the partition:
Passes
⟹true
Fails
⟹false
Maybe
⟹true
Nulls
⟹false
- abstract def unary_!: FilterResult
Three-way logical not of filter result.
- abstract def ||(that: => FilterResult): FilterResult
Shortcutting three-way logical or of two filter results.
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()
- def entryName: String
- Definition Classes
- EnumEntry
- 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.