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

io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluentImpl Maven / Gradle / Ivy

There is a newer version: 7.0.1
Show newest version
package io.fabric8.kubernetes.api.model.flowcontrol.v1beta1;

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

public class LimitedPriorityLevelConfigurationFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent {

    private java.lang.Integer assuredConcurrencyShares;
    private io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseBuilder limitResponse;

    public LimitedPriorityLevelConfigurationFluentImpl() {
    }

    public LimitedPriorityLevelConfigurationFluentImpl(io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfiguration instance) {
        this.withAssuredConcurrencyShares(instance.getAssuredConcurrencyShares()); 
        this.withLimitResponse(instance.getLimitResponse()); 
    }

    public java.lang.Integer getAssuredConcurrencyShares() {
        return this.assuredConcurrencyShares;
    }

    public A withAssuredConcurrencyShares(java.lang.Integer assuredConcurrencyShares) {
        this.assuredConcurrencyShares=assuredConcurrencyShares; return (A) this;
    }

    public java.lang.Boolean hasAssuredConcurrencyShares() {
        return this.assuredConcurrencyShares != null;
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildLimitResponse instead.
     * @return The buildable object.
     */
        public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponse getLimitResponse() {
        return this.limitResponse!=null?this.limitResponse.build():null;
    }

    public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponse buildLimitResponse() {
        return this.limitResponse!=null?this.limitResponse.build():null;
    }

    public A withLimitResponse(io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponse limitResponse) {
        _visitables.get("limitResponse").remove(this.limitResponse);
        if (limitResponse!=null){ this.limitResponse= new io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseBuilder(limitResponse); _visitables.get("limitResponse").add(this.limitResponse);} return (A) this;
    }

    public java.lang.Boolean hasLimitResponse() {
        return this.limitResponse != null;
    }

    public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent.LimitResponseNested withNewLimitResponse() {
        return new io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluentImpl.LimitResponseNestedImpl();
    }

    public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent.LimitResponseNested withNewLimitResponseLike(io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponse item) {
        return new io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluentImpl.LimitResponseNestedImpl(item);
    }

    public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent.LimitResponseNested editLimitResponse() {
        return withNewLimitResponseLike(getLimitResponse());
    }

    public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent.LimitResponseNested editOrNewLimitResponse() {
        return withNewLimitResponseLike(getLimitResponse() != null ? getLimitResponse(): new io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseBuilder().build());
    }

    public io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent.LimitResponseNested editOrNewLimitResponseLike(io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponse item) {
        return withNewLimitResponseLike(getLimitResponse() != null ? getLimitResponse(): item);
    }

    public boolean equals(java.lang.Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        LimitedPriorityLevelConfigurationFluentImpl that = (LimitedPriorityLevelConfigurationFluentImpl) o;
        if (assuredConcurrencyShares != null ? !assuredConcurrencyShares.equals(that.assuredConcurrencyShares) :that.assuredConcurrencyShares != null) return false;
        if (limitResponse != null ? !limitResponse.equals(that.limitResponse) :that.limitResponse != null) return false;
        return true;
    }

    public int hashCode() {
        return java.util.Objects.hash(assuredConcurrencyShares,  limitResponse,  super.hashCode());
    }

    public class LimitResponseNestedImpl extends io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseFluentImpl> implements io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitedPriorityLevelConfigurationFluent.LimitResponseNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseBuilder builder;

            LimitResponseNestedImpl(io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponse item) {
                this.builder = new io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseBuilder(this, item);
                        
            }

            LimitResponseNestedImpl() {
                this.builder = new io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.LimitResponseBuilder(this);
                        
            }

            public N and() {
                return (N) LimitedPriorityLevelConfigurationFluentImpl.this.withLimitResponse(builder.build());
            }

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


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy