Skip to content

Instantly share code, notes, and snippets.

@soenkeliebau
Created February 25, 2019 12:13
Show Gist options
  • Save soenkeliebau/9157306a042988440d7da2a2ab711316 to your computer and use it in GitHub Desktop.
Save soenkeliebau/9157306a042988440d7da2a2ab711316 to your computer and use it in GitHub Desktop.
ComplexKafkaPrincipal implementation to allow adding group information to user principals
public class ComplexKafkaPrincipal extends KafkaPrincipal{
protected List<KafkaPrincipal> additionalPrincipals = new ArrayList<>();
public ComplexKafkaPrincipal(String principalType, String name) {
super(principalType, name);
}
public ComplexKafkaPrincipal(KafkaPrincipal kafkaPrincipal) {
this(kafkaPrincipal.getPrincipalType(), kafkaPrincipal.getName());
}
public ComplexKafkaPrincipal(String principalType, String name, List<KafkaPrincipal> additionalPrincipals) {
this(principalType, name);
this.additionalPrincipals = additionalPrincipals;
}
public List<KafkaPrincipal> getGroupMemberships() {
return additionalPrincipals;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment