Class AvroMessageBuilder<BuilderType extends AvroMessageBuilder,MessageType extends AvroMessage>

java.lang.Object
ch.admin.bit.jeap.messaging.avro.AvroMessageBuilder<BuilderType,MessageType>
Direct Known Subclasses:
AvroCommandBuilder, AvroDomainEventBuilder

public abstract class AvroMessageBuilder<BuilderType extends AvroMessageBuilder,MessageType extends AvroMessage> extends Object
  • Field Details

  • Constructor Details

  • Method Details

    • getServiceName

      protected abstract String getServiceName()
    • getSystemName

      protected abstract String getSystemName()
    • self

      protected abstract BuilderType self()
    • setPayload

      protected void setPayload(ch.admin.bit.jeap.messaging.model.MessagePayload payload)
    • setReferences

      protected void setReferences(ch.admin.bit.jeap.messaging.model.MessageReferences references)
    • setProcessId

      protected void setProcessId(String processId)
    • getSpecifiedMessageTypeVersion

      protected String getSpecifiedMessageTypeVersion()
      Allows for explicitly specifying a message type version for use cases where the message type being built is not generated from the message type registry, and its version is thus unknown. See {getGeneratedOrSpecifiedVersion(AvroMessage) for details.
      Returns:
      Message type version to use in the messageType part of the message, i.e. "1.2.3"
    • idempotenceId

      public BuilderType idempotenceId(String idempotenceId)
    • variant

      public BuilderType variant(String variant)
    • checkMandatoryFields

      protected void checkMandatoryFields()
    • getGeneratedOrSpecifiedVersion

      protected String getGeneratedOrSpecifiedVersion(AvroMessage message)
      Returns in order of precedence:
      1. The message type version as found in the generated avro java binding
      2. The message type version returned by getSpecifiedMessageTypeVersion()
      3. null if both contain no value
    • addCommon

      protected void addCommon(MessageType message)
    • isBlank

      protected static boolean isBlank(CharSequence cs)