Class/Object

org.cert.netsa.io.silk

BagReader

Related Docs: object BagReader | package silk

Permalink

abstract class BagReader[T] extends Iterator[(T, Long)]

A reader of binary SiLK Bag files. This is usable as an Iterator over a pair representing the key and counter in the Bag. Depending on the contents of the Bag file, the key is either an IPAddress or an Int. The counter is always a Long.

Since a Bag file may contain different key types, the BagReader factory methods return a BagResult wrapper over BagReader.

The keyType and counterType methods return a BagDataType that specifies the type of the key and the counter that were specified in the Bag file's header.

Example:
  1. This example uses the single argument form of the companion object's ofInputStream() method to read the Bag file "example.bag". This code may be used outside of Hadoop when it is known that the Bag's key is an IPAddress.

    val stream = new java.io.FileInputStream("example.bag")
    val bagresult = BagReader.ofInputStream(stream)
    val bag = bagresult match {
      case BagResult.IPAddressBag(iter) => iter
      case _ => null
    }
    bag.hasNext
    val (ipaddr, counter) = bag.next()
Note

While the SiLK command lines tools display an unspecified key type as an IPv4 address, the BagReader class treats an unspecified key type as an integer.

See also

the companion object for more details.

Linear Supertypes
Iterator[(T, Long)], TraversableOnce[(T, Long)], GenTraversableOnce[(T, Long)], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BagReader
  2. Iterator
  3. TraversableOnce
  4. GenTraversableOnce
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BagReader(reader: BufferReader, header: Header)

    Permalink
    Attributes
    protected

Type Members

  1. class GroupedIterator[B >: A] extends AbstractIterator[Seq[B]] with Iterator[Seq[B]]

    Permalink
    Definition Classes
    Iterator

Abstract Value Members

  1. abstract def next(): (T, Long)

    Permalink

    Produces the next (key, counter) pair of this iterator.

    Produces the next (key, counter) pair of this iterator.

    returns

    the next pair of this iterator if hasNext is true

    Definition Classes
    BagReader → Iterator
    Exceptions thrown

    java.util.NoSuchElementException when the iterator is depleted

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def ++[B >: (T, Long)](that: ⇒ GenTraversableOnce[B]): Iterator[B]

    Permalink
    Definition Classes
    Iterator
  4. def /:[B](z: B)(op: (B, (T, Long)) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  5. def :\[B](z: B)(op: ((T, Long), B) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  6. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  7. def addString(b: StringBuilder): StringBuilder

    Permalink
    Definition Classes
    TraversableOnce
  8. def addString(b: StringBuilder, sep: String): StringBuilder

    Permalink
    Definition Classes
    TraversableOnce
  9. def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder

    Permalink
    Definition Classes
    TraversableOnce
  10. def aggregate[B](z: ⇒ B)(seqop: (B, (T, Long)) ⇒ B, combop: (B, B) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  11. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  12. var bufOffset: Int

    Permalink

    Current position (octet offset) in the current buffer.

    Current position (octet offset) in the current buffer.

    Attributes
    protected[this]
  13. var buffer: Array[Byte]

    Permalink

    Current buffer of bytes being processed

    Current buffer of bytes being processed

    Attributes
    protected[this]
  14. def buffered: BufferedIterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  15. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. def collect[B](pf: PartialFunction[(T, Long), B]): Iterator[B]

    Permalink
    Definition Classes
    Iterator
    Annotations
    @migration
    Migration

    (Changed in version 2.8.0) collect has changed. The previous behavior can be reproduced with toSeq.

  17. def collectFirst[B](pf: PartialFunction[(T, Long), B]): Option[B]

    Permalink
    Definition Classes
    TraversableOnce
  18. def contains(elem: Any): Boolean

    Permalink
    Definition Classes
    Iterator
  19. def copyToArray[B >: (T, Long)](xs: Array[B], start: Int, len: Int): Unit

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  20. def copyToArray[B >: (T, Long)](xs: Array[B]): Unit

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  21. def copyToArray[B >: (T, Long)](xs: Array[B], start: Int): Unit

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  22. def copyToBuffer[B >: (T, Long)](dest: Buffer[B]): Unit

    Permalink
    Definition Classes
    TraversableOnce
  23. def corresponds[B](that: GenTraversableOnce[B])(p: ((T, Long), B) ⇒ Boolean): Boolean

    Permalink
    Definition Classes
    Iterator
  24. def count(p: ((T, Long)) ⇒ Boolean): Int

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  25. def counterType: Option[BagDataType]

    Permalink

    Provides the data type of the counter that was specified in the Bag file's header, if any.

    Provides the data type of the counter that was specified in the Bag file's header, if any.

    returns

    the type of data in the Counter field of the Bag or None if no header was present

  26. def drop(n: Int): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  27. def dropWhile(p: ((T, Long)) ⇒ Boolean): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  28. def duplicate: (Iterator[(T, Long)], Iterator[(T, Long)])

    Permalink
    Definition Classes
    Iterator
  29. var endOfFile: Boolean

    Permalink

    Whether the end of the input stream has been reached.

    Whether the end of the input stream has been reached.

    Attributes
    protected[this]
  30. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  31. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  32. def exists(p: ((T, Long)) ⇒ Boolean): Boolean

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  33. def fillBuffer(): Unit

    Permalink

    Read a new buffer into memory if needed.

    Read a new buffer into memory if needed. Does no work if the current buffer still has unread records, or if the reader is at end of file. Sets endOfFile to true if the EOF is reached.

    Attributes
    protected[this]
  34. def filter(p: ((T, Long)) ⇒ Boolean): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  35. def filterNot(p: ((T, Long)) ⇒ Boolean): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  36. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. def find(p: ((T, Long)) ⇒ Boolean): Option[(T, Long)]

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  38. def flatMap[B](f: ((T, Long)) ⇒ GenTraversableOnce[B]): Iterator[B]

    Permalink
    Definition Classes
    Iterator
  39. def fold[A1 >: (T, Long)](z: A1)(op: (A1, A1) ⇒ A1): A1

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  40. def foldLeft[B](z: B)(op: (B, (T, Long)) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  41. def foldRight[B](z: B)(op: ((T, Long), B) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  42. def forall(p: ((T, Long)) ⇒ Boolean): Boolean

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  43. def foreach[U](f: ((T, Long)) ⇒ U): Unit

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  44. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  45. def grouped[B >: (T, Long)](size: Int): GroupedIterator[B]

    Permalink
    Definition Classes
    Iterator
  46. def hasDefiniteSize: Boolean

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  47. def hasNext: Boolean

    Permalink

    Tests whether this iterator can provide another (key, counter) pair.

    Tests whether this iterator can provide another (key, counter) pair.

    returns

    true if a subsequent call to next() will yield an element, false otherwise.

    Definition Classes
    BagReader → Iterator
  48. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  49. val header: Header

    Permalink
    Attributes
    protected[this]
  50. def indexOf[B >: (T, Long)](elem: B): Int

    Permalink
    Definition Classes
    Iterator
  51. def indexWhere(p: ((T, Long)) ⇒ Boolean): Int

    Permalink
    Definition Classes
    Iterator
  52. def isEmpty: Boolean

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  53. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  54. def isTraversableAgain: Boolean

    Permalink
    Definition Classes
    Iterator → GenTraversableOnce
  55. def keyType: Option[BagDataType]

    Permalink

    Provides the data type of the key that was specified in the Bag file's header, if any.

    Provides the data type of the key that was specified in the Bag file's header, if any.

    returns

    the type of data in the Key field of the Bag or None if no header was present

  56. def length: Int

    Permalink
    Definition Classes
    Iterator
  57. def map[B](f: ((T, Long)) ⇒ B): Iterator[B]

    Permalink
    Definition Classes
    Iterator
  58. def max[B >: (T, Long)](implicit cmp: Ordering[B]): (T, Long)

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  59. def maxBy[B](f: ((T, Long)) ⇒ B)(implicit cmp: Ordering[B]): (T, Long)

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  60. def min[B >: (T, Long)](implicit cmp: Ordering[B]): (T, Long)

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  61. def minBy[B](f: ((T, Long)) ⇒ B)(implicit cmp: Ordering[B]): (T, Long)

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  62. def mkString: String

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  63. def mkString(sep: String): String

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  64. def mkString(start: String, sep: String, end: String): String

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  65. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  66. def nonEmpty: Boolean

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  67. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  68. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  69. def padTo[A1 >: (T, Long)](len: Int, elem: A1): Iterator[A1]

    Permalink
    Definition Classes
    Iterator
  70. def partition(p: ((T, Long)) ⇒ Boolean): (Iterator[(T, Long)], Iterator[(T, Long)])

    Permalink
    Definition Classes
    Iterator
  71. def patch[B >: (T, Long)](from: Int, patchElems: Iterator[B], replaced: Int): Iterator[B]

    Permalink
    Definition Classes
    Iterator
  72. def product[B >: (T, Long)](implicit num: Numeric[B]): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  73. val reader: BufferReader

    Permalink
    Attributes
    protected[this]
  74. val recordLength: Short

    Permalink

    Record length

    Record length

    Attributes
    protected[this]
  75. def reduce[A1 >: (T, Long)](op: (A1, A1) ⇒ A1): A1

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  76. def reduceLeft[B >: (T, Long)](op: (B, (T, Long)) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce
  77. def reduceLeftOption[B >: (T, Long)](op: (B, (T, Long)) ⇒ B): Option[B]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  78. def reduceOption[A1 >: (T, Long)](op: (A1, A1) ⇒ A1): Option[A1]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  79. def reduceRight[B >: (T, Long)](op: ((T, Long), B) ⇒ B): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  80. def reduceRightOption[B >: (T, Long)](op: ((T, Long), B) ⇒ B): Option[B]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  81. def reversed: List[(T, Long)]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    TraversableOnce
  82. def sameElements(that: Iterator[_]): Boolean

    Permalink
    Definition Classes
    Iterator
  83. def scanLeft[B](z: B)(op: (B, (T, Long)) ⇒ B): Iterator[B]

    Permalink
    Definition Classes
    Iterator
  84. def scanRight[B](z: B)(op: ((T, Long), B) ⇒ B): Iterator[B]

    Permalink
    Definition Classes
    Iterator
  85. def seq: Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  86. def size: Int

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  87. def slice(from: Int, until: Int): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  88. def sliding[B >: (T, Long)](size: Int, step: Int): GroupedIterator[B]

    Permalink
    Definition Classes
    Iterator
  89. def span(p: ((T, Long)) ⇒ Boolean): (Iterator[(T, Long)], Iterator[(T, Long)])

    Permalink
    Definition Classes
    Iterator
  90. def sum[B >: (T, Long)](implicit num: Numeric[B]): B

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  91. val swap: Boolean

    Permalink

    Whether to byte-swap the bytes as they are read from the buffer

    Whether to byte-swap the bytes as they are read from the buffer

    Attributes
    protected[this]
  92. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  93. def take(n: Int): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  94. def takeWhile(p: ((T, Long)) ⇒ Boolean): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  95. def to[Col[_]](implicit cbf: CanBuildFrom[Nothing, (T, Long), Col[(T, Long)]]): Col[(T, Long)]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  96. def toArray[B >: (T, Long)](implicit arg0: ClassTag[B]): Array[B]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  97. def toBuffer[B >: (T, Long)]: Buffer[B]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  98. def toIndexedSeq: IndexedSeq[(T, Long)]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  99. def toIterable: Iterable[(T, Long)]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  100. def toIterator: Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator → GenTraversableOnce
  101. def toList: List[(T, Long)]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  102. def toMap[T, U](implicit ev: <:<[(T, Long), (T, U)]): Map[T, U]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  103. def toSeq: Seq[(T, Long)]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  104. def toSet[B >: (T, Long)]: Set[B]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  105. def toStream: Stream[(T, Long)]

    Permalink
    Definition Classes
    Iterator → GenTraversableOnce
  106. def toString(): String

    Permalink
    Definition Classes
    Iterator → AnyRef → Any
  107. def toTraversable: Traversable[(T, Long)]

    Permalink
    Definition Classes
    Iterator → TraversableOnce → GenTraversableOnce
  108. def toVector: Vector[(T, Long)]

    Permalink
    Definition Classes
    TraversableOnce → GenTraversableOnce
  109. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  110. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  111. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  112. def withFilter(p: ((T, Long)) ⇒ Boolean): Iterator[(T, Long)]

    Permalink
    Definition Classes
    Iterator
  113. def zip[B](that: Iterator[B]): Iterator[((T, Long), B)]

    Permalink
    Definition Classes
    Iterator
  114. def zipAll[B, A1 >: (T, Long), B1 >: B](that: Iterator[B], thisElem: A1, thatElem: B1): Iterator[(A1, B1)]

    Permalink
    Definition Classes
    Iterator
  115. def zipWithIndex: Iterator[((T, Long), Int)]

    Permalink
    Definition Classes
    Iterator

Inherited from Iterator[(T, Long)]

Inherited from TraversableOnce[(T, Long)]

Inherited from GenTraversableOnce[(T, Long)]

Inherited from AnyRef

Inherited from Any

Ungrouped