case class EventTypes(baseUri: URI, oAuth2TokenProvider: Option[OAuth2TokenProvider] = None)(implicit kanadiHttpConfig: HttpConfig, http: HttpExt, materializer: Materializer) extends EventTypesInterface with Product with Serializable
- Alphabetic
- By Inheritance
- EventTypes
- Serializable
- Serializable
- Product
- Equals
- EventTypesInterface
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new EventTypes(baseUri: URI, oAuth2TokenProvider: Option[OAuth2TokenProvider] = None)(implicit kanadiHttpConfig: HttpConfig, http: HttpExt, materializer: Materializer)
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
- val baseUri: URI
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @IntrinsicCandidate()
-
def
create(eventType: EventType)(implicit flowId: FlowId = randomFlowId(), executionContext: ExecutionContext): Future[Unit]
Creates a new EventType.
Creates a new EventType.
The fields enrichment-strategies and partition-resolution-strategy have all an effect on the incoming org.zalando.kanadi.api.Event of this EventType. For its impacts on the reception of events please consult the Event submission API methods. Validation strategies define an array of validation stategies to be evaluated on reception of an Event of this EventType. Details of usage can be found in this external document http://zalando.github.io/nakadi-manual/ Enrichment strategy. (todo: define this part of the API). The schema of an EventType is defined as an EventTypeSchema. Currently only the value EventTypeSchema.Type.JsonSchema is supported, representing JSON Schema draft 04.
Following conditions are enforced. Not meeting them will fail the request with the indicated status (details are provided in the Problem object):
EventType name on creation must be unique (or attempting to update an EventType with this method), otherwise the request is rejected with status 409 Conflict. Using EventTypeSchema.Type other than EventTypeSchema.Type.JsonSchema or passing a EventTypeSchema.schema that is invalid with respect to the schema's type. Rejects with 422 Unprocessable entity. Referring any Enrichment or Partition strategies that do not exist or whose parametrization is deemed invalid. Rejects with 422 Unprocessable entity.
Nakadi MIGHT impose necessary schema, validation and enrichment minimal configurations that MUST be followed by all EventTypes (examples include: validation rules to match the schema; enriching every Event with the reception date-type; adhering to a set of schema fields that are mandatory for all EventTypes). The mechanism to set and inspect such rules is not defined at this time and might not be exposed in the API.
- 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.
- Definition Classes
- EventTypes → EventTypesInterface
-
def
delete(name: EventTypeName)(implicit flowId: FlowId = randomFlowId(), executionContext: ExecutionContext): Future[Unit]
Deletes an EventType identified by its name.
Deletes an EventType identified by its name. All events in the EventType 's stream' will also be removed. Note: deletion happens asynchronously, which has the following consequences:
Creation of an equally named EventType before the underlying topic deletion is complete might not succeed (failure is a 409 Conflict). Events in the stream may be visible for a short period of time before being removed.
- name
Name of the EventType to delete.
- 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.
- Definition Classes
- EventTypes → EventTypesInterface
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
get(name: EventTypeName)(implicit flowId: FlowId = randomFlowId(), executionContext: ExecutionContext): Future[Option[EventType]]
Returns the EventType identified by its name.
Returns the EventType identified by its name.
- name
Name of the EventType to load.
- 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.
- Definition Classes
- EventTypes → EventTypesInterface
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
list()(implicit flowId: FlowId = randomFlowId(), executionContext: ExecutionContext): Future[List[EventType]]
Returns a list of all registered EventType
Returns a list of all registered EventType
- 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.
- Definition Classes
- EventTypes → EventTypesInterface
-
val
logger: LoggerTakingImplicit[FlowId]
- Attributes
- protected
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- val oAuth2TokenProvider: Option[OAuth2TokenProvider]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
update(name: EventTypeName, eventType: EventType)(implicit flowId: FlowId = randomFlowId(), executionContext: ExecutionContext): Future[Unit]
Updates the EventType identified by its name.
Updates the EventType identified by its name. Behaviour is the same as creation of EventType (See create) except where noted below.
- name
Name of the EventType to update.
- eventType
EventType to be updated.
- 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.
- Definition Classes
- EventTypes → EventTypesInterface
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )