
com.eventstore.dbclient.OptionsBase Maven / Gradle / Ivy
package com.eventstore.dbclient;
import io.grpc.Metadata;
class OptionsBase {
protected final ConnectionMetadata metadata;
protected Long deadline;
protected OperationKind kind;
private UserCredentials credentials;
private boolean requiresLeader;
protected OptionsBase() {
this.metadata = new ConnectionMetadata();
this.kind = OperationKind.Regular;
}
public Metadata getMetadata() {
return this.metadata.build();
}
public boolean hasUserCredentials() {
return this.metadata.hasUserCredentials();
}
public String getUserCredentials() {
return this.metadata.getUserCredentials();
}
public T authenticated(UserCredentials credentials) {
this.credentials = credentials;
return (T)this;
}
public T requiresLeader() {
return requiresLeader(true);
}
public T notRequireLeader() {
return requiresLeader(false);
}
public T requiresLeader(boolean value) {
this.requiresLeader = value;
return (T)this;
}
public T deadline(long durationInMs) {
deadline = durationInMs;
return (T)this;
}
public Long getDeadline() {
return deadline;
}
public OperationKind getKind() {
return kind;
}
public boolean isLeaderRequired() {
return this.requiresLeader;
}
public UserCredentials getCredentials() {
return this.credentials;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy