io.alauda.devops.api.model.NamedClusterRoleBindingFluentImpl Maven / Gradle / Ivy
package io.alauda.devops.api.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.alauda.kubernetes.api.builder.Nested;
import java.lang.String;
import java.lang.Deprecated;
import javax.validation.Valid;
import io.alauda.kubernetes.api.builder.BaseFluent;
import java.lang.Object;
import java.lang.Boolean;
public class NamedClusterRoleBindingFluentImpl> extends io.alauda.kubernetes.api.builder.BaseFluent implements NamedClusterRoleBindingFluent{
private String name;
private ClusterRoleBindingBuilder roleBinding;
public NamedClusterRoleBindingFluentImpl(){
}
public NamedClusterRoleBindingFluentImpl(NamedClusterRoleBinding instance){
this.withName(instance.getName());
this.withRoleBinding(instance.getRoleBinding());
}
public String getName(){
return this.name;
}
public A withName(String name){
this.name=name; return (A) this;
}
public Boolean hasName(){
return this.name!=null;
}
/**
* This method has been deprecated, please use method buildRoleBinding instead.
*/
@Deprecated public ClusterRoleBinding getRoleBinding(){
return this.roleBinding!=null?this.roleBinding.build():null;
}
public ClusterRoleBinding buildRoleBinding(){
return this.roleBinding!=null?this.roleBinding.build():null;
}
public A withRoleBinding(ClusterRoleBinding roleBinding){
_visitables.remove(this.roleBinding);
if (roleBinding!=null){ this.roleBinding= new ClusterRoleBindingBuilder(roleBinding); _visitables.add(this.roleBinding);} return (A) this;
}
public Boolean hasRoleBinding(){
return this.roleBinding!=null;
}
public NamedClusterRoleBindingFluent.RoleBindingNested withNewRoleBinding(){
return new RoleBindingNestedImpl();
}
public NamedClusterRoleBindingFluent.RoleBindingNested withNewRoleBindingLike(ClusterRoleBinding item){
return new RoleBindingNestedImpl(item);
}
public NamedClusterRoleBindingFluent.RoleBindingNested editRoleBinding(){
return withNewRoleBindingLike(getRoleBinding());
}
public NamedClusterRoleBindingFluent.RoleBindingNested editOrNewRoleBinding(){
return withNewRoleBindingLike(getRoleBinding() != null ? getRoleBinding(): new ClusterRoleBindingBuilder().build());
}
public NamedClusterRoleBindingFluent.RoleBindingNested editOrNewRoleBindingLike(ClusterRoleBinding item){
return withNewRoleBindingLike(getRoleBinding() != null ? getRoleBinding(): item);
}
public boolean equals(Object o){
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (!super.equals(o)) return false;
NamedClusterRoleBindingFluentImpl that = (NamedClusterRoleBindingFluentImpl) o;
if (name != null ? !name.equals(that.name) :that.name != null) return false;
if (roleBinding != null ? !roleBinding.equals(that.roleBinding) :that.roleBinding != null) return false;
return true;
}
public class RoleBindingNestedImpl extends ClusterRoleBindingFluentImpl> implements NamedClusterRoleBindingFluent.RoleBindingNested,io.alauda.kubernetes.api.builder.Nested{
private final ClusterRoleBindingBuilder builder;
RoleBindingNestedImpl(ClusterRoleBinding item){
this.builder = new ClusterRoleBindingBuilder(this, item);
}
RoleBindingNestedImpl(){
this.builder = new ClusterRoleBindingBuilder(this);
}
public N and(){
return (N) NamedClusterRoleBindingFluentImpl.this.withRoleBinding(builder.build());
}
public N endRoleBinding(){
return and();
}
}
}