case class Events(baseUri: URI, oAuth2TokenProvider: Option[OAuth2TokenProvider] = None)(implicit kanadiHttpConfig: HttpConfig, http: HttpExt, materializer: Materializer) extends Product with Serializable

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Events
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Events(baseUri: URI, oAuth2TokenProvider: Option[OAuth2TokenProvider] = None)(implicit kanadiHttpConfig: HttpConfig, http: HttpExt, materializer: Materializer)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val baseUri: URI
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. val logger: LoggerTakingImplicit[FlowId]
    Attributes
    protected
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. val oAuth2TokenProvider: Option[OAuth2TokenProvider]
  16. def publish[T](name: EventTypeName, events: List[Event[T]], fillMetadata: Boolean = true)(implicit encoder: Encoder[T], flowId: FlowId = randomFlowId(), executionContext: ExecutionContext): Future[Unit]

    Publishes a batch of Event's of this org.zalando.kanadi.models.EventTypeName.

    Publishes a batch of Event's of this org.zalando.kanadi.models.EventTypeName. All items must be of the EventType identified by name.

    Reception of Events will always respect the configuration of its org.zalando.kanadi.models.EventTypeName with respect to validation, enrichment and partition. The steps performed on reception of incoming message are:

    Every validation rule specified for the EventType will be checked in order against the incoming Events. Validation rules are evaluated in the order they are defined and the Event is rejected in the first case of failure. If the offending validation rule provides information about the violation it will be included in the BatchItemResponse. If the org.zalando.kanadi.models.EventTypeName defines schema validation it will be performed at this moment. The size of each Event will also be validated. The maximum size per Event is 999,000 bytes. We use the batch input to measure the size of events, so unnecessary spaces, tabs, and carriage returns will count towards the event size. Once the validation succeeded, the content of the Event is updated according to the enrichment rules in the order the rules are defined in the EventType. No preexisting value might be changed (even if added by an enrichment rule). Violations on this will force the immediate rejection of the Event. The invalid overwrite attempt will be included in the item's BatchItemResponse object. The incoming Event's relative ordering is evaluated according to the rule on the EventType. Failure to evaluate the rule will reject the Event.

    Given the batched nature of this operation, any violation on validation or failures on enrichment or partitioning will cause the whole batch to be rejected, i.e. none of its elements are pushed to the underlying broker.

    Failures on writing of specific partitions to the broker might influence other partitions. Failures at this stage will fail only the affected partitions.

    name

    Name of the EventType

    events

    The Event being published

    flowId

    The flow id of the request, which is written into the logs and passed to called services. Helpful for operational troubleshooting and log analysis.

  17. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  18. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped