com.purbon.kafka.topology.model.users.Consumer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of julie-ops Show documentation
Show all versions of julie-ops Show documentation
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());
}
}