All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl Maven / Gradle / Ivy

There is a newer version: 0.44.0
Show newest version
package io.strimzi.api.kafka.model.template;

import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.lang.Boolean;
import java.lang.Object;
import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.Deprecated;

  
  /**
   * Representation of a template for Kafka cluster resources.
   */
  public class KafkaClusterTemplateFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent {

    private io.strimzi.api.kafka.model.template.StatefulSetTemplateBuilder statefulset;
    private io.strimzi.api.kafka.model.template.PodTemplateBuilder pod;
    private io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder bootstrapService;
    private io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder brokersService;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder externalBootstrapService;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder perPodService;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder externalBootstrapRoute;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder perPodRoute;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder externalBootstrapIngress;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder perPodIngress;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder persistentVolumeClaim;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder clusterCaCert;
    private io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateBuilder podDisruptionBudget;
    private io.strimzi.api.kafka.model.template.ContainerTemplateBuilder kafkaContainer;
    private io.strimzi.api.kafka.model.template.ContainerTemplateBuilder initContainer;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder clusterRoleBinding;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder serviceAccount;
    private io.strimzi.api.kafka.model.template.ResourceTemplateBuilder jmxSecret;

    public KafkaClusterTemplateFluentImpl() {
    }

    public KafkaClusterTemplateFluentImpl(io.strimzi.api.kafka.model.template.KafkaClusterTemplate instance) {
        this.withStatefulset(instance.getStatefulset());
        
        this.withPod(instance.getPod());
        
        this.withBootstrapService(instance.getBootstrapService());
        
        this.withBrokersService(instance.getBrokersService());
        
        this.withExternalBootstrapService(instance.getExternalBootstrapService());
        
        this.withPerPodService(instance.getPerPodService());
        
        this.withExternalBootstrapRoute(instance.getExternalBootstrapRoute());
        
        this.withPerPodRoute(instance.getPerPodRoute());
        
        this.withExternalBootstrapIngress(instance.getExternalBootstrapIngress());
        
        this.withPerPodIngress(instance.getPerPodIngress());
        
        this.withPersistentVolumeClaim(instance.getPersistentVolumeClaim());
        
        this.withClusterCaCert(instance.getClusterCaCert());
        
        this.withPodDisruptionBudget(instance.getPodDisruptionBudget());
        
        this.withKafkaContainer(instance.getKafkaContainer());
        
        this.withInitContainer(instance.getInitContainer());
        
        this.withClusterRoleBinding(instance.getClusterRoleBinding());
        
        this.withServiceAccount(instance.getServiceAccount());
        
        this.withJmxSecret(instance.getJmxSecret());
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildStatefulset instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.StatefulSetTemplate getStatefulset() {
        return this.statefulset!=null?this.statefulset.build():null;
    }

    public io.strimzi.api.kafka.model.template.StatefulSetTemplate buildStatefulset() {
        return this.statefulset!=null?this.statefulset.build():null;
    }

    public A withStatefulset(io.strimzi.api.kafka.model.template.StatefulSetTemplate statefulset) {
        _visitables.get("statefulset").remove(this.statefulset);
        if (statefulset!=null){ this.statefulset= new io.strimzi.api.kafka.model.template.StatefulSetTemplateBuilder(statefulset); _visitables.get("statefulset").add(this.statefulset);} return (A) this;
    }

    public java.lang.Boolean hasStatefulset() {
        return this.statefulset != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.StatefulsetNested withNewStatefulset() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.StatefulsetNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.StatefulsetNested withNewStatefulsetLike(io.strimzi.api.kafka.model.template.StatefulSetTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.StatefulsetNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.StatefulsetNested editStatefulset() {
        return withNewStatefulsetLike(getStatefulset());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.StatefulsetNested editOrNewStatefulset() {
        return withNewStatefulsetLike(getStatefulset() != null ? getStatefulset(): new io.strimzi.api.kafka.model.template.StatefulSetTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.StatefulsetNested editOrNewStatefulsetLike(io.strimzi.api.kafka.model.template.StatefulSetTemplate item) {
        return withNewStatefulsetLike(getStatefulset() != null ? getStatefulset(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildPod instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.PodTemplate getPod() {
        return this.pod!=null?this.pod.build():null;
    }

    public io.strimzi.api.kafka.model.template.PodTemplate buildPod() {
        return this.pod!=null?this.pod.build():null;
    }

    public A withPod(io.strimzi.api.kafka.model.template.PodTemplate pod) {
        _visitables.get("pod").remove(this.pod);
        if (pod!=null){ this.pod= new io.strimzi.api.kafka.model.template.PodTemplateBuilder(pod); _visitables.get("pod").add(this.pod);} return (A) this;
    }

    public java.lang.Boolean hasPod() {
        return this.pod != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodNested withNewPod() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PodNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodNested withNewPodLike(io.strimzi.api.kafka.model.template.PodTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PodNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodNested editPod() {
        return withNewPodLike(getPod());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodNested editOrNewPod() {
        return withNewPodLike(getPod() != null ? getPod(): new io.strimzi.api.kafka.model.template.PodTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodNested editOrNewPodLike(io.strimzi.api.kafka.model.template.PodTemplate item) {
        return withNewPodLike(getPod() != null ? getPod(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildBootstrapService instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.InternalServiceTemplate getBootstrapService() {
        return this.bootstrapService!=null?this.bootstrapService.build():null;
    }

    public io.strimzi.api.kafka.model.template.InternalServiceTemplate buildBootstrapService() {
        return this.bootstrapService!=null?this.bootstrapService.build():null;
    }

    public A withBootstrapService(io.strimzi.api.kafka.model.template.InternalServiceTemplate bootstrapService) {
        _visitables.get("bootstrapService").remove(this.bootstrapService);
        if (bootstrapService!=null){ this.bootstrapService= new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder(bootstrapService); _visitables.get("bootstrapService").add(this.bootstrapService);} return (A) this;
    }

    public java.lang.Boolean hasBootstrapService() {
        return this.bootstrapService != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BootstrapServiceNested withNewBootstrapService() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.BootstrapServiceNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BootstrapServiceNested withNewBootstrapServiceLike(io.strimzi.api.kafka.model.template.InternalServiceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.BootstrapServiceNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BootstrapServiceNested editBootstrapService() {
        return withNewBootstrapServiceLike(getBootstrapService());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BootstrapServiceNested editOrNewBootstrapService() {
        return withNewBootstrapServiceLike(getBootstrapService() != null ? getBootstrapService(): new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BootstrapServiceNested editOrNewBootstrapServiceLike(io.strimzi.api.kafka.model.template.InternalServiceTemplate item) {
        return withNewBootstrapServiceLike(getBootstrapService() != null ? getBootstrapService(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildBrokersService instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.InternalServiceTemplate getBrokersService() {
        return this.brokersService!=null?this.brokersService.build():null;
    }

    public io.strimzi.api.kafka.model.template.InternalServiceTemplate buildBrokersService() {
        return this.brokersService!=null?this.brokersService.build():null;
    }

    public A withBrokersService(io.strimzi.api.kafka.model.template.InternalServiceTemplate brokersService) {
        _visitables.get("brokersService").remove(this.brokersService);
        if (brokersService!=null){ this.brokersService= new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder(brokersService); _visitables.get("brokersService").add(this.brokersService);} return (A) this;
    }

    public java.lang.Boolean hasBrokersService() {
        return this.brokersService != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BrokersServiceNested withNewBrokersService() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.BrokersServiceNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BrokersServiceNested withNewBrokersServiceLike(io.strimzi.api.kafka.model.template.InternalServiceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.BrokersServiceNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BrokersServiceNested editBrokersService() {
        return withNewBrokersServiceLike(getBrokersService());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BrokersServiceNested editOrNewBrokersService() {
        return withNewBrokersServiceLike(getBrokersService() != null ? getBrokersService(): new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BrokersServiceNested editOrNewBrokersServiceLike(io.strimzi.api.kafka.model.template.InternalServiceTemplate item) {
        return withNewBrokersServiceLike(getBrokersService() != null ? getBrokersService(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildExternalBootstrapService instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getExternalBootstrapService() {
        return this.externalBootstrapService!=null?this.externalBootstrapService.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildExternalBootstrapService() {
        return this.externalBootstrapService!=null?this.externalBootstrapService.build():null;
    }

    public A withExternalBootstrapService(io.strimzi.api.kafka.model.template.ResourceTemplate externalBootstrapService) {
        _visitables.get("externalBootstrapService").remove(this.externalBootstrapService);
        if (externalBootstrapService!=null){ this.externalBootstrapService= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(externalBootstrapService); _visitables.get("externalBootstrapService").add(this.externalBootstrapService);} return (A) this;
    }

    public java.lang.Boolean hasExternalBootstrapService() {
        return this.externalBootstrapService != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapServiceNested withNewExternalBootstrapService() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ExternalBootstrapServiceNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapServiceNested withNewExternalBootstrapServiceLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ExternalBootstrapServiceNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapServiceNested editExternalBootstrapService() {
        return withNewExternalBootstrapServiceLike(getExternalBootstrapService());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapServiceNested editOrNewExternalBootstrapService() {
        return withNewExternalBootstrapServiceLike(getExternalBootstrapService() != null ? getExternalBootstrapService(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapServiceNested editOrNewExternalBootstrapServiceLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewExternalBootstrapServiceLike(getExternalBootstrapService() != null ? getExternalBootstrapService(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildPerPodService instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getPerPodService() {
        return this.perPodService!=null?this.perPodService.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildPerPodService() {
        return this.perPodService!=null?this.perPodService.build():null;
    }

    public A withPerPodService(io.strimzi.api.kafka.model.template.ResourceTemplate perPodService) {
        _visitables.get("perPodService").remove(this.perPodService);
        if (perPodService!=null){ this.perPodService= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(perPodService); _visitables.get("perPodService").add(this.perPodService);} return (A) this;
    }

    public java.lang.Boolean hasPerPodService() {
        return this.perPodService != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodServiceNested withNewPerPodService() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PerPodServiceNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodServiceNested withNewPerPodServiceLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PerPodServiceNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodServiceNested editPerPodService() {
        return withNewPerPodServiceLike(getPerPodService());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodServiceNested editOrNewPerPodService() {
        return withNewPerPodServiceLike(getPerPodService() != null ? getPerPodService(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodServiceNested editOrNewPerPodServiceLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewPerPodServiceLike(getPerPodService() != null ? getPerPodService(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildExternalBootstrapRoute instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getExternalBootstrapRoute() {
        return this.externalBootstrapRoute!=null?this.externalBootstrapRoute.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildExternalBootstrapRoute() {
        return this.externalBootstrapRoute!=null?this.externalBootstrapRoute.build():null;
    }

    public A withExternalBootstrapRoute(io.strimzi.api.kafka.model.template.ResourceTemplate externalBootstrapRoute) {
        _visitables.get("externalBootstrapRoute").remove(this.externalBootstrapRoute);
        if (externalBootstrapRoute!=null){ this.externalBootstrapRoute= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(externalBootstrapRoute); _visitables.get("externalBootstrapRoute").add(this.externalBootstrapRoute);} return (A) this;
    }

    public java.lang.Boolean hasExternalBootstrapRoute() {
        return this.externalBootstrapRoute != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapRouteNested withNewExternalBootstrapRoute() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ExternalBootstrapRouteNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapRouteNested withNewExternalBootstrapRouteLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ExternalBootstrapRouteNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapRouteNested editExternalBootstrapRoute() {
        return withNewExternalBootstrapRouteLike(getExternalBootstrapRoute());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapRouteNested editOrNewExternalBootstrapRoute() {
        return withNewExternalBootstrapRouteLike(getExternalBootstrapRoute() != null ? getExternalBootstrapRoute(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapRouteNested editOrNewExternalBootstrapRouteLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewExternalBootstrapRouteLike(getExternalBootstrapRoute() != null ? getExternalBootstrapRoute(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildPerPodRoute instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getPerPodRoute() {
        return this.perPodRoute!=null?this.perPodRoute.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildPerPodRoute() {
        return this.perPodRoute!=null?this.perPodRoute.build():null;
    }

    public A withPerPodRoute(io.strimzi.api.kafka.model.template.ResourceTemplate perPodRoute) {
        _visitables.get("perPodRoute").remove(this.perPodRoute);
        if (perPodRoute!=null){ this.perPodRoute= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(perPodRoute); _visitables.get("perPodRoute").add(this.perPodRoute);} return (A) this;
    }

    public java.lang.Boolean hasPerPodRoute() {
        return this.perPodRoute != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodRouteNested withNewPerPodRoute() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PerPodRouteNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodRouteNested withNewPerPodRouteLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PerPodRouteNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodRouteNested editPerPodRoute() {
        return withNewPerPodRouteLike(getPerPodRoute());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodRouteNested editOrNewPerPodRoute() {
        return withNewPerPodRouteLike(getPerPodRoute() != null ? getPerPodRoute(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodRouteNested editOrNewPerPodRouteLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewPerPodRouteLike(getPerPodRoute() != null ? getPerPodRoute(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildExternalBootstrapIngress instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getExternalBootstrapIngress() {
        return this.externalBootstrapIngress!=null?this.externalBootstrapIngress.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildExternalBootstrapIngress() {
        return this.externalBootstrapIngress!=null?this.externalBootstrapIngress.build():null;
    }

    public A withExternalBootstrapIngress(io.strimzi.api.kafka.model.template.ResourceTemplate externalBootstrapIngress) {
        _visitables.get("externalBootstrapIngress").remove(this.externalBootstrapIngress);
        if (externalBootstrapIngress!=null){ this.externalBootstrapIngress= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(externalBootstrapIngress); _visitables.get("externalBootstrapIngress").add(this.externalBootstrapIngress);} return (A) this;
    }

    public java.lang.Boolean hasExternalBootstrapIngress() {
        return this.externalBootstrapIngress != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapIngressNested withNewExternalBootstrapIngress() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ExternalBootstrapIngressNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapIngressNested withNewExternalBootstrapIngressLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ExternalBootstrapIngressNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapIngressNested editExternalBootstrapIngress() {
        return withNewExternalBootstrapIngressLike(getExternalBootstrapIngress());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapIngressNested editOrNewExternalBootstrapIngress() {
        return withNewExternalBootstrapIngressLike(getExternalBootstrapIngress() != null ? getExternalBootstrapIngress(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapIngressNested editOrNewExternalBootstrapIngressLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewExternalBootstrapIngressLike(getExternalBootstrapIngress() != null ? getExternalBootstrapIngress(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildPerPodIngress instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getPerPodIngress() {
        return this.perPodIngress!=null?this.perPodIngress.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildPerPodIngress() {
        return this.perPodIngress!=null?this.perPodIngress.build():null;
    }

    public A withPerPodIngress(io.strimzi.api.kafka.model.template.ResourceTemplate perPodIngress) {
        _visitables.get("perPodIngress").remove(this.perPodIngress);
        if (perPodIngress!=null){ this.perPodIngress= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(perPodIngress); _visitables.get("perPodIngress").add(this.perPodIngress);} return (A) this;
    }

    public java.lang.Boolean hasPerPodIngress() {
        return this.perPodIngress != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodIngressNested withNewPerPodIngress() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PerPodIngressNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodIngressNested withNewPerPodIngressLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PerPodIngressNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodIngressNested editPerPodIngress() {
        return withNewPerPodIngressLike(getPerPodIngress());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodIngressNested editOrNewPerPodIngress() {
        return withNewPerPodIngressLike(getPerPodIngress() != null ? getPerPodIngress(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodIngressNested editOrNewPerPodIngressLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewPerPodIngressLike(getPerPodIngress() != null ? getPerPodIngress(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildPersistentVolumeClaim instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getPersistentVolumeClaim() {
        return this.persistentVolumeClaim!=null?this.persistentVolumeClaim.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildPersistentVolumeClaim() {
        return this.persistentVolumeClaim!=null?this.persistentVolumeClaim.build():null;
    }

    public A withPersistentVolumeClaim(io.strimzi.api.kafka.model.template.ResourceTemplate persistentVolumeClaim) {
        _visitables.get("persistentVolumeClaim").remove(this.persistentVolumeClaim);
        if (persistentVolumeClaim!=null){ this.persistentVolumeClaim= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(persistentVolumeClaim); _visitables.get("persistentVolumeClaim").add(this.persistentVolumeClaim);} return (A) this;
    }

    public java.lang.Boolean hasPersistentVolumeClaim() {
        return this.persistentVolumeClaim != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PersistentVolumeClaimNested withNewPersistentVolumeClaim() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PersistentVolumeClaimNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PersistentVolumeClaimNested withNewPersistentVolumeClaimLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PersistentVolumeClaimNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PersistentVolumeClaimNested editPersistentVolumeClaim() {
        return withNewPersistentVolumeClaimLike(getPersistentVolumeClaim());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PersistentVolumeClaimNested editOrNewPersistentVolumeClaim() {
        return withNewPersistentVolumeClaimLike(getPersistentVolumeClaim() != null ? getPersistentVolumeClaim(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PersistentVolumeClaimNested editOrNewPersistentVolumeClaimLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewPersistentVolumeClaimLike(getPersistentVolumeClaim() != null ? getPersistentVolumeClaim(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildClusterCaCert instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getClusterCaCert() {
        return this.clusterCaCert!=null?this.clusterCaCert.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildClusterCaCert() {
        return this.clusterCaCert!=null?this.clusterCaCert.build():null;
    }

    public A withClusterCaCert(io.strimzi.api.kafka.model.template.ResourceTemplate clusterCaCert) {
        _visitables.get("clusterCaCert").remove(this.clusterCaCert);
        if (clusterCaCert!=null){ this.clusterCaCert= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(clusterCaCert); _visitables.get("clusterCaCert").add(this.clusterCaCert);} return (A) this;
    }

    public java.lang.Boolean hasClusterCaCert() {
        return this.clusterCaCert != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterCaCertNested withNewClusterCaCert() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ClusterCaCertNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterCaCertNested withNewClusterCaCertLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ClusterCaCertNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterCaCertNested editClusterCaCert() {
        return withNewClusterCaCertLike(getClusterCaCert());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterCaCertNested editOrNewClusterCaCert() {
        return withNewClusterCaCertLike(getClusterCaCert() != null ? getClusterCaCert(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterCaCertNested editOrNewClusterCaCertLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewClusterCaCertLike(getClusterCaCert() != null ? getClusterCaCert(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildPodDisruptionBudget instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplate getPodDisruptionBudget() {
        return this.podDisruptionBudget!=null?this.podDisruptionBudget.build():null;
    }

    public io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplate buildPodDisruptionBudget() {
        return this.podDisruptionBudget!=null?this.podDisruptionBudget.build():null;
    }

    public A withPodDisruptionBudget(io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplate podDisruptionBudget) {
        _visitables.get("podDisruptionBudget").remove(this.podDisruptionBudget);
        if (podDisruptionBudget!=null){ this.podDisruptionBudget= new io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateBuilder(podDisruptionBudget); _visitables.get("podDisruptionBudget").add(this.podDisruptionBudget);} return (A) this;
    }

    public java.lang.Boolean hasPodDisruptionBudget() {
        return this.podDisruptionBudget != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodDisruptionBudgetNested withNewPodDisruptionBudget() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PodDisruptionBudgetNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodDisruptionBudgetNested withNewPodDisruptionBudgetLike(io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.PodDisruptionBudgetNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodDisruptionBudgetNested editPodDisruptionBudget() {
        return withNewPodDisruptionBudgetLike(getPodDisruptionBudget());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodDisruptionBudgetNested editOrNewPodDisruptionBudget() {
        return withNewPodDisruptionBudgetLike(getPodDisruptionBudget() != null ? getPodDisruptionBudget(): new io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodDisruptionBudgetNested editOrNewPodDisruptionBudgetLike(io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplate item) {
        return withNewPodDisruptionBudgetLike(getPodDisruptionBudget() != null ? getPodDisruptionBudget(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildKafkaContainer instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ContainerTemplate getKafkaContainer() {
        return this.kafkaContainer!=null?this.kafkaContainer.build():null;
    }

    public io.strimzi.api.kafka.model.template.ContainerTemplate buildKafkaContainer() {
        return this.kafkaContainer!=null?this.kafkaContainer.build():null;
    }

    public A withKafkaContainer(io.strimzi.api.kafka.model.template.ContainerTemplate kafkaContainer) {
        _visitables.get("kafkaContainer").remove(this.kafkaContainer);
        if (kafkaContainer!=null){ this.kafkaContainer= new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder(kafkaContainer); _visitables.get("kafkaContainer").add(this.kafkaContainer);} return (A) this;
    }

    public java.lang.Boolean hasKafkaContainer() {
        return this.kafkaContainer != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.KafkaContainerNested withNewKafkaContainer() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.KafkaContainerNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.KafkaContainerNested withNewKafkaContainerLike(io.strimzi.api.kafka.model.template.ContainerTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.KafkaContainerNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.KafkaContainerNested editKafkaContainer() {
        return withNewKafkaContainerLike(getKafkaContainer());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.KafkaContainerNested editOrNewKafkaContainer() {
        return withNewKafkaContainerLike(getKafkaContainer() != null ? getKafkaContainer(): new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.KafkaContainerNested editOrNewKafkaContainerLike(io.strimzi.api.kafka.model.template.ContainerTemplate item) {
        return withNewKafkaContainerLike(getKafkaContainer() != null ? getKafkaContainer(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildInitContainer instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ContainerTemplate getInitContainer() {
        return this.initContainer!=null?this.initContainer.build():null;
    }

    public io.strimzi.api.kafka.model.template.ContainerTemplate buildInitContainer() {
        return this.initContainer!=null?this.initContainer.build():null;
    }

    public A withInitContainer(io.strimzi.api.kafka.model.template.ContainerTemplate initContainer) {
        _visitables.get("initContainer").remove(this.initContainer);
        if (initContainer!=null){ this.initContainer= new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder(initContainer); _visitables.get("initContainer").add(this.initContainer);} return (A) this;
    }

    public java.lang.Boolean hasInitContainer() {
        return this.initContainer != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.InitContainerNested withNewInitContainer() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.InitContainerNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.InitContainerNested withNewInitContainerLike(io.strimzi.api.kafka.model.template.ContainerTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.InitContainerNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.InitContainerNested editInitContainer() {
        return withNewInitContainerLike(getInitContainer());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.InitContainerNested editOrNewInitContainer() {
        return withNewInitContainerLike(getInitContainer() != null ? getInitContainer(): new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.InitContainerNested editOrNewInitContainerLike(io.strimzi.api.kafka.model.template.ContainerTemplate item) {
        return withNewInitContainerLike(getInitContainer() != null ? getInitContainer(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildClusterRoleBinding instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getClusterRoleBinding() {
        return this.clusterRoleBinding!=null?this.clusterRoleBinding.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildClusterRoleBinding() {
        return this.clusterRoleBinding!=null?this.clusterRoleBinding.build():null;
    }

    public A withClusterRoleBinding(io.strimzi.api.kafka.model.template.ResourceTemplate clusterRoleBinding) {
        _visitables.get("clusterRoleBinding").remove(this.clusterRoleBinding);
        if (clusterRoleBinding!=null){ this.clusterRoleBinding= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(clusterRoleBinding); _visitables.get("clusterRoleBinding").add(this.clusterRoleBinding);} return (A) this;
    }

    public java.lang.Boolean hasClusterRoleBinding() {
        return this.clusterRoleBinding != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterRoleBindingNested withNewClusterRoleBinding() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ClusterRoleBindingNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterRoleBindingNested withNewClusterRoleBindingLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ClusterRoleBindingNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterRoleBindingNested editClusterRoleBinding() {
        return withNewClusterRoleBindingLike(getClusterRoleBinding());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterRoleBindingNested editOrNewClusterRoleBinding() {
        return withNewClusterRoleBindingLike(getClusterRoleBinding() != null ? getClusterRoleBinding(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterRoleBindingNested editOrNewClusterRoleBindingLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewClusterRoleBindingLike(getClusterRoleBinding() != null ? getClusterRoleBinding(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildServiceAccount instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getServiceAccount() {
        return this.serviceAccount!=null?this.serviceAccount.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildServiceAccount() {
        return this.serviceAccount!=null?this.serviceAccount.build():null;
    }

    public A withServiceAccount(io.strimzi.api.kafka.model.template.ResourceTemplate serviceAccount) {
        _visitables.get("serviceAccount").remove(this.serviceAccount);
        if (serviceAccount!=null){ this.serviceAccount= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(serviceAccount); _visitables.get("serviceAccount").add(this.serviceAccount);} return (A) this;
    }

    public java.lang.Boolean hasServiceAccount() {
        return this.serviceAccount != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ServiceAccountNested withNewServiceAccount() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ServiceAccountNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ServiceAccountNested withNewServiceAccountLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.ServiceAccountNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ServiceAccountNested editServiceAccount() {
        return withNewServiceAccountLike(getServiceAccount());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ServiceAccountNested editOrNewServiceAccount() {
        return withNewServiceAccountLike(getServiceAccount() != null ? getServiceAccount(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ServiceAccountNested editOrNewServiceAccountLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewServiceAccountLike(getServiceAccount() != null ? getServiceAccount(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildJmxSecret instead.
     * @return The buildable object.
     */
        public io.strimzi.api.kafka.model.template.ResourceTemplate getJmxSecret() {
        return this.jmxSecret!=null?this.jmxSecret.build():null;
    }

    public io.strimzi.api.kafka.model.template.ResourceTemplate buildJmxSecret() {
        return this.jmxSecret!=null?this.jmxSecret.build():null;
    }

    public A withJmxSecret(io.strimzi.api.kafka.model.template.ResourceTemplate jmxSecret) {
        _visitables.get("jmxSecret").remove(this.jmxSecret);
        if (jmxSecret!=null){ this.jmxSecret= new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(jmxSecret); _visitables.get("jmxSecret").add(this.jmxSecret);} return (A) this;
    }

    public java.lang.Boolean hasJmxSecret() {
        return this.jmxSecret != null;
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.JmxSecretNested withNewJmxSecret() {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.JmxSecretNestedImpl();
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.JmxSecretNested withNewJmxSecretLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return new io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluentImpl.JmxSecretNestedImpl(item);
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.JmxSecretNested editJmxSecret() {
        return withNewJmxSecretLike(getJmxSecret());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.JmxSecretNested editOrNewJmxSecret() {
        return withNewJmxSecretLike(getJmxSecret() != null ? getJmxSecret(): new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder().build());
    }

    public io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.JmxSecretNested editOrNewJmxSecretLike(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
        return withNewJmxSecretLike(getJmxSecret() != null ? getJmxSecret(): item);
    }

    public boolean equals(java.lang.Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        KafkaClusterTemplateFluentImpl that = (KafkaClusterTemplateFluentImpl) o;
        if (statefulset != null ? !statefulset.equals(that.statefulset) :that.statefulset != null) return false;
        if (pod != null ? !pod.equals(that.pod) :that.pod != null) return false;
        if (bootstrapService != null ? !bootstrapService.equals(that.bootstrapService) :that.bootstrapService != null) return false;
        if (brokersService != null ? !brokersService.equals(that.brokersService) :that.brokersService != null) return false;
        if (externalBootstrapService != null ? !externalBootstrapService.equals(that.externalBootstrapService) :that.externalBootstrapService != null) return false;
        if (perPodService != null ? !perPodService.equals(that.perPodService) :that.perPodService != null) return false;
        if (externalBootstrapRoute != null ? !externalBootstrapRoute.equals(that.externalBootstrapRoute) :that.externalBootstrapRoute != null) return false;
        if (perPodRoute != null ? !perPodRoute.equals(that.perPodRoute) :that.perPodRoute != null) return false;
        if (externalBootstrapIngress != null ? !externalBootstrapIngress.equals(that.externalBootstrapIngress) :that.externalBootstrapIngress != null) return false;
        if (perPodIngress != null ? !perPodIngress.equals(that.perPodIngress) :that.perPodIngress != null) return false;
        if (persistentVolumeClaim != null ? !persistentVolumeClaim.equals(that.persistentVolumeClaim) :that.persistentVolumeClaim != null) return false;
        if (clusterCaCert != null ? !clusterCaCert.equals(that.clusterCaCert) :that.clusterCaCert != null) return false;
        if (podDisruptionBudget != null ? !podDisruptionBudget.equals(that.podDisruptionBudget) :that.podDisruptionBudget != null) return false;
        if (kafkaContainer != null ? !kafkaContainer.equals(that.kafkaContainer) :that.kafkaContainer != null) return false;
        if (initContainer != null ? !initContainer.equals(that.initContainer) :that.initContainer != null) return false;
        if (clusterRoleBinding != null ? !clusterRoleBinding.equals(that.clusterRoleBinding) :that.clusterRoleBinding != null) return false;
        if (serviceAccount != null ? !serviceAccount.equals(that.serviceAccount) :that.serviceAccount != null) return false;
        if (jmxSecret != null ? !jmxSecret.equals(that.jmxSecret) :that.jmxSecret != null) return false;
        return true;
    }

    public int hashCode() {
        return java.util.Objects.hash(statefulset,  pod,  bootstrapService,  brokersService,  externalBootstrapService,  perPodService,  externalBootstrapRoute,  perPodRoute,  externalBootstrapIngress,  perPodIngress,  persistentVolumeClaim,  clusterCaCert,  podDisruptionBudget,  kafkaContainer,  initContainer,  clusterRoleBinding,  serviceAccount,  jmxSecret,  super.hashCode());
    }

      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class StatefulsetNestedImpl extends io.strimzi.api.kafka.model.template.StatefulSetTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.StatefulsetNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.StatefulSetTemplateBuilder builder;

            StatefulsetNestedImpl(io.strimzi.api.kafka.model.template.StatefulSetTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.StatefulSetTemplateBuilder(this, item);
                        
            }

            StatefulsetNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.StatefulSetTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withStatefulset(builder.build());
            }

            public N endStatefulset() {
                return and();
            }
    }


      
  /**
   * Representation of a pod template for Strimzi resources.
   */
  public class PodNestedImpl extends io.strimzi.api.kafka.model.template.PodTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.PodTemplateBuilder builder;

            PodNestedImpl(io.strimzi.api.kafka.model.template.PodTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.PodTemplateBuilder(this, item);
                        
            }

            PodNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.PodTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withPod(builder.build());
            }

            public N endPod() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi internal services.
   * It contains additional values applicable to internal services..
   */
  public class BootstrapServiceNestedImpl extends io.strimzi.api.kafka.model.template.InternalServiceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BootstrapServiceNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder builder;

            BootstrapServiceNestedImpl(io.strimzi.api.kafka.model.template.InternalServiceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder(this, item);
                        
            }

            BootstrapServiceNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withBootstrapService(builder.build());
            }

            public N endBootstrapService() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi internal services.
   * It contains additional values applicable to internal services..
   */
  public class BrokersServiceNestedImpl extends io.strimzi.api.kafka.model.template.InternalServiceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.BrokersServiceNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder builder;

            BrokersServiceNestedImpl(io.strimzi.api.kafka.model.template.InternalServiceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder(this, item);
                        
            }

            BrokersServiceNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.InternalServiceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withBrokersService(builder.build());
            }

            public N endBrokersService() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class ExternalBootstrapServiceNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapServiceNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            ExternalBootstrapServiceNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            ExternalBootstrapServiceNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withExternalBootstrapService(builder.build());
            }

            public N endExternalBootstrapService() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class PerPodServiceNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodServiceNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            PerPodServiceNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            PerPodServiceNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withPerPodService(builder.build());
            }

            public N endPerPodService() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class ExternalBootstrapRouteNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapRouteNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            ExternalBootstrapRouteNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            ExternalBootstrapRouteNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withExternalBootstrapRoute(builder.build());
            }

            public N endExternalBootstrapRoute() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class PerPodRouteNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodRouteNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            PerPodRouteNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            PerPodRouteNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withPerPodRoute(builder.build());
            }

            public N endPerPodRoute() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class ExternalBootstrapIngressNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ExternalBootstrapIngressNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            ExternalBootstrapIngressNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            ExternalBootstrapIngressNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withExternalBootstrapIngress(builder.build());
            }

            public N endExternalBootstrapIngress() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class PerPodIngressNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PerPodIngressNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            PerPodIngressNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            PerPodIngressNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withPerPodIngress(builder.build());
            }

            public N endPerPodIngress() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class PersistentVolumeClaimNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PersistentVolumeClaimNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            PersistentVolumeClaimNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            PersistentVolumeClaimNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withPersistentVolumeClaim(builder.build());
            }

            public N endPersistentVolumeClaim() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class ClusterCaCertNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterCaCertNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            ClusterCaCertNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            ClusterCaCertNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withClusterCaCert(builder.build());
            }

            public N endClusterCaCert() {
                return and();
            }
    }


      
  /**
   * Representation of a Pod disruption Budget template template for Strimzi resources.
   */
  public class PodDisruptionBudgetNestedImpl extends io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.PodDisruptionBudgetNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateBuilder builder;

            PodDisruptionBudgetNestedImpl(io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateBuilder(this, item);
                        
            }

            PodDisruptionBudgetNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.PodDisruptionBudgetTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withPodDisruptionBudget(builder.build());
            }

            public N endPodDisruptionBudget() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi containers.
   */
  public class KafkaContainerNestedImpl extends io.strimzi.api.kafka.model.template.ContainerTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.KafkaContainerNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ContainerTemplateBuilder builder;

            KafkaContainerNestedImpl(io.strimzi.api.kafka.model.template.ContainerTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder(this, item);
                        
            }

            KafkaContainerNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withKafkaContainer(builder.build());
            }

            public N endKafkaContainer() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi containers.
   */
  public class InitContainerNestedImpl extends io.strimzi.api.kafka.model.template.ContainerTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.InitContainerNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ContainerTemplateBuilder builder;

            InitContainerNestedImpl(io.strimzi.api.kafka.model.template.ContainerTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder(this, item);
                        
            }

            InitContainerNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ContainerTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withInitContainer(builder.build());
            }

            public N endInitContainer() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class ClusterRoleBindingNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ClusterRoleBindingNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            ClusterRoleBindingNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            ClusterRoleBindingNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withClusterRoleBinding(builder.build());
            }

            public N endClusterRoleBinding() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class ServiceAccountNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.ServiceAccountNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            ServiceAccountNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            ServiceAccountNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withServiceAccount(builder.build());
            }

            public N endServiceAccount() {
                return and();
            }
    }


      
  /**
   * Representation of a template for Strimzi resources.
   */
  public class JmxSecretNestedImpl extends io.strimzi.api.kafka.model.template.ResourceTemplateFluentImpl> implements io.strimzi.api.kafka.model.template.KafkaClusterTemplateFluent.JmxSecretNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.strimzi.api.kafka.model.template.ResourceTemplateBuilder builder;

            JmxSecretNestedImpl(io.strimzi.api.kafka.model.template.ResourceTemplate item) {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this, item);
                        
            }

            JmxSecretNestedImpl() {
                this.builder = new io.strimzi.api.kafka.model.template.ResourceTemplateBuilder(this);
                        
            }

            public N and() {
                return (N) KafkaClusterTemplateFluentImpl.this.withJmxSecret(builder.build());
            }

            public N endJmxSecret() {
                return and();
            }
    }


}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy