
org.kiwiproject.consul.option.TokenQueryOptions Maven / Gradle / Ivy
package org.kiwiproject.consul.option;
import org.immutables.value.Value;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
/**
* Container for token query options used by the Consul ACL API.
*/
@Value.Immutable
@Value.Style(jakarta = true)
public abstract class TokenQueryOptions implements ParamAdder {
public static final TokenQueryOptions BLANK = ImmutableTokenQueryOptions.builder().build();
public abstract Optional getPolicy();
public abstract Optional getRole();
public abstract Optional getAuthMethod();
public abstract Optional getAuthMethodNamespace();
public abstract Optional getNamespace();
@Override
public Map toQuery() {
Map result = new HashMap<>();
Options.optionallyAdd(result, "policy", getPolicy());
Options.optionallyAdd(result, "role", getRole());
Options.optionallyAdd(result, "authmethod", getAuthMethod());
Options.optionallyAdd(result, "authmethod-ns", getAuthMethodNamespace());
Options.optionallyAdd(result, "ns", getNamespace());
return result;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy