com.twitter.summingbird

Producer

sealed trait Producer[P <: Platform[P], +T] extends AnyRef

A Producer is a node in our tree, able to generate new items and have operations applied to it. In Storm, this might be an in-progress TopologyBuilder.

Source
Producer.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Producer
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def ++[U >: T](r: Producer[P, U]): Producer[P, U]

    Exactly the same as merge.

    Exactly the same as merge. Here by analogy with the scala.collections API

  5. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  6. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def collect[U](fn: PartialFunction[T, U]): Producer[P, U]

    Prefer to flatMap for transforming a subset of items like optionMap but convenient with case syntax in scala prod.

    Prefer to flatMap for transforming a subset of items like optionMap but convenient with case syntax in scala prod.collect { case x if fn(x) => g(x) }

  10. def either[U](other: Producer[P, U]): Producer[P, Either[T, U]]

    Merge a different type of Producer into a single stream

  11. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  13. def filter(fn: (T) ⇒ Boolean): Producer[P, T]

    Keep only the items that satisfy the fn

  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def flatMap[U](fn: (T) ⇒ TraversableOnce[U]): Producer[P, U]

    Only use this function if you may return more than 1 item sometimes.

    Only use this function if you may return more than 1 item sometimes. otherwise use collect or optionMap, which can be pushed up the graph

  16. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  19. def lookup[U >: T, V](service: P.Service[U, V]): KeyedProducer[P, U, Option[V]]

    This is identical to a certain leftJoin: map((_, ())).

    This is identical to a certain leftJoin: map((_, ())).leftJoin(srv).mapValues{case (_, v) => v} Useful when you are looking up values from say a stream of inputs, such as IDs.

  20. def map[U](fn: (T) ⇒ U): Producer[P, U]

    Map each item to a new value

  21. def merge[U >: T](r: Producer[P, U]): Producer[P, U]

    Combine the output into one Producer

  22. def name(id: String): Producer[P, T]

    Naming a node is so that you may give Options for that node that may change the run-time performance of the job (parameter tuning, etc.

    Naming a node is so that you may give Options for that node that may change the run-time performance of the job (parameter tuning, etc...)

  23. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  24. final def notify(): Unit

    Definition Classes
    AnyRef
  25. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  26. def optionMap[U](fn: (T) ⇒ Option[U]): Producer[P, U]

    Prefer this or collect to flatMap if you are always emitting 0 or 1 items

  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  28. def toString(): String

    Definition Classes
    AnyRef → Any
  29. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. def write[U >: T](sink: P.Sink[U]): TailProducer[P, T]

    Cause some side effect on the sink, but pass through the values so they can be consumed downstream

Inherited from AnyRef

Inherited from Any

Ungrouped