io.strimzi.api.kafka.model.KafkaTopicFluent Maven / Gradle / Ivy
package io.strimzi.api.kafka.model;
import io.strimzi.api.kafka.model.status.KafkaTopicStatus;
import io.strimzi.api.kafka.model.status.KafkaTopicStatusBuilder;
import java.lang.SuppressWarnings;
import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.String;
import io.strimzi.api.kafka.model.status.KafkaTopicStatusFluent;
import io.fabric8.kubernetes.client.CustomResourceFluent;
import java.lang.Object;
/**
* Generated
*/
@SuppressWarnings(value = "unchecked")
public class KafkaTopicFluent> extends CustomResourceFluent{
public KafkaTopicFluent() {
}
public KafkaTopicFluent(KafkaTopic instance) {
instance = (instance != null ? instance : new KafkaTopic());
if (instance != null) {
this.withSpec(instance.getSpec());
this.withStatus(instance.getStatus());
this.withApiVersion(instance.getApiVersion());
this.withKind(instance.getKind());
this.withMetadata(instance.getMetadata());
this.withSpec(instance.getSpec());
this.withStatus(instance.getStatus());
}
}
private String apiVersion;
private String kind;
private KafkaTopicSpecBuilder spec;
private KafkaTopicStatusBuilder status;
public String getApiVersion() {
return this.apiVersion;
}
public A withApiVersion(String apiVersion) {
this.apiVersion=apiVersion; return (A) this;
}
public boolean hasApiVersion() {
return this.apiVersion != null;
}
public String getKind() {
return this.kind;
}
public A withKind(String kind) {
this.kind=kind; return (A) this;
}
public boolean hasKind() {
return this.kind != null;
}
public KafkaTopicSpec buildSpec() {
return this.spec!=null ?this.spec.build():null;
}
public A withSpec(KafkaTopicSpec spec) {
_visitables.get("spec").remove(this.spec);
if (spec!=null){ this.spec= new KafkaTopicSpecBuilder(spec); _visitables.get("spec").add(this.spec);} else { this.spec = null; _visitables.get("spec").remove(this.spec); } return (A) this;
}
public boolean hasSpec() {
return this.spec != null;
}
public SpecNested withNewSpec() {
return new SpecNested(null);
}
public SpecNested withNewSpecLike(KafkaTopicSpec item) {
return new SpecNested(item);
}
public SpecNested editSpec() {
return withNewSpecLike(java.util.Optional.ofNullable(buildSpec()).orElse(null));
}
public SpecNested editOrNewSpec() {
return withNewSpecLike(java.util.Optional.ofNullable(buildSpec()).orElse(new KafkaTopicSpecBuilder().build()));
}
public SpecNested editOrNewSpecLike(KafkaTopicSpec item) {
return withNewSpecLike(java.util.Optional.ofNullable(buildSpec()).orElse(item));
}
public KafkaTopicStatus buildStatus() {
return this.status!=null ?this.status.build():null;
}
public A withStatus(KafkaTopicStatus status) {
_visitables.get("status").remove(this.status);
if (status!=null){ this.status= new KafkaTopicStatusBuilder(status); _visitables.get("status").add(this.status);} else { this.status = null; _visitables.get("status").remove(this.status); } return (A) this;
}
public boolean hasStatus() {
return this.status != null;
}
public StatusNested withNewStatus() {
return new StatusNested(null);
}
public StatusNested withNewStatusLike(KafkaTopicStatus item) {
return new StatusNested(item);
}
public StatusNested editStatus() {
return withNewStatusLike(java.util.Optional.ofNullable(buildStatus()).orElse(null));
}
public StatusNested editOrNewStatus() {
return withNewStatusLike(java.util.Optional.ofNullable(buildStatus()).orElse(new KafkaTopicStatusBuilder().build()));
}
public StatusNested editOrNewStatusLike(KafkaTopicStatus item) {
return withNewStatusLike(java.util.Optional.ofNullable(buildStatus()).orElse(item));
}
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (!super.equals(o)) return false;
KafkaTopicFluent that = (KafkaTopicFluent) o;
if (!java.util.Objects.equals(apiVersion, that.apiVersion)) return false;
if (!java.util.Objects.equals(kind, that.kind)) return false;
if (!java.util.Objects.equals(spec, that.spec)) return false;
if (!java.util.Objects.equals(status, that.status)) return false;
return true;
}
public int hashCode() {
return java.util.Objects.hash(apiVersion, kind, spec, status, super.hashCode());
}
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (apiVersion != null) { sb.append("apiVersion:"); sb.append(apiVersion + ","); }
if (kind != null) { sb.append("kind:"); sb.append(kind + ","); }
if (spec != null) { sb.append("spec:"); sb.append(spec + ","); }
if (status != null) { sb.append("status:"); sb.append(status); }
sb.append("}");
return sb.toString();
}
public class SpecNested extends KafkaTopicSpecFluent> implements Nested{
SpecNested(KafkaTopicSpec item) {
this.builder = new KafkaTopicSpecBuilder(this, item);
}
KafkaTopicSpecBuilder builder;
public N and() {
return (N) KafkaTopicFluent.this.withSpec(builder.build());
}
public N endSpec() {
return and();
}
}
public class StatusNested extends KafkaTopicStatusFluent> implements Nested{
StatusNested(KafkaTopicStatus item) {
this.builder = new KafkaTopicStatusBuilder(this, item);
}
KafkaTopicStatusBuilder builder;
public N and() {
return (N) KafkaTopicFluent.this.withStatus(builder.build());
}
public N endStatus() {
return and();
}
}
}