Trait/Object

com.twitter.summingbird

Producer

Related Docs: object Producer | package summingbird

Permalink

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.

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
Visibility
  1. Public
  2. All

Value Members

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

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

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

    Permalink

    Exactly the same as merge.

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

  4. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

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

    Permalink

    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) }

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

    Permalink

    Merge a different type of Producer into a single stream

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

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

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

    Permalink

    Keep only the items that satisfy the fn

  12. def finalize(): Unit

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

    Permalink

    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

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

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

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

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

    Permalink

    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.

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

    Permalink

    Map each item to a new value

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

    Permalink

    Combine the output into one Producer

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

    Permalink

    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...)

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

    Permalink
    Definition Classes
    AnyRef
  22. final def notify(): Unit

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

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

    Permalink

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

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

    Permalink
    Definition Classes
    AnyRef
  26. def toString(): String

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

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

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

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

    Permalink

    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