All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.purbon.kafka.topology.model.users.KStream Maven / Gradle / Ivy

Go to download

A helper project for Kafka Platform teams to build an automated Topic, Configuration, Schemas, and more, Management solution.

The newest version!
package com.purbon.kafka.topology.model.users;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.purbon.kafka.topology.model.DynamicUser;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;

public class KStream extends DynamicUser {

  @JsonInclude(Include.NON_EMPTY)
  private Optional applicationId;

  @JsonInclude(Include.NON_EMPTY)
  private Optional exactlyOnce;

  public KStream() {
    this("", new HashMap<>());
  }

  public KStream(
      String principal,
      Map> topics,
      Optional applicationId,
      Optional exactlyOnce) {
    super(principal, topics);
    this.applicationId = applicationId;
    this.exactlyOnce = exactlyOnce;
  }

  public KStream(
      String principal, HashMap> topics, Optional applicationId) {
    this(principal, topics, applicationId, Optional.of(Boolean.FALSE));
  }

  public KStream(String principal, HashMap> topics) {
    this(principal, topics, Optional.empty(), Optional.of(Boolean.FALSE));
  }

  public Optional getApplicationId() {
    return applicationId;
  }

  public Optional getExactlyOnce() {
    return exactlyOnce;
  }

  public void setApplicationId(Optional applicationId) {
    this.applicationId = applicationId;
  }

  public void setExactlyOnce(Optional exactlyOnce) {
    this.exactlyOnce = exactlyOnce;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy