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

io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluentImpl Maven / Gradle / Ivy

package io.fabric8.knative.eventing.contrib.gitlab.v1alpha1;

import io.fabric8.knative.internal.pkg.tracker.Reference;
import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.Deprecated;
import io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.lang.Object;
import java.lang.Boolean;
import io.fabric8.knative.internal.pkg.tracker.ReferenceFluentImpl;

public class GitLabBindingSpecFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent {

    private io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceBuilder accessToken;
    private io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder subject;

    public GitLabBindingSpecFluentImpl() {
    }

    public GitLabBindingSpecFluentImpl(io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpec instance) {
        this.withAccessToken(instance.getAccessToken()); 
        this.withSubject(instance.getSubject()); 
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildAccessToken instead.
     * @return The buildable object.
     */
        public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSource getAccessToken() {
        return this.accessToken!=null?this.accessToken.build():null;
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSource buildAccessToken() {
        return this.accessToken!=null?this.accessToken.build():null;
    }

    public A withAccessToken(io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSource accessToken) {
        _visitables.get("accessToken").remove(this.accessToken);
        if (accessToken!=null){ this.accessToken= new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceBuilder(accessToken); _visitables.get("accessToken").add(this.accessToken);} return (A) this;
    }

    public java.lang.Boolean hasAccessToken() {
        return this.accessToken != null;
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.AccessTokenNested withNewAccessToken() {
        return new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluentImpl.AccessTokenNestedImpl();
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.AccessTokenNested withNewAccessTokenLike(io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSource item) {
        return new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluentImpl.AccessTokenNestedImpl(item);
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.AccessTokenNested editAccessToken() {
        return withNewAccessTokenLike(getAccessToken());
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.AccessTokenNested editOrNewAccessToken() {
        return withNewAccessTokenLike(getAccessToken() != null ? getAccessToken(): new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceBuilder().build());
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.AccessTokenNested editOrNewAccessTokenLike(io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSource item) {
        return withNewAccessTokenLike(getAccessToken() != null ? getAccessToken(): item);
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildSubject instead.
     * @return The buildable object.
     */
        public io.fabric8.knative.internal.pkg.tracker.Reference getSubject() {
        return this.subject!=null?this.subject.build():null;
    }

    public io.fabric8.knative.internal.pkg.tracker.Reference buildSubject() {
        return this.subject!=null?this.subject.build():null;
    }

    public A withSubject(io.fabric8.knative.internal.pkg.tracker.Reference subject) {
        _visitables.get("subject").remove(this.subject);
        if (subject!=null){ this.subject= new io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder(subject); _visitables.get("subject").add(this.subject);} return (A) this;
    }

    public java.lang.Boolean hasSubject() {
        return this.subject != null;
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.SubjectNested withNewSubject() {
        return new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluentImpl.SubjectNestedImpl();
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.SubjectNested withNewSubjectLike(io.fabric8.knative.internal.pkg.tracker.Reference item) {
        return new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluentImpl.SubjectNestedImpl(item);
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.SubjectNested editSubject() {
        return withNewSubjectLike(getSubject());
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.SubjectNested editOrNewSubject() {
        return withNewSubjectLike(getSubject() != null ? getSubject(): new io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder().build());
    }

    public io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.SubjectNested editOrNewSubjectLike(io.fabric8.knative.internal.pkg.tracker.Reference item) {
        return withNewSubjectLike(getSubject() != null ? getSubject(): item);
    }

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

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

    public class AccessTokenNestedImpl extends io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceFluentImpl> implements io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.AccessTokenNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceBuilder builder;

            AccessTokenNestedImpl(io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSource item) {
                this.builder = new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceBuilder(this, item);
                        
            }

            AccessTokenNestedImpl() {
                this.builder = new io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.SecretValueFromSourceBuilder(this);
                        
            }

            public N and() {
                return (N) GitLabBindingSpecFluentImpl.this.withAccessToken(builder.build());
            }

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


    public class SubjectNestedImpl extends io.fabric8.knative.internal.pkg.tracker.ReferenceFluentImpl> implements io.fabric8.knative.eventing.contrib.gitlab.v1alpha1.GitLabBindingSpecFluent.SubjectNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder builder;

            SubjectNestedImpl(io.fabric8.knative.internal.pkg.tracker.Reference item) {
                this.builder = new io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder(this, item);
                        
            }

            SubjectNestedImpl() {
                this.builder = new io.fabric8.knative.internal.pkg.tracker.ReferenceBuilder(this);
                        
            }

            public N and() {
                return (N) GitLabBindingSpecFluentImpl.this.withSubject(builder.build());
            }

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


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy