public classinterface AlterConfigOp {
public enum OpType {
SET((byte) 0), DELETE((byte) 1), APPEND((byte) 2), SUBTRACT((byte) 3);
private static final Map<Byte, OpType> OP_TYPES = Collections.unmodifiableMap(
Arrays.stream(values()).collect(Collectors.toMap(OpType::id, Function.identity()))
);
private final byte id;
OpType(final byte id) {
this.id = id;
}
public byte id() {
return id;
}
public static OpType forId(final byte id) {
return OP_TYPES.get(id);
}
}
private final ConfigResource configResource;
private final ConfigEntry configEntry;
private final OpType opType;
public AlterConfigOp(ConfigResource configResource, ConfigEntry configEntry,
OpType operationType) {
this.configResource = configResource;
this.configEntry = configEntry;
this.opType = operationType;
}
ConfigResource resource();
}
public class SetConfigOp extends AlterConfigOp {
public SetConfigOp(ConfigResource resource, String value);
}
public class DeleteConfigOp extends AlterConfigOp {
public DeleteConfigOp(SConfigResource resource);
}
public class AppendConfigOp extends AlterConfigOp {
public AppendConfigOp(ConfigResource resource, String value);
}
public class SubtractConfigOp extends AlterConfigOp {
public SubtractConfigOp(ConfigResource resource, String value);
}
public IncrementalAlterConfigsResult alterConfigsincrementalAlterConfigs(
Collection<AlterConfigOp> ops,
final IncrementalAlterConfigsOptions options); |