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

io.kubernetes.client.models.V1beta1CustomResourceDefinitionSpecFluentImpl Maven / Gradle / Ivy

package io.kubernetes.client.models;

import com.google.gson.annotations.SerializedName;
import io.kubernetes.client.fluent.Nested;
import java.util.ArrayList;
import java.lang.String;
import io.kubernetes.client.fluent.Predicate;
import java.lang.Deprecated;
import io.kubernetes.client.fluent.BaseFluent;
import java.util.List;
import java.lang.Boolean;
import java.util.Collection;
import java.lang.Object;

public class V1beta1CustomResourceDefinitionSpecFluentImpl> extends io.kubernetes.client.fluent.BaseFluent implements V1beta1CustomResourceDefinitionSpecFluent{

    private List additionalPrinterColumns;
    private String group;
    private V1beta1CustomResourceDefinitionNamesBuilder names;
    private String scope;
    private V1beta1CustomResourceSubresourcesBuilder subresources;
    private V1beta1CustomResourceValidationBuilder validation;
    private String version;
    private List versions;

    public V1beta1CustomResourceDefinitionSpecFluentImpl(){
    }
    public V1beta1CustomResourceDefinitionSpecFluentImpl(V1beta1CustomResourceDefinitionSpec instance){
            this.withAdditionalPrinterColumns(instance.getAdditionalPrinterColumns());

            this.withGroup(instance.getGroup());

            this.withNames(instance.getNames());

            this.withScope(instance.getScope());

            this.withSubresources(instance.getSubresources());

            this.withValidation(instance.getValidation());

            this.withVersion(instance.getVersion());

            this.withVersions(instance.getVersions());

    }

    public A addToAdditionalPrinterColumns(int index,V1beta1CustomResourceColumnDefinition item){
            if (this.additionalPrinterColumns == null) {this.additionalPrinterColumns = new ArrayList();}
            V1beta1CustomResourceColumnDefinitionBuilder builder = new V1beta1CustomResourceColumnDefinitionBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.additionalPrinterColumns.add(index >= 0 ? index : additionalPrinterColumns.size(), builder); return (A)this;
    }

    public A setToAdditionalPrinterColumns(int index,V1beta1CustomResourceColumnDefinition item){
            if (this.additionalPrinterColumns == null) {this.additionalPrinterColumns = new ArrayList();}
            V1beta1CustomResourceColumnDefinitionBuilder builder = new V1beta1CustomResourceColumnDefinitionBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= additionalPrinterColumns.size()) { additionalPrinterColumns.add(builder); } else { additionalPrinterColumns.set(index, builder);}
             return (A)this;
    }

    public A addToAdditionalPrinterColumns(V1beta1CustomResourceColumnDefinition... items){
            if (this.additionalPrinterColumns == null) {this.additionalPrinterColumns = new ArrayList();}
            for (V1beta1CustomResourceColumnDefinition item : items) {V1beta1CustomResourceColumnDefinitionBuilder builder = new V1beta1CustomResourceColumnDefinitionBuilder(item);_visitables.add(builder);this.additionalPrinterColumns.add(builder);} return (A)this;
    }

    public A addAllToAdditionalPrinterColumns(Collection items){
            if (this.additionalPrinterColumns == null) {this.additionalPrinterColumns = new ArrayList();}
            for (V1beta1CustomResourceColumnDefinition item : items) {V1beta1CustomResourceColumnDefinitionBuilder builder = new V1beta1CustomResourceColumnDefinitionBuilder(item);_visitables.add(builder);this.additionalPrinterColumns.add(builder);} return (A)this;
    }

    public A removeFromAdditionalPrinterColumns(V1beta1CustomResourceColumnDefinition... items){
            for (V1beta1CustomResourceColumnDefinition item : items) {V1beta1CustomResourceColumnDefinitionBuilder builder = new V1beta1CustomResourceColumnDefinitionBuilder(item);_visitables.remove(builder);if (this.additionalPrinterColumns != null) {this.additionalPrinterColumns.remove(builder);}} return (A)this;
    }

    public A removeAllFromAdditionalPrinterColumns(Collection items){
            for (V1beta1CustomResourceColumnDefinition item : items) {V1beta1CustomResourceColumnDefinitionBuilder builder = new V1beta1CustomResourceColumnDefinitionBuilder(item);_visitables.remove(builder);if (this.additionalPrinterColumns != null) {this.additionalPrinterColumns.remove(builder);}} return (A)this;
    }

    
/**
 * This method has been deprecated, please use method buildAdditionalPrinterColumns instead.
 */
@Deprecated public List getAdditionalPrinterColumns(){
            return build(additionalPrinterColumns);
    }

    public List buildAdditionalPrinterColumns(){
            return build(additionalPrinterColumns);
    }

    public V1beta1CustomResourceColumnDefinition buildAdditionalPrinterColumn(int index){
            return this.additionalPrinterColumns.get(index).build();
    }

    public V1beta1CustomResourceColumnDefinition buildFirstAdditionalPrinterColumn(){
            return this.additionalPrinterColumns.get(0).build();
    }

    public V1beta1CustomResourceColumnDefinition buildLastAdditionalPrinterColumn(){
            return this.additionalPrinterColumns.get(additionalPrinterColumns.size() - 1).build();
    }

    public V1beta1CustomResourceColumnDefinition buildMatchingAdditionalPrinterColumn(io.kubernetes.client.fluent.Predicate predicate){
            for (V1beta1CustomResourceColumnDefinitionBuilder item: additionalPrinterColumns) { if(predicate.apply(item)){return item.build();} } return null;
    }

    public A withAdditionalPrinterColumns(List additionalPrinterColumns){
            if (this.additionalPrinterColumns != null) { _visitables.removeAll(this.additionalPrinterColumns);}
            if (additionalPrinterColumns != null) {this.additionalPrinterColumns = new ArrayList(); for (V1beta1CustomResourceColumnDefinition item : additionalPrinterColumns){this.addToAdditionalPrinterColumns(item);}} else { this.additionalPrinterColumns = null;} return (A) this;
    }

    public A withAdditionalPrinterColumns(V1beta1CustomResourceColumnDefinition... additionalPrinterColumns){
            this.additionalPrinterColumns.clear(); if (additionalPrinterColumns != null) {for (V1beta1CustomResourceColumnDefinition item :additionalPrinterColumns){ this.addToAdditionalPrinterColumns(item);}} return (A) this;
    }

    public Boolean hasAdditionalPrinterColumns(){
            return additionalPrinterColumns != null && !additionalPrinterColumns.isEmpty();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested addNewAdditionalPrinterColumn(){
            return new AdditionalPrinterColumnsNestedImpl();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested addNewAdditionalPrinterColumnLike(V1beta1CustomResourceColumnDefinition item){
            return new AdditionalPrinterColumnsNestedImpl(-1, item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested setNewAdditionalPrinterColumnLike(int index,V1beta1CustomResourceColumnDefinition item){
            return new AdditionalPrinterColumnsNestedImpl(index, item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested editAdditionalPrinterColumn(int index){
            if (additionalPrinterColumns.size() <= index) throw new RuntimeException("Can't edit additionalPrinterColumns. Index exceeds size.");
            return setNewAdditionalPrinterColumnLike(index, buildAdditionalPrinterColumn(index));
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested editFirstAdditionalPrinterColumn(){
            if (additionalPrinterColumns.size() == 0) throw new RuntimeException("Can't edit first additionalPrinterColumns. The list is empty.");
            return setNewAdditionalPrinterColumnLike(0, buildAdditionalPrinterColumn(0));
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested editLastAdditionalPrinterColumn(){
            int index = additionalPrinterColumns.size() - 1;
            if (index < 0) throw new RuntimeException("Can't edit last additionalPrinterColumns. The list is empty.");
            return setNewAdditionalPrinterColumnLike(index, buildAdditionalPrinterColumn(index));
    }

    public V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested editMatchingAdditionalPrinterColumn(io.kubernetes.client.fluent.Predicate predicate){
            int index = -1;
            for (int i=0;i withNewNames(){
            return new NamesNestedImpl();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.NamesNested withNewNamesLike(V1beta1CustomResourceDefinitionNames item){
            return new NamesNestedImpl(item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.NamesNested editNames(){
            return withNewNamesLike(getNames());
    }

    public V1beta1CustomResourceDefinitionSpecFluent.NamesNested editOrNewNames(){
            return withNewNamesLike(getNames() != null ? getNames(): new V1beta1CustomResourceDefinitionNamesBuilder().build());
    }

    public V1beta1CustomResourceDefinitionSpecFluent.NamesNested editOrNewNamesLike(V1beta1CustomResourceDefinitionNames item){
            return withNewNamesLike(getNames() != null ? getNames(): item);
    }

    public String getScope(){
            return this.scope;
    }

    public A withScope(String scope){
            this.scope=scope; return (A) this;
    }

    public Boolean hasScope(){
            return this.scope != null;
    }

    
/**
 * This method has been deprecated, please use method buildSubresources instead.
 */
@Deprecated public V1beta1CustomResourceSubresources getSubresources(){
            return this.subresources!=null?this.subresources.build():null;
    }

    public V1beta1CustomResourceSubresources buildSubresources(){
            return this.subresources!=null?this.subresources.build():null;
    }

    public A withSubresources(V1beta1CustomResourceSubresources subresources){
            _visitables.remove(this.subresources);
            if (subresources!=null){ this.subresources= new V1beta1CustomResourceSubresourcesBuilder(subresources); _visitables.add(this.subresources);} return (A) this;
    }

    public Boolean hasSubresources(){
            return this.subresources != null;
    }

    public V1beta1CustomResourceDefinitionSpecFluent.SubresourcesNested withNewSubresources(){
            return new SubresourcesNestedImpl();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.SubresourcesNested withNewSubresourcesLike(V1beta1CustomResourceSubresources item){
            return new SubresourcesNestedImpl(item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.SubresourcesNested editSubresources(){
            return withNewSubresourcesLike(getSubresources());
    }

    public V1beta1CustomResourceDefinitionSpecFluent.SubresourcesNested editOrNewSubresources(){
            return withNewSubresourcesLike(getSubresources() != null ? getSubresources(): new V1beta1CustomResourceSubresourcesBuilder().build());
    }

    public V1beta1CustomResourceDefinitionSpecFluent.SubresourcesNested editOrNewSubresourcesLike(V1beta1CustomResourceSubresources item){
            return withNewSubresourcesLike(getSubresources() != null ? getSubresources(): item);
    }

    
/**
 * This method has been deprecated, please use method buildValidation instead.
 */
@Deprecated public V1beta1CustomResourceValidation getValidation(){
            return this.validation!=null?this.validation.build():null;
    }

    public V1beta1CustomResourceValidation buildValidation(){
            return this.validation!=null?this.validation.build():null;
    }

    public A withValidation(V1beta1CustomResourceValidation validation){
            _visitables.remove(this.validation);
            if (validation!=null){ this.validation= new V1beta1CustomResourceValidationBuilder(validation); _visitables.add(this.validation);} return (A) this;
    }

    public Boolean hasValidation(){
            return this.validation != null;
    }

    public V1beta1CustomResourceDefinitionSpecFluent.ValidationNested withNewValidation(){
            return new ValidationNestedImpl();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.ValidationNested withNewValidationLike(V1beta1CustomResourceValidation item){
            return new ValidationNestedImpl(item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.ValidationNested editValidation(){
            return withNewValidationLike(getValidation());
    }

    public V1beta1CustomResourceDefinitionSpecFluent.ValidationNested editOrNewValidation(){
            return withNewValidationLike(getValidation() != null ? getValidation(): new V1beta1CustomResourceValidationBuilder().build());
    }

    public V1beta1CustomResourceDefinitionSpecFluent.ValidationNested editOrNewValidationLike(V1beta1CustomResourceValidation item){
            return withNewValidationLike(getValidation() != null ? getValidation(): item);
    }

    public String getVersion(){
            return this.version;
    }

    public A withVersion(String version){
            this.version=version; return (A) this;
    }

    public Boolean hasVersion(){
            return this.version != null;
    }

    public A addToVersions(int index,V1beta1CustomResourceDefinitionVersion item){
            if (this.versions == null) {this.versions = new ArrayList();}
            V1beta1CustomResourceDefinitionVersionBuilder builder = new V1beta1CustomResourceDefinitionVersionBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.versions.add(index >= 0 ? index : versions.size(), builder); return (A)this;
    }

    public A setToVersions(int index,V1beta1CustomResourceDefinitionVersion item){
            if (this.versions == null) {this.versions = new ArrayList();}
            V1beta1CustomResourceDefinitionVersionBuilder builder = new V1beta1CustomResourceDefinitionVersionBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= versions.size()) { versions.add(builder); } else { versions.set(index, builder);}
             return (A)this;
    }

    public A addToVersions(V1beta1CustomResourceDefinitionVersion... items){
            if (this.versions == null) {this.versions = new ArrayList();}
            for (V1beta1CustomResourceDefinitionVersion item : items) {V1beta1CustomResourceDefinitionVersionBuilder builder = new V1beta1CustomResourceDefinitionVersionBuilder(item);_visitables.add(builder);this.versions.add(builder);} return (A)this;
    }

    public A addAllToVersions(Collection items){
            if (this.versions == null) {this.versions = new ArrayList();}
            for (V1beta1CustomResourceDefinitionVersion item : items) {V1beta1CustomResourceDefinitionVersionBuilder builder = new V1beta1CustomResourceDefinitionVersionBuilder(item);_visitables.add(builder);this.versions.add(builder);} return (A)this;
    }

    public A removeFromVersions(V1beta1CustomResourceDefinitionVersion... items){
            for (V1beta1CustomResourceDefinitionVersion item : items) {V1beta1CustomResourceDefinitionVersionBuilder builder = new V1beta1CustomResourceDefinitionVersionBuilder(item);_visitables.remove(builder);if (this.versions != null) {this.versions.remove(builder);}} return (A)this;
    }

    public A removeAllFromVersions(Collection items){
            for (V1beta1CustomResourceDefinitionVersion item : items) {V1beta1CustomResourceDefinitionVersionBuilder builder = new V1beta1CustomResourceDefinitionVersionBuilder(item);_visitables.remove(builder);if (this.versions != null) {this.versions.remove(builder);}} return (A)this;
    }

    
/**
 * This method has been deprecated, please use method buildVersions instead.
 */
@Deprecated public List getVersions(){
            return build(versions);
    }

    public List buildVersions(){
            return build(versions);
    }

    public V1beta1CustomResourceDefinitionVersion buildVersion(int index){
            return this.versions.get(index).build();
    }

    public V1beta1CustomResourceDefinitionVersion buildFirstVersion(){
            return this.versions.get(0).build();
    }

    public V1beta1CustomResourceDefinitionVersion buildLastVersion(){
            return this.versions.get(versions.size() - 1).build();
    }

    public V1beta1CustomResourceDefinitionVersion buildMatchingVersion(io.kubernetes.client.fluent.Predicate predicate){
            for (V1beta1CustomResourceDefinitionVersionBuilder item: versions) { if(predicate.apply(item)){return item.build();} } return null;
    }

    public A withVersions(List versions){
            if (this.versions != null) { _visitables.removeAll(this.versions);}
            if (versions != null) {this.versions = new ArrayList(); for (V1beta1CustomResourceDefinitionVersion item : versions){this.addToVersions(item);}} else { this.versions = null;} return (A) this;
    }

    public A withVersions(V1beta1CustomResourceDefinitionVersion... versions){
            this.versions.clear(); if (versions != null) {for (V1beta1CustomResourceDefinitionVersion item :versions){ this.addToVersions(item);}} return (A) this;
    }

    public Boolean hasVersions(){
            return versions != null && !versions.isEmpty();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested addNewVersion(){
            return new VersionsNestedImpl();
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested addNewVersionLike(V1beta1CustomResourceDefinitionVersion item){
            return new VersionsNestedImpl(-1, item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested setNewVersionLike(int index,V1beta1CustomResourceDefinitionVersion item){
            return new VersionsNestedImpl(index, item);
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested editVersion(int index){
            if (versions.size() <= index) throw new RuntimeException("Can't edit versions. Index exceeds size.");
            return setNewVersionLike(index, buildVersion(index));
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested editFirstVersion(){
            if (versions.size() == 0) throw new RuntimeException("Can't edit first versions. The list is empty.");
            return setNewVersionLike(0, buildVersion(0));
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested editLastVersion(){
            int index = versions.size() - 1;
            if (index < 0) throw new RuntimeException("Can't edit last versions. The list is empty.");
            return setNewVersionLike(index, buildVersion(index));
    }

    public V1beta1CustomResourceDefinitionSpecFluent.VersionsNested editMatchingVersion(io.kubernetes.client.fluent.Predicate predicate){
            int index = -1;
            for (int i=0;i extends V1beta1CustomResourceColumnDefinitionFluentImpl> implements V1beta1CustomResourceDefinitionSpecFluent.AdditionalPrinterColumnsNested,io.kubernetes.client.fluent.Nested{

            private final V1beta1CustomResourceColumnDefinitionBuilder builder;
        private final int index;
    
            AdditionalPrinterColumnsNestedImpl(int index,V1beta1CustomResourceColumnDefinition item){
                    this.index = index;
                    this.builder = new V1beta1CustomResourceColumnDefinitionBuilder(this, item);
            }
            AdditionalPrinterColumnsNestedImpl(){
                    this.index = -1;
                    this.builder = new V1beta1CustomResourceColumnDefinitionBuilder(this);
            }
    
    public N and(){
            return (N) V1beta1CustomResourceDefinitionSpecFluentImpl.this.setToAdditionalPrinterColumns(index, builder.build());
    }
    public N endAdditionalPrinterColumn(){
            return and();
    }

}
    public class NamesNestedImpl extends V1beta1CustomResourceDefinitionNamesFluentImpl> implements V1beta1CustomResourceDefinitionSpecFluent.NamesNested,io.kubernetes.client.fluent.Nested{

            private final V1beta1CustomResourceDefinitionNamesBuilder builder;
    
            NamesNestedImpl(V1beta1CustomResourceDefinitionNames item){
                    this.builder = new V1beta1CustomResourceDefinitionNamesBuilder(this, item);
            }
            NamesNestedImpl(){
                    this.builder = new V1beta1CustomResourceDefinitionNamesBuilder(this);
            }
    
    public N and(){
            return (N) V1beta1CustomResourceDefinitionSpecFluentImpl.this.withNames(builder.build());
    }
    public N endNames(){
            return and();
    }

}
    public class SubresourcesNestedImpl extends V1beta1CustomResourceSubresourcesFluentImpl> implements V1beta1CustomResourceDefinitionSpecFluent.SubresourcesNested,io.kubernetes.client.fluent.Nested{

            private final V1beta1CustomResourceSubresourcesBuilder builder;
    
            SubresourcesNestedImpl(V1beta1CustomResourceSubresources item){
                    this.builder = new V1beta1CustomResourceSubresourcesBuilder(this, item);
            }
            SubresourcesNestedImpl(){
                    this.builder = new V1beta1CustomResourceSubresourcesBuilder(this);
            }
    
    public N and(){
            return (N) V1beta1CustomResourceDefinitionSpecFluentImpl.this.withSubresources(builder.build());
    }
    public N endSubresources(){
            return and();
    }

}
    public class ValidationNestedImpl extends V1beta1CustomResourceValidationFluentImpl> implements V1beta1CustomResourceDefinitionSpecFluent.ValidationNested,io.kubernetes.client.fluent.Nested{

            private final V1beta1CustomResourceValidationBuilder builder;
    
            ValidationNestedImpl(V1beta1CustomResourceValidation item){
                    this.builder = new V1beta1CustomResourceValidationBuilder(this, item);
            }
            ValidationNestedImpl(){
                    this.builder = new V1beta1CustomResourceValidationBuilder(this);
            }
    
    public N and(){
            return (N) V1beta1CustomResourceDefinitionSpecFluentImpl.this.withValidation(builder.build());
    }
    public N endValidation(){
            return and();
    }

}
    public class VersionsNestedImpl extends V1beta1CustomResourceDefinitionVersionFluentImpl> implements V1beta1CustomResourceDefinitionSpecFluent.VersionsNested,io.kubernetes.client.fluent.Nested{

            private final V1beta1CustomResourceDefinitionVersionBuilder builder;
        private final int index;
    
            VersionsNestedImpl(int index,V1beta1CustomResourceDefinitionVersion item){
                    this.index = index;
                    this.builder = new V1beta1CustomResourceDefinitionVersionBuilder(this, item);
            }
            VersionsNestedImpl(){
                    this.index = -1;
                    this.builder = new V1beta1CustomResourceDefinitionVersionBuilder(this);
            }
    
    public N and(){
            return (N) V1beta1CustomResourceDefinitionSpecFluentImpl.this.setToVersions(index, builder.build());
    }
    public N endVersion(){
            return and();
    }

}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy