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

io.fabric8.knative.messaging.v1alpha1.InMemoryChannelSpecFluentImpl Maven / Gradle / Ivy

package io.fabric8.knative.messaging.v1alpha1;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.fabric8.knative.internal.eventing.pkg.apis.duck.v1alpha1.Subscribable;
import io.fabric8.knative.internal.eventing.pkg.apis.duck.v1beta1.DeliverySpecFluentImpl;
import io.fabric8.kubernetes.api.builder.Nested;
import io.fabric8.knative.internal.eventing.pkg.apis.duck.v1alpha1.SubscribableBuilder;
import io.fabric8.knative.internal.eventing.pkg.apis.duck.v1beta1.DeliverySpecBuilder;
import java.lang.Deprecated;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.lang.Object;
import java.lang.Boolean;
import io.fabric8.knative.internal.eventing.pkg.apis.duck.v1alpha1.SubscribableFluentImpl;
import io.fabric8.knative.internal.eventing.pkg.apis.duck.v1beta1.DeliverySpec;

public class InMemoryChannelSpecFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements InMemoryChannelSpecFluent{

    private DeliverySpecBuilder delivery;
    private SubscribableBuilder subscribable;

    public InMemoryChannelSpecFluentImpl(){
    }
    public InMemoryChannelSpecFluentImpl(InMemoryChannelSpec instance){
            this.withDelivery(instance.getDelivery()); 
            this.withSubscribable(instance.getSubscribable()); 
    }

    
/**
 * This method has been deprecated, please use method buildDelivery instead.
 * @return The buildable object.
 */
@Deprecated public DeliverySpec getDelivery(){
            return this.delivery!=null?this.delivery.build():null;
    }

    public DeliverySpec buildDelivery(){
            return this.delivery!=null?this.delivery.build():null;
    }

    public A withDelivery(DeliverySpec delivery){
            _visitables.get("delivery").remove(this.delivery);
            if (delivery!=null){ this.delivery= new DeliverySpecBuilder(delivery); _visitables.get("delivery").add(this.delivery);} return (A) this;
    }

    public Boolean hasDelivery(){
            return this.delivery != null;
    }

    public InMemoryChannelSpecFluent.DeliveryNested withNewDelivery(){
            return new DeliveryNestedImpl();
    }

    public InMemoryChannelSpecFluent.DeliveryNested withNewDeliveryLike(DeliverySpec item){
            return new DeliveryNestedImpl(item);
    }

    public InMemoryChannelSpecFluent.DeliveryNested editDelivery(){
            return withNewDeliveryLike(getDelivery());
    }

    public InMemoryChannelSpecFluent.DeliveryNested editOrNewDelivery(){
            return withNewDeliveryLike(getDelivery() != null ? getDelivery(): new DeliverySpecBuilder().build());
    }

    public InMemoryChannelSpecFluent.DeliveryNested editOrNewDeliveryLike(DeliverySpec item){
            return withNewDeliveryLike(getDelivery() != null ? getDelivery(): item);
    }

    
/**
 * This method has been deprecated, please use method buildSubscribable instead.
 * @return The buildable object.
 */
@Deprecated public Subscribable getSubscribable(){
            return this.subscribable!=null?this.subscribable.build():null;
    }

    public Subscribable buildSubscribable(){
            return this.subscribable!=null?this.subscribable.build():null;
    }

    public A withSubscribable(Subscribable subscribable){
            _visitables.get("subscribable").remove(this.subscribable);
            if (subscribable!=null){ this.subscribable= new SubscribableBuilder(subscribable); _visitables.get("subscribable").add(this.subscribable);} return (A) this;
    }

    public Boolean hasSubscribable(){
            return this.subscribable != null;
    }

    public InMemoryChannelSpecFluent.SubscribableNested withNewSubscribable(){
            return new SubscribableNestedImpl();
    }

    public InMemoryChannelSpecFluent.SubscribableNested withNewSubscribableLike(Subscribable item){
            return new SubscribableNestedImpl(item);
    }

    public InMemoryChannelSpecFluent.SubscribableNested editSubscribable(){
            return withNewSubscribableLike(getSubscribable());
    }

    public InMemoryChannelSpecFluent.SubscribableNested editOrNewSubscribable(){
            return withNewSubscribableLike(getSubscribable() != null ? getSubscribable(): new SubscribableBuilder().build());
    }

    public InMemoryChannelSpecFluent.SubscribableNested editOrNewSubscribableLike(Subscribable item){
            return withNewSubscribableLike(getSubscribable() != null ? getSubscribable(): item);
    }

    public boolean equals(Object o){
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            InMemoryChannelSpecFluentImpl that = (InMemoryChannelSpecFluentImpl) o;
            if (delivery != null ? !delivery.equals(that.delivery) :that.delivery != null) return false;
            if (subscribable != null ? !subscribable.equals(that.subscribable) :that.subscribable != null) return false;
            return true;
    }


    public class DeliveryNestedImpl extends DeliverySpecFluentImpl> implements InMemoryChannelSpecFluent.DeliveryNested,io.fabric8.kubernetes.api.builder.Nested{

            private final DeliverySpecBuilder builder;
    
            DeliveryNestedImpl(DeliverySpec item){
                    this.builder = new DeliverySpecBuilder(this, item);
            }
            DeliveryNestedImpl(){
                    this.builder = new DeliverySpecBuilder(this);
            }
    
    public N and(){
            return (N) InMemoryChannelSpecFluentImpl.this.withDelivery(builder.build());
    }
    public N endDelivery(){
            return and();
    }

}
    public class SubscribableNestedImpl extends SubscribableFluentImpl> implements InMemoryChannelSpecFluent.SubscribableNested,io.fabric8.kubernetes.api.builder.Nested{

            private final SubscribableBuilder builder;
    
            SubscribableNestedImpl(Subscribable item){
                    this.builder = new SubscribableBuilder(this, item);
            }
            SubscribableNestedImpl(){
                    this.builder = new SubscribableBuilder(this);
            }
    
    public N and(){
            return (N) InMemoryChannelSpecFluentImpl.this.withSubscribable(builder.build());
    }
    public N endSubscribable(){
            return and();
    }

}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy