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

com.purbon.kafka.topology.model.users.Consumer 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.purbon.kafka.topology.model.User;
import java.util.Objects;
import java.util.Optional;

public class Consumer extends User {

  private Optional group;

  public Consumer() {
    super();
    group = Optional.empty();
  }

  public Consumer(String principal) {
    this(principal, null);
  }

  public Consumer(String principal, String group) {
    super(principal);
    this.group = Optional.ofNullable(group);
  }

  public String groupString() {
    return group.orElse("*");
  }

  public Optional getGroup() {
    return group;
  }

  public void setGroup(Optional group) {
    this.group = group;
  }

  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (!(o instanceof Consumer)) {
      return false;
    }
    Consumer consumer = (Consumer) o;
    return getPrincipal().equals(consumer.getPrincipal())
        && groupString().equals(consumer.groupString());
  }

  @Override
  public int hashCode() {
    return Objects.hash(groupString(), getPrincipal());
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy