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

io.alauda.devops.api.model.TemplateFluentImpl Maven / Gradle / Ivy

There is a newer version: 0.2.12
Show newest version
package io.alauda.devops.api.model;

import javax.validation.constraints.Size;
import io.alauda.kubernetes.api.model.Node;
import java.util.ArrayList;
import java.lang.String;
import io.alauda.kubernetes.api.model.NodeBuilder;
import io.alauda.kubernetes.api.model.SecretBuilder;
import io.alauda.kubernetes.api.model.ReplicationController;
import io.alauda.kubernetes.api.model.PipelineTemplateTaskInstanceFluentImpl;
import io.alauda.kubernetes.api.model.apiextensions.CustomResourceDefinitionFluentImpl;
import io.alauda.kubernetes.api.model.PodTemplateFluentImpl;
import io.alauda.kubernetes.api.model.HasMetadata;
import io.alauda.kubernetes.api.model.Pod;
import io.alauda.kubernetes.api.model.PodBuilder;
import io.alauda.kubernetes.api.model.ObjectMetaBuilder;
import io.alauda.kubernetes.api.model.PipelineConfigTemplate;
import io.alauda.kubernetes.api.model.extensions.NetworkPolicyBuilder;
import io.alauda.kubernetes.api.model.Project;
import io.alauda.kubernetes.api.model.authorization.SubjectAccessReviewBuilder;
import io.alauda.kubernetes.api.model.ReplicationControllerFluentImpl;
import io.alauda.kubernetes.api.model.JenkinsBuilder;
import io.alauda.kubernetes.api.model.StorageClassBuilder;
import io.alauda.kubernetes.api.model.EndpointsBuilder;
import io.alauda.kubernetes.api.model.NamespaceBuilder;
import io.alauda.kubernetes.api.model.authorization.SubjectAccessReview;
import io.alauda.kubernetes.api.model.extensions.StatefulSetBuilder;
import io.alauda.kubernetes.api.model.JenkinsBindingBuilder;
import java.lang.Deprecated;
import io.alauda.kubernetes.api.model.extensions.PodSecurityPolicy;
import io.alauda.kubernetes.api.model.PodFluentImpl;
import io.alauda.kubernetes.api.model.extensions.ReplicaSet;
import io.alauda.kubernetes.api.model.ObjectMeta;
import io.alauda.kubernetes.api.model.StorageClass;
import io.alauda.kubernetes.api.model.authorization.SubjectAccessReviewFluentImpl;
import io.alauda.kubernetes.api.model.PipelineConfigTemplateBuilder;
import io.alauda.kubernetes.api.model.EventBuilder;
import io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder;
import io.alauda.kubernetes.api.model.ConfigMapFluentImpl;
import io.alauda.kubernetes.api.model.Event;
import io.alauda.kubernetes.api.model.authentication.TokenReviewFluentImpl;
import io.alauda.kubernetes.api.model.extensions.IngressFluentImpl;
import io.alauda.kubernetes.api.model.extensions.ScaleFluentImpl;
import io.alauda.kubernetes.api.model.policy.PodDisruptionBudgetFluentImpl;
import io.alauda.kubernetes.api.model.PodTemplateBuilder;
import io.alauda.kubernetes.api.model.extensions.Deployment;
import io.alauda.kubernetes.api.model.PipelineTemplateTaskInstanceBuilder;
import io.alauda.kubernetes.api.builder.Predicate;
import java.util.List;
import io.alauda.kubernetes.api.model.PodTemplate;
import io.alauda.kubernetes.api.model.Binding;
import io.alauda.kubernetes.api.model.LimitRangeBuilder;
import io.alauda.kubernetes.api.model.PersistentVolumeClaimBuilder;
import io.alauda.kubernetes.api.model.PersistentVolumeClaimFluentImpl;
import io.alauda.kubernetes.api.model.PipelineConfigTemplateFluentImpl;
import io.alauda.kubernetes.api.model.extensions.ThirdPartyResourceFluentImpl;
import io.alauda.kubernetes.api.model.ProjectBuilder;
import io.alauda.kubernetes.api.model.JobFluentImpl;
import io.alauda.kubernetes.api.model.PersistentVolumeClaim;
import io.alauda.kubernetes.api.model.extensions.DaemonSet;
import io.alauda.kubernetes.api.model.ProjectFluentImpl;
import io.alauda.kubernetes.api.model.extensions.ReplicaSetFluentImpl;
import javax.validation.constraints.NotNull;
import io.alauda.kubernetes.api.model.PipelineFluentImpl;
import io.alauda.kubernetes.api.model.SecretFluentImpl;
import io.alauda.kubernetes.api.model.StorageClassFluentImpl;
import io.alauda.kubernetes.api.model.PipelineConfig;
import io.alauda.kubernetes.api.model.extensions.PodSecurityPolicyFluentImpl;
import io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview;
import io.alauda.kubernetes.api.model.extensions.IngressBuilder;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.alauda.kubernetes.api.model.PipelineConfigFluentImpl;
import io.alauda.kubernetes.api.model.validators.CheckObjectMeta;
import io.alauda.kubernetes.api.model.EndpointsFluentImpl;
import io.alauda.kubernetes.api.model.ServiceAccountFluentImpl;
import io.alauda.kubernetes.api.builder.BaseFluent;
import io.alauda.kubernetes.api.model.HorizontalPodAutoscalerFluentImpl;
import java.lang.Boolean;
import io.alauda.kubernetes.api.model.JenkinsBinding;
import io.alauda.kubernetes.api.model.extensions.NetworkPolicy;
import io.alauda.kubernetes.api.model.JobBuilder;
import io.alauda.kubernetes.api.model.PipelineTemplateTaskInstance;
import io.alauda.kubernetes.api.model.BindingFluentImpl;
import io.alauda.kubernetes.api.model.extensions.DaemonSetFluentImpl;
import io.alauda.kubernetes.api.model.Namespace;
import javax.validation.Valid;
import io.alauda.kubernetes.api.model.CronJob;
import io.alauda.kubernetes.api.model.ComponentStatus;
import java.lang.Object;
import java.util.Map;
import io.alauda.kubernetes.api.model.extensions.DeploymentBuilder;
import io.alauda.kubernetes.api.model.ServiceAccount;
import io.alauda.kubernetes.api.model.extensions.ThirdPartyResource;
import io.alauda.kubernetes.api.model.ComponentStatusFluentImpl;
import io.alauda.kubernetes.api.model.LimitRangeFluentImpl;
import io.alauda.kubernetes.api.model.authentication.TokenReviewBuilder;
import io.alauda.kubernetes.api.model.PipelineConfigBuilder;
import io.alauda.kubernetes.api.model.authentication.TokenReview;
import io.alauda.kubernetes.api.model.ObjectMetaFluentImpl;
import io.alauda.kubernetes.api.model.Pipeline;
import io.alauda.kubernetes.api.model.PersistentVolume;
import io.alauda.kubernetes.api.model.PersistentVolumeBuilder;
import io.alauda.kubernetes.api.model.apiextensions.CustomResourceDefinitionBuilder;
import io.alauda.kubernetes.api.builder.VisitableBuilder;
import io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewFluentImpl;
import io.alauda.kubernetes.api.model.EventFluentImpl;
import io.alauda.kubernetes.api.model.extensions.DeploymentFluentImpl;
import io.alauda.kubernetes.api.model.policy.PodDisruptionBudgetBuilder;
import java.util.LinkedHashMap;
import io.alauda.kubernetes.api.model.ConfigMapBuilder;
import io.alauda.kubernetes.api.model.Job;
import io.alauda.kubernetes.api.model.extensions.ThirdPartyResourceBuilder;
import io.alauda.kubernetes.api.model.extensions.ScaleBuilder;
import io.alauda.kubernetes.api.model.extensions.NetworkPolicyFluentImpl;
import io.alauda.kubernetes.api.model.ReplicationControllerBuilder;
import io.alauda.kubernetes.api.model.ResourceQuotaBuilder;
import io.alauda.kubernetes.api.model.ServiceAccountBuilder;
import io.alauda.kubernetes.api.model.extensions.Ingress;
import io.alauda.kubernetes.api.model.CronJobBuilder;
import io.alauda.kubernetes.api.model.ResourceQuotaFluentImpl;
import io.alauda.kubernetes.api.model.Jenkins;
import io.alauda.kubernetes.api.model.Secret;
import io.alauda.kubernetes.api.model.LimitRange;
import io.alauda.kubernetes.api.model.HorizontalPodAutoscaler;
import java.util.Collection;
import io.alauda.kubernetes.api.model.extensions.StatefulSet;
import io.alauda.kubernetes.api.model.PipelineBuilder;
import io.alauda.kubernetes.api.model.policy.PodDisruptionBudget;
import io.alauda.kubernetes.api.model.BindingBuilder;
import io.alauda.kubernetes.api.model.ComponentStatusBuilder;
import io.alauda.kubernetes.api.builder.Nested;
import io.alauda.kubernetes.api.model.HorizontalPodAutoscalerBuilder;
import io.alauda.kubernetes.api.model.JenkinsFluentImpl;
import io.alauda.kubernetes.api.model.ServiceBuilder;
import io.alauda.kubernetes.api.model.Endpoints;
import io.alauda.kubernetes.api.model.extensions.DaemonSetBuilder;
import io.alauda.kubernetes.api.model.CronJobFluentImpl;
import io.alauda.kubernetes.api.model.ResourceQuota;
import io.alauda.kubernetes.api.model.JenkinsBindingFluentImpl;
import io.alauda.kubernetes.api.model.NamespaceFluentImpl;
import io.alauda.kubernetes.api.model.extensions.ReplicaSetBuilder;
import io.alauda.kubernetes.api.model.extensions.StatefulSetFluentImpl;
import io.alauda.kubernetes.api.model.ConfigMap;
import io.alauda.kubernetes.api.model.apiextensions.CustomResourceDefinition;
import io.alauda.kubernetes.api.model.Service;
import io.alauda.kubernetes.api.model.extensions.Scale;
import io.alauda.kubernetes.api.model.extensions.PodSecurityPolicyBuilder;
import io.alauda.kubernetes.api.model.NodeFluentImpl;
import io.alauda.kubernetes.api.model.PersistentVolumeFluentImpl;
import io.alauda.kubernetes.api.model.ServiceFluentImpl;

public class TemplateFluentImpl> extends io.alauda.kubernetes.api.builder.BaseFluent implements TemplateFluent{

    private String apiVersion;
    private String kind;
    private Map labels = new LinkedHashMap();
    private ObjectMetaBuilder metadata;
    private List> objects =  new ArrayList>();
    private List parameters =  new ArrayList();

    public TemplateFluentImpl(){
    }
    public TemplateFluentImpl(Template instance){
            this.withApiVersion(instance.getApiVersion()); 
            this.withKind(instance.getKind()); 
            this.withLabels(instance.getLabels()); 
            this.withMetadata(instance.getMetadata()); 
            this.withObjects(instance.getObjects()); 
            this.withParameters(instance.getParameters()); 
    }

    public String getApiVersion(){
            return this.apiVersion;
    }

    public A withApiVersion(String apiVersion){
            this.apiVersion=apiVersion; return (A) this;
    }

    public Boolean hasApiVersion(){
            return this.apiVersion!=null;
    }

    public String getKind(){
            return this.kind;
    }

    public A withKind(String kind){
            this.kind=kind; return (A) this;
    }

    public Boolean hasKind(){
            return this.kind!=null;
    }

    public A addToLabels(String key,String value){
            if(key != null && value != null) {this.labels.put(key, value);} return (A)this;
    }

    public A addToLabels(Map map){
            if(map != null) { this.labels.putAll(map);} return (A)this;
    }

    public A removeFromLabels(String key){
            if(key != null) {this.labels.remove(key);} return (A)this;
    }

    public A removeFromLabels(Map map){
            if(map != null) { for(Object key : map.keySet()) {this.labels.remove(key);}} return (A)this;
    }

    public Map getLabels(){
            return this.labels;
    }

    public A withLabels(Map labels){
            this.labels.clear();
            if (labels != null) {this.labels.putAll(labels);} return (A) this;
    }

    public Boolean hasLabels(){
            return this.labels!=null;
    }

    
/**
 * This method has been deprecated, please use method buildMetadata instead.
 */
@Deprecated public ObjectMeta getMetadata(){
            return this.metadata!=null?this.metadata.build():null;
    }

    public ObjectMeta buildMetadata(){
            return this.metadata!=null?this.metadata.build():null;
    }

    public A withMetadata(ObjectMeta metadata){
            _visitables.remove(this.metadata);
            if (metadata!=null){ this.metadata= new ObjectMetaBuilder(metadata); _visitables.add(this.metadata);} return (A) this;
    }

    public Boolean hasMetadata(){
            return this.metadata!=null;
    }

    public TemplateFluent.MetadataNested withNewMetadata(){
            return new MetadataNestedImpl();
    }

    public TemplateFluent.MetadataNested withNewMetadataLike(ObjectMeta item){
            return new MetadataNestedImpl(item);
    }

    public TemplateFluent.MetadataNested editMetadata(){
            return withNewMetadataLike(getMetadata());
    }

    public TemplateFluent.MetadataNested editOrNewMetadata(){
            return withNewMetadataLike(getMetadata() != null ? getMetadata(): new ObjectMetaBuilder().build());
    }

    public TemplateFluent.MetadataNested editOrNewMetadataLike(ObjectMeta item){
            return withNewMetadataLike(getMetadata() != null ? getMetadata(): item);
    }

    public A addToObjects(int index,HasMetadata item){
            if (item instanceof Ingress){addToIngressObjects(index, (Ingress)item);}
 else if (item instanceof Route){addToRouteObjects(index, (Route)item);}
 else if (item instanceof PolicyBinding){addToPolicyBindingObjects(index, (PolicyBinding)item);}
 else if (item instanceof ResourceQuota){addToResourceQuotaObjects(index, (ResourceQuota)item);}
 else if (item instanceof ServiceAccount){addToServiceAccountObjects(index, (ServiceAccount)item);}
 else if (item instanceof ConfigMap){addToConfigMapObjects(index, (ConfigMap)item);}
 else if (item instanceof OAuthClientAuthorization){addToOAuthClientAuthorizationObjects(index, (OAuthClientAuthorization)item);}
 else if (item instanceof Policy){addToPolicyObjects(index, (Policy)item);}
 else if (item instanceof OAuthAuthorizeToken){addToOAuthAuthorizeTokenObjects(index, (OAuthAuthorizeToken)item);}
 else if (item instanceof JenkinsBinding){addToJenkinsBindingObjects(index, (JenkinsBinding)item);}
 else if (item instanceof Identity){addToIdentityObjects(index, (Identity)item);}
 else if (item instanceof PodTemplate){addToPodTemplateObjects(index, (PodTemplate)item);}
 else if (item instanceof TokenReview){addToTokenReviewObjects(index, (TokenReview)item);}
 else if (item instanceof CustomResourceDefinition){addToCustomResourceDefinitionObjects(index, (CustomResourceDefinition)item);}
 else if (item instanceof ImageSignature){addToImageSignatureObjects(index, (ImageSignature)item);}
 else if (item instanceof ClusterRole){addToClusterRoleObjects(index, (ClusterRole)item);}
 else if (item instanceof Namespace){addToNamespaceObjects(index, (Namespace)item);}
 else if (item instanceof ClusterPolicy){addToClusterPolicyObjects(index, (ClusterPolicy)item);}
 else if (item instanceof Build){addToBuildObjects(index, (Build)item);}
 else if (item instanceof Scale){addToScaleObjects(index, (Scale)item);}
 else if (item instanceof Pod){addToPodObjects(index, (Pod)item);}
 else if (item instanceof HorizontalPodAutoscaler){addToHorizontalPodAutoscalerObjects(index, (HorizontalPodAutoscaler)item);}
 else if (item instanceof ThirdPartyResource){addToThirdPartyResourceObjects(index, (ThirdPartyResource)item);}
 else if (item instanceof ImageStreamTag){addToImageStreamTagObjects(index, (ImageStreamTag)item);}
 else if (item instanceof ComponentStatus){addToComponentStatusObjects(index, (ComponentStatus)item);}
 else if (item instanceof Secret){addToSecretObjects(index, (Secret)item);}
 else if (item instanceof ReplicationController){addToReplicationControllerObjects(index, (ReplicationController)item);}
 else if (item instanceof LimitRange){addToLimitRangeObjects(index, (LimitRange)item);}
 else if (item instanceof Endpoints){addToEndpointsObjects(index, (Endpoints)item);}
 else if (item instanceof SecurityContextConstraints){addToSecurityContextConstraintsObjects(index, (SecurityContextConstraints)item);}
 else if (item instanceof Group){addToGroupObjects(index, (Group)item);}
 else if (item instanceof Event){addToEventObjects(index, (Event)item);}
 else if (item instanceof Node){addToNodeObjects(index, (Node)item);}
 else if (item instanceof ReplicaSet){addToReplicaSetObjects(index, (ReplicaSet)item);}
 else if (item instanceof ClusterRoleBinding){addToClusterRoleBindingObjects(index, (ClusterRoleBinding)item);}
 else if (item instanceof Jenkins){addToJenkinsObjects(index, (Jenkins)item);}
 else if (item instanceof DaemonSet){addToDaemonSetObjects(index, (DaemonSet)item);}
 else if (item instanceof PodDisruptionBudget){addToPodDisruptionBudgetObjects(index, (PodDisruptionBudget)item);}
 else if (item instanceof ImageStream){addToImageStreamObjects(index, (ImageStream)item);}
 else if (item instanceof RoleBindingRestriction){addToRoleBindingRestrictionObjects(index, (RoleBindingRestriction)item);}
 else if (item instanceof Binding){addToBindingObjects(index, (Binding)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview){addToLocalSubjectAccessReviewObjects(index, (io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview)item);}
 else if (item instanceof StatefulSet){addToStatefulSetObjects(index, (StatefulSet)item);}
 else if (item instanceof PipelineTemplateTaskInstance){addToPipelineTemplateTaskInstanceObjects(index, (PipelineTemplateTaskInstance)item);}
 else if (item instanceof OAuthClient){addToOAuthClientObjects(index, (OAuthClient)item);}
 else if (item instanceof Template){addToTemplateObjects(index, (Template)item);}
 else if (item instanceof BuildConfig){addToBuildConfigObjects(index, (BuildConfig)item);}
 else if (item instanceof PodSecurityPolicy){addToPodSecurityPolicyObjects(index, (PodSecurityPolicy)item);}
 else if (item instanceof Pipeline){addToPipelineObjects(index, (Pipeline)item);}
 else if (item instanceof Role){addToRoleObjects(index, (Role)item);}
 else if (item instanceof CronJob){addToCronJobObjects(index, (CronJob)item);}
 else if (item instanceof User){addToUserObjects(index, (User)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.SubjectAccessReview){addToSubjectAccessReviewObjects(index, (io.alauda.kubernetes.api.model.authorization.SubjectAccessReview)item);}
 else if (item instanceof StorageClass){addToStorageClassObjects(index, (StorageClass)item);}
 else if (item instanceof PipelineConfigTemplate){addToPipelineConfigTemplateObjects(index, (PipelineConfigTemplate)item);}
 else if (item instanceof PipelineConfig){addToPipelineConfigObjects(index, (PipelineConfig)item);}
 else if (item instanceof DeploymentConfig){addToDeploymentConfigObjects(index, (DeploymentConfig)item);}
 else if (item instanceof OAuthAccessToken){addToOAuthAccessTokenObjects(index, (OAuthAccessToken)item);}
 else if (item instanceof PersistentVolumeClaim){addToPersistentVolumeClaimObjects(index, (PersistentVolumeClaim)item);}
 else if (item instanceof NetworkPolicy){addToNetworkPolicyObjects(index, (NetworkPolicy)item);}
 else if (item instanceof Image){addToImageObjects(index, (Image)item);}
 else if (item instanceof Service){addToServiceObjects(index, (Service)item);}
 else if (item instanceof Job){addToJobObjects(index, (Job)item);}
 else if (item instanceof Deployment){addToDeploymentObjects(index, (Deployment)item);}
 else if (item instanceof ClusterPolicyBinding){addToClusterPolicyBindingObjects(index, (ClusterPolicyBinding)item);}
 else if (item instanceof Project){addToProjectObjects(index, (Project)item);}
 else if (item instanceof BuildRequest){addToBuildRequestObjects(index, (BuildRequest)item);}
 else if (item instanceof RoleBinding){addToRoleBindingObjects(index, (RoleBinding)item);}
 else if (item instanceof PersistentVolume){addToPersistentVolumeObjects(index, (PersistentVolume)item);}

            return (A)this;
    }

    public A setToObjects(int index,HasMetadata item){
            if (item instanceof Ingress){setToIngressObjects(index, (Ingress)item);}
 else if (item instanceof Route){setToRouteObjects(index, (Route)item);}
 else if (item instanceof PolicyBinding){setToPolicyBindingObjects(index, (PolicyBinding)item);}
 else if (item instanceof ResourceQuota){setToResourceQuotaObjects(index, (ResourceQuota)item);}
 else if (item instanceof ServiceAccount){setToServiceAccountObjects(index, (ServiceAccount)item);}
 else if (item instanceof ConfigMap){setToConfigMapObjects(index, (ConfigMap)item);}
 else if (item instanceof OAuthClientAuthorization){setToOAuthClientAuthorizationObjects(index, (OAuthClientAuthorization)item);}
 else if (item instanceof Policy){setToPolicyObjects(index, (Policy)item);}
 else if (item instanceof OAuthAuthorizeToken){setToOAuthAuthorizeTokenObjects(index, (OAuthAuthorizeToken)item);}
 else if (item instanceof JenkinsBinding){setToJenkinsBindingObjects(index, (JenkinsBinding)item);}
 else if (item instanceof Identity){setToIdentityObjects(index, (Identity)item);}
 else if (item instanceof PodTemplate){setToPodTemplateObjects(index, (PodTemplate)item);}
 else if (item instanceof TokenReview){setToTokenReviewObjects(index, (TokenReview)item);}
 else if (item instanceof CustomResourceDefinition){setToCustomResourceDefinitionObjects(index, (CustomResourceDefinition)item);}
 else if (item instanceof ImageSignature){setToImageSignatureObjects(index, (ImageSignature)item);}
 else if (item instanceof ClusterRole){setToClusterRoleObjects(index, (ClusterRole)item);}
 else if (item instanceof Namespace){setToNamespaceObjects(index, (Namespace)item);}
 else if (item instanceof ClusterPolicy){setToClusterPolicyObjects(index, (ClusterPolicy)item);}
 else if (item instanceof Build){setToBuildObjects(index, (Build)item);}
 else if (item instanceof Scale){setToScaleObjects(index, (Scale)item);}
 else if (item instanceof Pod){setToPodObjects(index, (Pod)item);}
 else if (item instanceof HorizontalPodAutoscaler){setToHorizontalPodAutoscalerObjects(index, (HorizontalPodAutoscaler)item);}
 else if (item instanceof ThirdPartyResource){setToThirdPartyResourceObjects(index, (ThirdPartyResource)item);}
 else if (item instanceof ImageStreamTag){setToImageStreamTagObjects(index, (ImageStreamTag)item);}
 else if (item instanceof ComponentStatus){setToComponentStatusObjects(index, (ComponentStatus)item);}
 else if (item instanceof Secret){setToSecretObjects(index, (Secret)item);}
 else if (item instanceof ReplicationController){setToReplicationControllerObjects(index, (ReplicationController)item);}
 else if (item instanceof LimitRange){setToLimitRangeObjects(index, (LimitRange)item);}
 else if (item instanceof Endpoints){setToEndpointsObjects(index, (Endpoints)item);}
 else if (item instanceof SecurityContextConstraints){setToSecurityContextConstraintsObjects(index, (SecurityContextConstraints)item);}
 else if (item instanceof Group){setToGroupObjects(index, (Group)item);}
 else if (item instanceof Event){setToEventObjects(index, (Event)item);}
 else if (item instanceof Node){setToNodeObjects(index, (Node)item);}
 else if (item instanceof ReplicaSet){setToReplicaSetObjects(index, (ReplicaSet)item);}
 else if (item instanceof ClusterRoleBinding){setToClusterRoleBindingObjects(index, (ClusterRoleBinding)item);}
 else if (item instanceof Jenkins){setToJenkinsObjects(index, (Jenkins)item);}
 else if (item instanceof DaemonSet){setToDaemonSetObjects(index, (DaemonSet)item);}
 else if (item instanceof PodDisruptionBudget){setToPodDisruptionBudgetObjects(index, (PodDisruptionBudget)item);}
 else if (item instanceof ImageStream){setToImageStreamObjects(index, (ImageStream)item);}
 else if (item instanceof RoleBindingRestriction){setToRoleBindingRestrictionObjects(index, (RoleBindingRestriction)item);}
 else if (item instanceof Binding){setToBindingObjects(index, (Binding)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview){setToLocalSubjectAccessReviewObjects(index, (io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview)item);}
 else if (item instanceof StatefulSet){setToStatefulSetObjects(index, (StatefulSet)item);}
 else if (item instanceof PipelineTemplateTaskInstance){setToPipelineTemplateTaskInstanceObjects(index, (PipelineTemplateTaskInstance)item);}
 else if (item instanceof OAuthClient){setToOAuthClientObjects(index, (OAuthClient)item);}
 else if (item instanceof Template){setToTemplateObjects(index, (Template)item);}
 else if (item instanceof BuildConfig){setToBuildConfigObjects(index, (BuildConfig)item);}
 else if (item instanceof PodSecurityPolicy){setToPodSecurityPolicyObjects(index, (PodSecurityPolicy)item);}
 else if (item instanceof Pipeline){setToPipelineObjects(index, (Pipeline)item);}
 else if (item instanceof Role){setToRoleObjects(index, (Role)item);}
 else if (item instanceof CronJob){setToCronJobObjects(index, (CronJob)item);}
 else if (item instanceof User){setToUserObjects(index, (User)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.SubjectAccessReview){setToSubjectAccessReviewObjects(index, (io.alauda.kubernetes.api.model.authorization.SubjectAccessReview)item);}
 else if (item instanceof StorageClass){setToStorageClassObjects(index, (StorageClass)item);}
 else if (item instanceof PipelineConfigTemplate){setToPipelineConfigTemplateObjects(index, (PipelineConfigTemplate)item);}
 else if (item instanceof PipelineConfig){setToPipelineConfigObjects(index, (PipelineConfig)item);}
 else if (item instanceof DeploymentConfig){setToDeploymentConfigObjects(index, (DeploymentConfig)item);}
 else if (item instanceof OAuthAccessToken){setToOAuthAccessTokenObjects(index, (OAuthAccessToken)item);}
 else if (item instanceof PersistentVolumeClaim){setToPersistentVolumeClaimObjects(index, (PersistentVolumeClaim)item);}
 else if (item instanceof NetworkPolicy){setToNetworkPolicyObjects(index, (NetworkPolicy)item);}
 else if (item instanceof Image){setToImageObjects(index, (Image)item);}
 else if (item instanceof Service){setToServiceObjects(index, (Service)item);}
 else if (item instanceof Job){setToJobObjects(index, (Job)item);}
 else if (item instanceof Deployment){setToDeploymentObjects(index, (Deployment)item);}
 else if (item instanceof ClusterPolicyBinding){setToClusterPolicyBindingObjects(index, (ClusterPolicyBinding)item);}
 else if (item instanceof Project){setToProjectObjects(index, (Project)item);}
 else if (item instanceof BuildRequest){setToBuildRequestObjects(index, (BuildRequest)item);}
 else if (item instanceof RoleBinding){setToRoleBindingObjects(index, (RoleBinding)item);}
 else if (item instanceof PersistentVolume){setToPersistentVolumeObjects(index, (PersistentVolume)item);}

            return (A)this;
    }

    public A addToObjects(HasMetadata... items){
            for (HasMetadata item : items) { 
            if (item instanceof Ingress){addToIngressObjects((Ingress)item);}
 else if (item instanceof Route){addToRouteObjects((Route)item);}
 else if (item instanceof PolicyBinding){addToPolicyBindingObjects((PolicyBinding)item);}
 else if (item instanceof ResourceQuota){addToResourceQuotaObjects((ResourceQuota)item);}
 else if (item instanceof ServiceAccount){addToServiceAccountObjects((ServiceAccount)item);}
 else if (item instanceof ConfigMap){addToConfigMapObjects((ConfigMap)item);}
 else if (item instanceof OAuthClientAuthorization){addToOAuthClientAuthorizationObjects((OAuthClientAuthorization)item);}
 else if (item instanceof Policy){addToPolicyObjects((Policy)item);}
 else if (item instanceof OAuthAuthorizeToken){addToOAuthAuthorizeTokenObjects((OAuthAuthorizeToken)item);}
 else if (item instanceof JenkinsBinding){addToJenkinsBindingObjects((JenkinsBinding)item);}
 else if (item instanceof Identity){addToIdentityObjects((Identity)item);}
 else if (item instanceof PodTemplate){addToPodTemplateObjects((PodTemplate)item);}
 else if (item instanceof TokenReview){addToTokenReviewObjects((TokenReview)item);}
 else if (item instanceof CustomResourceDefinition){addToCustomResourceDefinitionObjects((CustomResourceDefinition)item);}
 else if (item instanceof ImageSignature){addToImageSignatureObjects((ImageSignature)item);}
 else if (item instanceof ClusterRole){addToClusterRoleObjects((ClusterRole)item);}
 else if (item instanceof Namespace){addToNamespaceObjects((Namespace)item);}
 else if (item instanceof ClusterPolicy){addToClusterPolicyObjects((ClusterPolicy)item);}
 else if (item instanceof Build){addToBuildObjects((Build)item);}
 else if (item instanceof Scale){addToScaleObjects((Scale)item);}
 else if (item instanceof Pod){addToPodObjects((Pod)item);}
 else if (item instanceof HorizontalPodAutoscaler){addToHorizontalPodAutoscalerObjects((HorizontalPodAutoscaler)item);}
 else if (item instanceof ThirdPartyResource){addToThirdPartyResourceObjects((ThirdPartyResource)item);}
 else if (item instanceof ImageStreamTag){addToImageStreamTagObjects((ImageStreamTag)item);}
 else if (item instanceof ComponentStatus){addToComponentStatusObjects((ComponentStatus)item);}
 else if (item instanceof Secret){addToSecretObjects((Secret)item);}
 else if (item instanceof ReplicationController){addToReplicationControllerObjects((ReplicationController)item);}
 else if (item instanceof LimitRange){addToLimitRangeObjects((LimitRange)item);}
 else if (item instanceof Endpoints){addToEndpointsObjects((Endpoints)item);}
 else if (item instanceof SecurityContextConstraints){addToSecurityContextConstraintsObjects((SecurityContextConstraints)item);}
 else if (item instanceof Group){addToGroupObjects((Group)item);}
 else if (item instanceof Event){addToEventObjects((Event)item);}
 else if (item instanceof Node){addToNodeObjects((Node)item);}
 else if (item instanceof ReplicaSet){addToReplicaSetObjects((ReplicaSet)item);}
 else if (item instanceof ClusterRoleBinding){addToClusterRoleBindingObjects((ClusterRoleBinding)item);}
 else if (item instanceof Jenkins){addToJenkinsObjects((Jenkins)item);}
 else if (item instanceof DaemonSet){addToDaemonSetObjects((DaemonSet)item);}
 else if (item instanceof PodDisruptionBudget){addToPodDisruptionBudgetObjects((PodDisruptionBudget)item);}
 else if (item instanceof ImageStream){addToImageStreamObjects((ImageStream)item);}
 else if (item instanceof RoleBindingRestriction){addToRoleBindingRestrictionObjects((RoleBindingRestriction)item);}
 else if (item instanceof Binding){addToBindingObjects((Binding)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview){addToLocalSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview)item);}
 else if (item instanceof StatefulSet){addToStatefulSetObjects((StatefulSet)item);}
 else if (item instanceof PipelineTemplateTaskInstance){addToPipelineTemplateTaskInstanceObjects((PipelineTemplateTaskInstance)item);}
 else if (item instanceof OAuthClient){addToOAuthClientObjects((OAuthClient)item);}
 else if (item instanceof Template){addToTemplateObjects((Template)item);}
 else if (item instanceof BuildConfig){addToBuildConfigObjects((BuildConfig)item);}
 else if (item instanceof PodSecurityPolicy){addToPodSecurityPolicyObjects((PodSecurityPolicy)item);}
 else if (item instanceof Pipeline){addToPipelineObjects((Pipeline)item);}
 else if (item instanceof Role){addToRoleObjects((Role)item);}
 else if (item instanceof CronJob){addToCronJobObjects((CronJob)item);}
 else if (item instanceof User){addToUserObjects((User)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.SubjectAccessReview){addToSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.SubjectAccessReview)item);}
 else if (item instanceof StorageClass){addToStorageClassObjects((StorageClass)item);}
 else if (item instanceof PipelineConfigTemplate){addToPipelineConfigTemplateObjects((PipelineConfigTemplate)item);}
 else if (item instanceof PipelineConfig){addToPipelineConfigObjects((PipelineConfig)item);}
 else if (item instanceof DeploymentConfig){addToDeploymentConfigObjects((DeploymentConfig)item);}
 else if (item instanceof OAuthAccessToken){addToOAuthAccessTokenObjects((OAuthAccessToken)item);}
 else if (item instanceof PersistentVolumeClaim){addToPersistentVolumeClaimObjects((PersistentVolumeClaim)item);}
 else if (item instanceof NetworkPolicy){addToNetworkPolicyObjects((NetworkPolicy)item);}
 else if (item instanceof Image){addToImageObjects((Image)item);}
 else if (item instanceof Service){addToServiceObjects((Service)item);}
 else if (item instanceof Job){addToJobObjects((Job)item);}
 else if (item instanceof Deployment){addToDeploymentObjects((Deployment)item);}
 else if (item instanceof ClusterPolicyBinding){addToClusterPolicyBindingObjects((ClusterPolicyBinding)item);}
 else if (item instanceof Project){addToProjectObjects((Project)item);}
 else if (item instanceof BuildRequest){addToBuildRequestObjects((BuildRequest)item);}
 else if (item instanceof RoleBinding){addToRoleBindingObjects((RoleBinding)item);}
 else if (item instanceof PersistentVolume){addToPersistentVolumeObjects((PersistentVolume)item);}

            } return (A)this;
    }

    public A addAllToObjects(Collection items){
            for (HasMetadata item : items) { 
            if (item instanceof Ingress){addToIngressObjects((Ingress)item);}
 else if (item instanceof Route){addToRouteObjects((Route)item);}
 else if (item instanceof PolicyBinding){addToPolicyBindingObjects((PolicyBinding)item);}
 else if (item instanceof ResourceQuota){addToResourceQuotaObjects((ResourceQuota)item);}
 else if (item instanceof ServiceAccount){addToServiceAccountObjects((ServiceAccount)item);}
 else if (item instanceof ConfigMap){addToConfigMapObjects((ConfigMap)item);}
 else if (item instanceof OAuthClientAuthorization){addToOAuthClientAuthorizationObjects((OAuthClientAuthorization)item);}
 else if (item instanceof Policy){addToPolicyObjects((Policy)item);}
 else if (item instanceof OAuthAuthorizeToken){addToOAuthAuthorizeTokenObjects((OAuthAuthorizeToken)item);}
 else if (item instanceof JenkinsBinding){addToJenkinsBindingObjects((JenkinsBinding)item);}
 else if (item instanceof Identity){addToIdentityObjects((Identity)item);}
 else if (item instanceof PodTemplate){addToPodTemplateObjects((PodTemplate)item);}
 else if (item instanceof TokenReview){addToTokenReviewObjects((TokenReview)item);}
 else if (item instanceof CustomResourceDefinition){addToCustomResourceDefinitionObjects((CustomResourceDefinition)item);}
 else if (item instanceof ImageSignature){addToImageSignatureObjects((ImageSignature)item);}
 else if (item instanceof ClusterRole){addToClusterRoleObjects((ClusterRole)item);}
 else if (item instanceof Namespace){addToNamespaceObjects((Namespace)item);}
 else if (item instanceof ClusterPolicy){addToClusterPolicyObjects((ClusterPolicy)item);}
 else if (item instanceof Build){addToBuildObjects((Build)item);}
 else if (item instanceof Scale){addToScaleObjects((Scale)item);}
 else if (item instanceof Pod){addToPodObjects((Pod)item);}
 else if (item instanceof HorizontalPodAutoscaler){addToHorizontalPodAutoscalerObjects((HorizontalPodAutoscaler)item);}
 else if (item instanceof ThirdPartyResource){addToThirdPartyResourceObjects((ThirdPartyResource)item);}
 else if (item instanceof ImageStreamTag){addToImageStreamTagObjects((ImageStreamTag)item);}
 else if (item instanceof ComponentStatus){addToComponentStatusObjects((ComponentStatus)item);}
 else if (item instanceof Secret){addToSecretObjects((Secret)item);}
 else if (item instanceof ReplicationController){addToReplicationControllerObjects((ReplicationController)item);}
 else if (item instanceof LimitRange){addToLimitRangeObjects((LimitRange)item);}
 else if (item instanceof Endpoints){addToEndpointsObjects((Endpoints)item);}
 else if (item instanceof SecurityContextConstraints){addToSecurityContextConstraintsObjects((SecurityContextConstraints)item);}
 else if (item instanceof Group){addToGroupObjects((Group)item);}
 else if (item instanceof Event){addToEventObjects((Event)item);}
 else if (item instanceof Node){addToNodeObjects((Node)item);}
 else if (item instanceof ReplicaSet){addToReplicaSetObjects((ReplicaSet)item);}
 else if (item instanceof ClusterRoleBinding){addToClusterRoleBindingObjects((ClusterRoleBinding)item);}
 else if (item instanceof Jenkins){addToJenkinsObjects((Jenkins)item);}
 else if (item instanceof DaemonSet){addToDaemonSetObjects((DaemonSet)item);}
 else if (item instanceof PodDisruptionBudget){addToPodDisruptionBudgetObjects((PodDisruptionBudget)item);}
 else if (item instanceof ImageStream){addToImageStreamObjects((ImageStream)item);}
 else if (item instanceof RoleBindingRestriction){addToRoleBindingRestrictionObjects((RoleBindingRestriction)item);}
 else if (item instanceof Binding){addToBindingObjects((Binding)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview){addToLocalSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview)item);}
 else if (item instanceof StatefulSet){addToStatefulSetObjects((StatefulSet)item);}
 else if (item instanceof PipelineTemplateTaskInstance){addToPipelineTemplateTaskInstanceObjects((PipelineTemplateTaskInstance)item);}
 else if (item instanceof OAuthClient){addToOAuthClientObjects((OAuthClient)item);}
 else if (item instanceof Template){addToTemplateObjects((Template)item);}
 else if (item instanceof BuildConfig){addToBuildConfigObjects((BuildConfig)item);}
 else if (item instanceof PodSecurityPolicy){addToPodSecurityPolicyObjects((PodSecurityPolicy)item);}
 else if (item instanceof Pipeline){addToPipelineObjects((Pipeline)item);}
 else if (item instanceof Role){addToRoleObjects((Role)item);}
 else if (item instanceof CronJob){addToCronJobObjects((CronJob)item);}
 else if (item instanceof User){addToUserObjects((User)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.SubjectAccessReview){addToSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.SubjectAccessReview)item);}
 else if (item instanceof StorageClass){addToStorageClassObjects((StorageClass)item);}
 else if (item instanceof PipelineConfigTemplate){addToPipelineConfigTemplateObjects((PipelineConfigTemplate)item);}
 else if (item instanceof PipelineConfig){addToPipelineConfigObjects((PipelineConfig)item);}
 else if (item instanceof DeploymentConfig){addToDeploymentConfigObjects((DeploymentConfig)item);}
 else if (item instanceof OAuthAccessToken){addToOAuthAccessTokenObjects((OAuthAccessToken)item);}
 else if (item instanceof PersistentVolumeClaim){addToPersistentVolumeClaimObjects((PersistentVolumeClaim)item);}
 else if (item instanceof NetworkPolicy){addToNetworkPolicyObjects((NetworkPolicy)item);}
 else if (item instanceof Image){addToImageObjects((Image)item);}
 else if (item instanceof Service){addToServiceObjects((Service)item);}
 else if (item instanceof Job){addToJobObjects((Job)item);}
 else if (item instanceof Deployment){addToDeploymentObjects((Deployment)item);}
 else if (item instanceof ClusterPolicyBinding){addToClusterPolicyBindingObjects((ClusterPolicyBinding)item);}
 else if (item instanceof Project){addToProjectObjects((Project)item);}
 else if (item instanceof BuildRequest){addToBuildRequestObjects((BuildRequest)item);}
 else if (item instanceof RoleBinding){addToRoleBindingObjects((RoleBinding)item);}
 else if (item instanceof PersistentVolume){addToPersistentVolumeObjects((PersistentVolume)item);}

            } return (A)this;
    }

    public A removeFromObjects(HasMetadata... items){
            for (HasMetadata item : items) {if (item instanceof Ingress){removeFromIngressObjects((Ingress)item);}
 else if (item instanceof Route){removeFromRouteObjects((Route)item);}
 else if (item instanceof PolicyBinding){removeFromPolicyBindingObjects((PolicyBinding)item);}
 else if (item instanceof ResourceQuota){removeFromResourceQuotaObjects((ResourceQuota)item);}
 else if (item instanceof ServiceAccount){removeFromServiceAccountObjects((ServiceAccount)item);}
 else if (item instanceof ConfigMap){removeFromConfigMapObjects((ConfigMap)item);}
 else if (item instanceof OAuthClientAuthorization){removeFromOAuthClientAuthorizationObjects((OAuthClientAuthorization)item);}
 else if (item instanceof Policy){removeFromPolicyObjects((Policy)item);}
 else if (item instanceof OAuthAuthorizeToken){removeFromOAuthAuthorizeTokenObjects((OAuthAuthorizeToken)item);}
 else if (item instanceof JenkinsBinding){removeFromJenkinsBindingObjects((JenkinsBinding)item);}
 else if (item instanceof Identity){removeFromIdentityObjects((Identity)item);}
 else if (item instanceof PodTemplate){removeFromPodTemplateObjects((PodTemplate)item);}
 else if (item instanceof TokenReview){removeFromTokenReviewObjects((TokenReview)item);}
 else if (item instanceof CustomResourceDefinition){removeFromCustomResourceDefinitionObjects((CustomResourceDefinition)item);}
 else if (item instanceof ImageSignature){removeFromImageSignatureObjects((ImageSignature)item);}
 else if (item instanceof ClusterRole){removeFromClusterRoleObjects((ClusterRole)item);}
 else if (item instanceof Namespace){removeFromNamespaceObjects((Namespace)item);}
 else if (item instanceof ClusterPolicy){removeFromClusterPolicyObjects((ClusterPolicy)item);}
 else if (item instanceof Build){removeFromBuildObjects((Build)item);}
 else if (item instanceof Scale){removeFromScaleObjects((Scale)item);}
 else if (item instanceof Pod){removeFromPodObjects((Pod)item);}
 else if (item instanceof HorizontalPodAutoscaler){removeFromHorizontalPodAutoscalerObjects((HorizontalPodAutoscaler)item);}
 else if (item instanceof ThirdPartyResource){removeFromThirdPartyResourceObjects((ThirdPartyResource)item);}
 else if (item instanceof ImageStreamTag){removeFromImageStreamTagObjects((ImageStreamTag)item);}
 else if (item instanceof ComponentStatus){removeFromComponentStatusObjects((ComponentStatus)item);}
 else if (item instanceof Secret){removeFromSecretObjects((Secret)item);}
 else if (item instanceof ReplicationController){removeFromReplicationControllerObjects((ReplicationController)item);}
 else if (item instanceof LimitRange){removeFromLimitRangeObjects((LimitRange)item);}
 else if (item instanceof Endpoints){removeFromEndpointsObjects((Endpoints)item);}
 else if (item instanceof SecurityContextConstraints){removeFromSecurityContextConstraintsObjects((SecurityContextConstraints)item);}
 else if (item instanceof Group){removeFromGroupObjects((Group)item);}
 else if (item instanceof Event){removeFromEventObjects((Event)item);}
 else if (item instanceof Node){removeFromNodeObjects((Node)item);}
 else if (item instanceof ReplicaSet){removeFromReplicaSetObjects((ReplicaSet)item);}
 else if (item instanceof ClusterRoleBinding){removeFromClusterRoleBindingObjects((ClusterRoleBinding)item);}
 else if (item instanceof Jenkins){removeFromJenkinsObjects((Jenkins)item);}
 else if (item instanceof DaemonSet){removeFromDaemonSetObjects((DaemonSet)item);}
 else if (item instanceof PodDisruptionBudget){removeFromPodDisruptionBudgetObjects((PodDisruptionBudget)item);}
 else if (item instanceof ImageStream){removeFromImageStreamObjects((ImageStream)item);}
 else if (item instanceof RoleBindingRestriction){removeFromRoleBindingRestrictionObjects((RoleBindingRestriction)item);}
 else if (item instanceof Binding){removeFromBindingObjects((Binding)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview){removeFromLocalSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview)item);}
 else if (item instanceof StatefulSet){removeFromStatefulSetObjects((StatefulSet)item);}
 else if (item instanceof PipelineTemplateTaskInstance){removeFromPipelineTemplateTaskInstanceObjects((PipelineTemplateTaskInstance)item);}
 else if (item instanceof OAuthClient){removeFromOAuthClientObjects((OAuthClient)item);}
 else if (item instanceof Template){removeFromTemplateObjects((Template)item);}
 else if (item instanceof BuildConfig){removeFromBuildConfigObjects((BuildConfig)item);}
 else if (item instanceof PodSecurityPolicy){removeFromPodSecurityPolicyObjects((PodSecurityPolicy)item);}
 else if (item instanceof Pipeline){removeFromPipelineObjects((Pipeline)item);}
 else if (item instanceof Role){removeFromRoleObjects((Role)item);}
 else if (item instanceof CronJob){removeFromCronJobObjects((CronJob)item);}
 else if (item instanceof User){removeFromUserObjects((User)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.SubjectAccessReview){removeFromSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.SubjectAccessReview)item);}
 else if (item instanceof StorageClass){removeFromStorageClassObjects((StorageClass)item);}
 else if (item instanceof PipelineConfigTemplate){removeFromPipelineConfigTemplateObjects((PipelineConfigTemplate)item);}
 else if (item instanceof PipelineConfig){removeFromPipelineConfigObjects((PipelineConfig)item);}
 else if (item instanceof DeploymentConfig){removeFromDeploymentConfigObjects((DeploymentConfig)item);}
 else if (item instanceof OAuthAccessToken){removeFromOAuthAccessTokenObjects((OAuthAccessToken)item);}
 else if (item instanceof PersistentVolumeClaim){removeFromPersistentVolumeClaimObjects((PersistentVolumeClaim)item);}
 else if (item instanceof NetworkPolicy){removeFromNetworkPolicyObjects((NetworkPolicy)item);}
 else if (item instanceof Image){removeFromImageObjects((Image)item);}
 else if (item instanceof Service){removeFromServiceObjects((Service)item);}
 else if (item instanceof Job){removeFromJobObjects((Job)item);}
 else if (item instanceof Deployment){removeFromDeploymentObjects((Deployment)item);}
 else if (item instanceof ClusterPolicyBinding){removeFromClusterPolicyBindingObjects((ClusterPolicyBinding)item);}
 else if (item instanceof Project){removeFromProjectObjects((Project)item);}
 else if (item instanceof BuildRequest){removeFromBuildRequestObjects((BuildRequest)item);}
 else if (item instanceof RoleBinding){removeFromRoleBindingObjects((RoleBinding)item);}
 else if (item instanceof PersistentVolume){removeFromPersistentVolumeObjects((PersistentVolume)item);}
} return (A)this;
    }

    public A removeAllFromObjects(Collection items){
            for (HasMetadata item : items) {if (item instanceof Ingress){removeFromIngressObjects((Ingress)item);}
 else if (item instanceof Route){removeFromRouteObjects((Route)item);}
 else if (item instanceof PolicyBinding){removeFromPolicyBindingObjects((PolicyBinding)item);}
 else if (item instanceof ResourceQuota){removeFromResourceQuotaObjects((ResourceQuota)item);}
 else if (item instanceof ServiceAccount){removeFromServiceAccountObjects((ServiceAccount)item);}
 else if (item instanceof ConfigMap){removeFromConfigMapObjects((ConfigMap)item);}
 else if (item instanceof OAuthClientAuthorization){removeFromOAuthClientAuthorizationObjects((OAuthClientAuthorization)item);}
 else if (item instanceof Policy){removeFromPolicyObjects((Policy)item);}
 else if (item instanceof OAuthAuthorizeToken){removeFromOAuthAuthorizeTokenObjects((OAuthAuthorizeToken)item);}
 else if (item instanceof JenkinsBinding){removeFromJenkinsBindingObjects((JenkinsBinding)item);}
 else if (item instanceof Identity){removeFromIdentityObjects((Identity)item);}
 else if (item instanceof PodTemplate){removeFromPodTemplateObjects((PodTemplate)item);}
 else if (item instanceof TokenReview){removeFromTokenReviewObjects((TokenReview)item);}
 else if (item instanceof CustomResourceDefinition){removeFromCustomResourceDefinitionObjects((CustomResourceDefinition)item);}
 else if (item instanceof ImageSignature){removeFromImageSignatureObjects((ImageSignature)item);}
 else if (item instanceof ClusterRole){removeFromClusterRoleObjects((ClusterRole)item);}
 else if (item instanceof Namespace){removeFromNamespaceObjects((Namespace)item);}
 else if (item instanceof ClusterPolicy){removeFromClusterPolicyObjects((ClusterPolicy)item);}
 else if (item instanceof Build){removeFromBuildObjects((Build)item);}
 else if (item instanceof Scale){removeFromScaleObjects((Scale)item);}
 else if (item instanceof Pod){removeFromPodObjects((Pod)item);}
 else if (item instanceof HorizontalPodAutoscaler){removeFromHorizontalPodAutoscalerObjects((HorizontalPodAutoscaler)item);}
 else if (item instanceof ThirdPartyResource){removeFromThirdPartyResourceObjects((ThirdPartyResource)item);}
 else if (item instanceof ImageStreamTag){removeFromImageStreamTagObjects((ImageStreamTag)item);}
 else if (item instanceof ComponentStatus){removeFromComponentStatusObjects((ComponentStatus)item);}
 else if (item instanceof Secret){removeFromSecretObjects((Secret)item);}
 else if (item instanceof ReplicationController){removeFromReplicationControllerObjects((ReplicationController)item);}
 else if (item instanceof LimitRange){removeFromLimitRangeObjects((LimitRange)item);}
 else if (item instanceof Endpoints){removeFromEndpointsObjects((Endpoints)item);}
 else if (item instanceof SecurityContextConstraints){removeFromSecurityContextConstraintsObjects((SecurityContextConstraints)item);}
 else if (item instanceof Group){removeFromGroupObjects((Group)item);}
 else if (item instanceof Event){removeFromEventObjects((Event)item);}
 else if (item instanceof Node){removeFromNodeObjects((Node)item);}
 else if (item instanceof ReplicaSet){removeFromReplicaSetObjects((ReplicaSet)item);}
 else if (item instanceof ClusterRoleBinding){removeFromClusterRoleBindingObjects((ClusterRoleBinding)item);}
 else if (item instanceof Jenkins){removeFromJenkinsObjects((Jenkins)item);}
 else if (item instanceof DaemonSet){removeFromDaemonSetObjects((DaemonSet)item);}
 else if (item instanceof PodDisruptionBudget){removeFromPodDisruptionBudgetObjects((PodDisruptionBudget)item);}
 else if (item instanceof ImageStream){removeFromImageStreamObjects((ImageStream)item);}
 else if (item instanceof RoleBindingRestriction){removeFromRoleBindingRestrictionObjects((RoleBindingRestriction)item);}
 else if (item instanceof Binding){removeFromBindingObjects((Binding)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview){removeFromLocalSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview)item);}
 else if (item instanceof StatefulSet){removeFromStatefulSetObjects((StatefulSet)item);}
 else if (item instanceof PipelineTemplateTaskInstance){removeFromPipelineTemplateTaskInstanceObjects((PipelineTemplateTaskInstance)item);}
 else if (item instanceof OAuthClient){removeFromOAuthClientObjects((OAuthClient)item);}
 else if (item instanceof Template){removeFromTemplateObjects((Template)item);}
 else if (item instanceof BuildConfig){removeFromBuildConfigObjects((BuildConfig)item);}
 else if (item instanceof PodSecurityPolicy){removeFromPodSecurityPolicyObjects((PodSecurityPolicy)item);}
 else if (item instanceof Pipeline){removeFromPipelineObjects((Pipeline)item);}
 else if (item instanceof Role){removeFromRoleObjects((Role)item);}
 else if (item instanceof CronJob){removeFromCronJobObjects((CronJob)item);}
 else if (item instanceof User){removeFromUserObjects((User)item);}
 else if (item instanceof io.alauda.kubernetes.api.model.authorization.SubjectAccessReview){removeFromSubjectAccessReviewObjects((io.alauda.kubernetes.api.model.authorization.SubjectAccessReview)item);}
 else if (item instanceof StorageClass){removeFromStorageClassObjects((StorageClass)item);}
 else if (item instanceof PipelineConfigTemplate){removeFromPipelineConfigTemplateObjects((PipelineConfigTemplate)item);}
 else if (item instanceof PipelineConfig){removeFromPipelineConfigObjects((PipelineConfig)item);}
 else if (item instanceof DeploymentConfig){removeFromDeploymentConfigObjects((DeploymentConfig)item);}
 else if (item instanceof OAuthAccessToken){removeFromOAuthAccessTokenObjects((OAuthAccessToken)item);}
 else if (item instanceof PersistentVolumeClaim){removeFromPersistentVolumeClaimObjects((PersistentVolumeClaim)item);}
 else if (item instanceof NetworkPolicy){removeFromNetworkPolicyObjects((NetworkPolicy)item);}
 else if (item instanceof Image){removeFromImageObjects((Image)item);}
 else if (item instanceof Service){removeFromServiceObjects((Service)item);}
 else if (item instanceof Job){removeFromJobObjects((Job)item);}
 else if (item instanceof Deployment){removeFromDeploymentObjects((Deployment)item);}
 else if (item instanceof ClusterPolicyBinding){removeFromClusterPolicyBindingObjects((ClusterPolicyBinding)item);}
 else if (item instanceof Project){removeFromProjectObjects((Project)item);}
 else if (item instanceof BuildRequest){removeFromBuildRequestObjects((BuildRequest)item);}
 else if (item instanceof RoleBinding){removeFromRoleBindingObjects((RoleBinding)item);}
 else if (item instanceof PersistentVolume){removeFromPersistentVolumeObjects((PersistentVolume)item);}
} return (A)this;
    }

    
/**
 * This method has been deprecated, please use method buildObjects instead.
 */
@Deprecated public List getObjects(){
            return build(objects);
    }

    public List buildObjects(){
            return build(objects);
    }

    public HasMetadata buildObject(int index){
            return this.objects.get(index).build();
    }

    public HasMetadata buildFirstObject(){
            return this.objects.get(0).build();
    }

    public HasMetadata buildLastObject(){
            return this.objects.get(objects.size() - 1).build();
    }

    public HasMetadata buildMatchingObject(io.alauda.kubernetes.api.builder.Predicate> predicate){
            for (VisitableBuilder item: objects) { if(predicate.apply(item)){return item.build();} } return null;
    }

    public A withObjects(List objects){
            this.objects.clear();
            if (objects != null) {for (HasMetadata item : objects){this.addToObjects(item);}} return (A) this;
    }

    public A withObjects(HasMetadata... objects){
            this.objects.clear(); if (objects != null) {for (HasMetadata item :objects){ this.addToObjects(item);}} return (A) this;
    }

    public Boolean hasObjects(){
            return objects!= null && !objects.isEmpty();
    }

    public A addToIngressObjects(int index,Ingress item){
            IngressBuilder builder = new IngressBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToIngressObjects(int index,Ingress item){
            IngressBuilder builder = new IngressBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToIngressObjects(Ingress... items){
            for (Ingress item : items) {IngressBuilder builder = new IngressBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToIngressObjects(Collection items){
            for (Ingress item : items) {IngressBuilder builder = new IngressBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromIngressObjects(Ingress... items){
            for (Ingress item : items) {IngressBuilder builder = new IngressBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromIngressObjects(Collection items){
            for (Ingress item : items) {IngressBuilder builder = new IngressBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.IngressObjectsNested addNewIngressObject(){
            return new IngressObjectsNestedImpl();
    }

    public TemplateFluent.IngressObjectsNested addNewIngressObjectLike(Ingress item){
            return new IngressObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.IngressObjectsNested setNewIngressObjectLike(int index,Ingress item){
            return new IngressObjectsNestedImpl(index, item);
    }

    public A addToRouteObjects(int index,Route item){
            RouteBuilder builder = new RouteBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToRouteObjects(int index,Route item){
            RouteBuilder builder = new RouteBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToRouteObjects(Route... items){
            for (Route item : items) {RouteBuilder builder = new RouteBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToRouteObjects(Collection items){
            for (Route item : items) {RouteBuilder builder = new RouteBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromRouteObjects(Route... items){
            for (Route item : items) {RouteBuilder builder = new RouteBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromRouteObjects(Collection items){
            for (Route item : items) {RouteBuilder builder = new RouteBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.RouteObjectsNested addNewRouteObject(){
            return new RouteObjectsNestedImpl();
    }

    public TemplateFluent.RouteObjectsNested addNewRouteObjectLike(Route item){
            return new RouteObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.RouteObjectsNested setNewRouteObjectLike(int index,Route item){
            return new RouteObjectsNestedImpl(index, item);
    }

    public A addToPolicyBindingObjects(int index,PolicyBinding item){
            PolicyBindingBuilder builder = new PolicyBindingBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToPolicyBindingObjects(int index,PolicyBinding item){
            PolicyBindingBuilder builder = new PolicyBindingBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToPolicyBindingObjects(PolicyBinding... items){
            for (PolicyBinding item : items) {PolicyBindingBuilder builder = new PolicyBindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToPolicyBindingObjects(Collection items){
            for (PolicyBinding item : items) {PolicyBindingBuilder builder = new PolicyBindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromPolicyBindingObjects(PolicyBinding... items){
            for (PolicyBinding item : items) {PolicyBindingBuilder builder = new PolicyBindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromPolicyBindingObjects(Collection items){
            for (PolicyBinding item : items) {PolicyBindingBuilder builder = new PolicyBindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.PolicyBindingObjectsNested addNewPolicyBindingObject(){
            return new PolicyBindingObjectsNestedImpl();
    }

    public TemplateFluent.PolicyBindingObjectsNested addNewPolicyBindingObjectLike(PolicyBinding item){
            return new PolicyBindingObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.PolicyBindingObjectsNested setNewPolicyBindingObjectLike(int index,PolicyBinding item){
            return new PolicyBindingObjectsNestedImpl(index, item);
    }

    public A addToResourceQuotaObjects(int index,ResourceQuota item){
            ResourceQuotaBuilder builder = new ResourceQuotaBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToResourceQuotaObjects(int index,ResourceQuota item){
            ResourceQuotaBuilder builder = new ResourceQuotaBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToResourceQuotaObjects(ResourceQuota... items){
            for (ResourceQuota item : items) {ResourceQuotaBuilder builder = new ResourceQuotaBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToResourceQuotaObjects(Collection items){
            for (ResourceQuota item : items) {ResourceQuotaBuilder builder = new ResourceQuotaBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromResourceQuotaObjects(ResourceQuota... items){
            for (ResourceQuota item : items) {ResourceQuotaBuilder builder = new ResourceQuotaBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromResourceQuotaObjects(Collection items){
            for (ResourceQuota item : items) {ResourceQuotaBuilder builder = new ResourceQuotaBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ResourceQuotaObjectsNested addNewResourceQuotaObject(){
            return new ResourceQuotaObjectsNestedImpl();
    }

    public TemplateFluent.ResourceQuotaObjectsNested addNewResourceQuotaObjectLike(ResourceQuota item){
            return new ResourceQuotaObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ResourceQuotaObjectsNested setNewResourceQuotaObjectLike(int index,ResourceQuota item){
            return new ResourceQuotaObjectsNestedImpl(index, item);
    }

    public A addToServiceAccountObjects(int index,ServiceAccount item){
            ServiceAccountBuilder builder = new ServiceAccountBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToServiceAccountObjects(int index,ServiceAccount item){
            ServiceAccountBuilder builder = new ServiceAccountBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToServiceAccountObjects(ServiceAccount... items){
            for (ServiceAccount item : items) {ServiceAccountBuilder builder = new ServiceAccountBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToServiceAccountObjects(Collection items){
            for (ServiceAccount item : items) {ServiceAccountBuilder builder = new ServiceAccountBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromServiceAccountObjects(ServiceAccount... items){
            for (ServiceAccount item : items) {ServiceAccountBuilder builder = new ServiceAccountBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromServiceAccountObjects(Collection items){
            for (ServiceAccount item : items) {ServiceAccountBuilder builder = new ServiceAccountBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ServiceAccountObjectsNested addNewServiceAccountObject(){
            return new ServiceAccountObjectsNestedImpl();
    }

    public TemplateFluent.ServiceAccountObjectsNested addNewServiceAccountObjectLike(ServiceAccount item){
            return new ServiceAccountObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ServiceAccountObjectsNested setNewServiceAccountObjectLike(int index,ServiceAccount item){
            return new ServiceAccountObjectsNestedImpl(index, item);
    }

    public A addToConfigMapObjects(int index,ConfigMap item){
            ConfigMapBuilder builder = new ConfigMapBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToConfigMapObjects(int index,ConfigMap item){
            ConfigMapBuilder builder = new ConfigMapBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToConfigMapObjects(ConfigMap... items){
            for (ConfigMap item : items) {ConfigMapBuilder builder = new ConfigMapBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToConfigMapObjects(Collection items){
            for (ConfigMap item : items) {ConfigMapBuilder builder = new ConfigMapBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromConfigMapObjects(ConfigMap... items){
            for (ConfigMap item : items) {ConfigMapBuilder builder = new ConfigMapBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromConfigMapObjects(Collection items){
            for (ConfigMap item : items) {ConfigMapBuilder builder = new ConfigMapBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ConfigMapObjectsNested addNewConfigMapObject(){
            return new ConfigMapObjectsNestedImpl();
    }

    public TemplateFluent.ConfigMapObjectsNested addNewConfigMapObjectLike(ConfigMap item){
            return new ConfigMapObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ConfigMapObjectsNested setNewConfigMapObjectLike(int index,ConfigMap item){
            return new ConfigMapObjectsNestedImpl(index, item);
    }

    public A addToOAuthClientAuthorizationObjects(int index,OAuthClientAuthorization item){
            OAuthClientAuthorizationBuilder builder = new OAuthClientAuthorizationBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToOAuthClientAuthorizationObjects(int index,OAuthClientAuthorization item){
            OAuthClientAuthorizationBuilder builder = new OAuthClientAuthorizationBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToOAuthClientAuthorizationObjects(OAuthClientAuthorization... items){
            for (OAuthClientAuthorization item : items) {OAuthClientAuthorizationBuilder builder = new OAuthClientAuthorizationBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToOAuthClientAuthorizationObjects(Collection items){
            for (OAuthClientAuthorization item : items) {OAuthClientAuthorizationBuilder builder = new OAuthClientAuthorizationBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromOAuthClientAuthorizationObjects(OAuthClientAuthorization... items){
            for (OAuthClientAuthorization item : items) {OAuthClientAuthorizationBuilder builder = new OAuthClientAuthorizationBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromOAuthClientAuthorizationObjects(Collection items){
            for (OAuthClientAuthorization item : items) {OAuthClientAuthorizationBuilder builder = new OAuthClientAuthorizationBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.OAuthClientAuthorizationObjectsNested addNewOAuthClientAuthorizationObject(){
            return new OAuthClientAuthorizationObjectsNestedImpl();
    }

    public TemplateFluent.OAuthClientAuthorizationObjectsNested addNewOAuthClientAuthorizationObjectLike(OAuthClientAuthorization item){
            return new OAuthClientAuthorizationObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.OAuthClientAuthorizationObjectsNested setNewOAuthClientAuthorizationObjectLike(int index,OAuthClientAuthorization item){
            return new OAuthClientAuthorizationObjectsNestedImpl(index, item);
    }

    public A addToPolicyObjects(int index,Policy item){
            PolicyBuilder builder = new PolicyBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToPolicyObjects(int index,Policy item){
            PolicyBuilder builder = new PolicyBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToPolicyObjects(Policy... items){
            for (Policy item : items) {PolicyBuilder builder = new PolicyBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToPolicyObjects(Collection items){
            for (Policy item : items) {PolicyBuilder builder = new PolicyBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromPolicyObjects(Policy... items){
            for (Policy item : items) {PolicyBuilder builder = new PolicyBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromPolicyObjects(Collection items){
            for (Policy item : items) {PolicyBuilder builder = new PolicyBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.PolicyObjectsNested addNewPolicyObject(){
            return new PolicyObjectsNestedImpl();
    }

    public TemplateFluent.PolicyObjectsNested addNewPolicyObjectLike(Policy item){
            return new PolicyObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.PolicyObjectsNested setNewPolicyObjectLike(int index,Policy item){
            return new PolicyObjectsNestedImpl(index, item);
    }

    public A addToOAuthAuthorizeTokenObjects(int index,OAuthAuthorizeToken item){
            OAuthAuthorizeTokenBuilder builder = new OAuthAuthorizeTokenBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToOAuthAuthorizeTokenObjects(int index,OAuthAuthorizeToken item){
            OAuthAuthorizeTokenBuilder builder = new OAuthAuthorizeTokenBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToOAuthAuthorizeTokenObjects(OAuthAuthorizeToken... items){
            for (OAuthAuthorizeToken item : items) {OAuthAuthorizeTokenBuilder builder = new OAuthAuthorizeTokenBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToOAuthAuthorizeTokenObjects(Collection items){
            for (OAuthAuthorizeToken item : items) {OAuthAuthorizeTokenBuilder builder = new OAuthAuthorizeTokenBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromOAuthAuthorizeTokenObjects(OAuthAuthorizeToken... items){
            for (OAuthAuthorizeToken item : items) {OAuthAuthorizeTokenBuilder builder = new OAuthAuthorizeTokenBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromOAuthAuthorizeTokenObjects(Collection items){
            for (OAuthAuthorizeToken item : items) {OAuthAuthorizeTokenBuilder builder = new OAuthAuthorizeTokenBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.OAuthAuthorizeTokenObjectsNested addNewOAuthAuthorizeTokenObject(){
            return new OAuthAuthorizeTokenObjectsNestedImpl();
    }

    public TemplateFluent.OAuthAuthorizeTokenObjectsNested addNewOAuthAuthorizeTokenObjectLike(OAuthAuthorizeToken item){
            return new OAuthAuthorizeTokenObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.OAuthAuthorizeTokenObjectsNested setNewOAuthAuthorizeTokenObjectLike(int index,OAuthAuthorizeToken item){
            return new OAuthAuthorizeTokenObjectsNestedImpl(index, item);
    }

    public A addToJenkinsBindingObjects(int index,JenkinsBinding item){
            JenkinsBindingBuilder builder = new JenkinsBindingBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToJenkinsBindingObjects(int index,JenkinsBinding item){
            JenkinsBindingBuilder builder = new JenkinsBindingBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToJenkinsBindingObjects(JenkinsBinding... items){
            for (JenkinsBinding item : items) {JenkinsBindingBuilder builder = new JenkinsBindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToJenkinsBindingObjects(Collection items){
            for (JenkinsBinding item : items) {JenkinsBindingBuilder builder = new JenkinsBindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromJenkinsBindingObjects(JenkinsBinding... items){
            for (JenkinsBinding item : items) {JenkinsBindingBuilder builder = new JenkinsBindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromJenkinsBindingObjects(Collection items){
            for (JenkinsBinding item : items) {JenkinsBindingBuilder builder = new JenkinsBindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.JenkinsBindingObjectsNested addNewJenkinsBindingObject(){
            return new JenkinsBindingObjectsNestedImpl();
    }

    public TemplateFluent.JenkinsBindingObjectsNested addNewJenkinsBindingObjectLike(JenkinsBinding item){
            return new JenkinsBindingObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.JenkinsBindingObjectsNested setNewJenkinsBindingObjectLike(int index,JenkinsBinding item){
            return new JenkinsBindingObjectsNestedImpl(index, item);
    }

    public A addToIdentityObjects(int index,Identity item){
            IdentityBuilder builder = new IdentityBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToIdentityObjects(int index,Identity item){
            IdentityBuilder builder = new IdentityBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToIdentityObjects(Identity... items){
            for (Identity item : items) {IdentityBuilder builder = new IdentityBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToIdentityObjects(Collection items){
            for (Identity item : items) {IdentityBuilder builder = new IdentityBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromIdentityObjects(Identity... items){
            for (Identity item : items) {IdentityBuilder builder = new IdentityBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromIdentityObjects(Collection items){
            for (Identity item : items) {IdentityBuilder builder = new IdentityBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.IdentityObjectsNested addNewIdentityObject(){
            return new IdentityObjectsNestedImpl();
    }

    public TemplateFluent.IdentityObjectsNested addNewIdentityObjectLike(Identity item){
            return new IdentityObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.IdentityObjectsNested setNewIdentityObjectLike(int index,Identity item){
            return new IdentityObjectsNestedImpl(index, item);
    }

    public A addToPodTemplateObjects(int index,PodTemplate item){
            PodTemplateBuilder builder = new PodTemplateBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToPodTemplateObjects(int index,PodTemplate item){
            PodTemplateBuilder builder = new PodTemplateBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToPodTemplateObjects(PodTemplate... items){
            for (PodTemplate item : items) {PodTemplateBuilder builder = new PodTemplateBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToPodTemplateObjects(Collection items){
            for (PodTemplate item : items) {PodTemplateBuilder builder = new PodTemplateBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromPodTemplateObjects(PodTemplate... items){
            for (PodTemplate item : items) {PodTemplateBuilder builder = new PodTemplateBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromPodTemplateObjects(Collection items){
            for (PodTemplate item : items) {PodTemplateBuilder builder = new PodTemplateBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.PodTemplateObjectsNested addNewPodTemplateObject(){
            return new PodTemplateObjectsNestedImpl();
    }

    public TemplateFluent.PodTemplateObjectsNested addNewPodTemplateObjectLike(PodTemplate item){
            return new PodTemplateObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.PodTemplateObjectsNested setNewPodTemplateObjectLike(int index,PodTemplate item){
            return new PodTemplateObjectsNestedImpl(index, item);
    }

    public A addToTokenReviewObjects(int index,TokenReview item){
            TokenReviewBuilder builder = new TokenReviewBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToTokenReviewObjects(int index,TokenReview item){
            TokenReviewBuilder builder = new TokenReviewBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToTokenReviewObjects(TokenReview... items){
            for (TokenReview item : items) {TokenReviewBuilder builder = new TokenReviewBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToTokenReviewObjects(Collection items){
            for (TokenReview item : items) {TokenReviewBuilder builder = new TokenReviewBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromTokenReviewObjects(TokenReview... items){
            for (TokenReview item : items) {TokenReviewBuilder builder = new TokenReviewBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromTokenReviewObjects(Collection items){
            for (TokenReview item : items) {TokenReviewBuilder builder = new TokenReviewBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.TokenReviewObjectsNested addNewTokenReviewObject(){
            return new TokenReviewObjectsNestedImpl();
    }

    public TemplateFluent.TokenReviewObjectsNested addNewTokenReviewObjectLike(TokenReview item){
            return new TokenReviewObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.TokenReviewObjectsNested setNewTokenReviewObjectLike(int index,TokenReview item){
            return new TokenReviewObjectsNestedImpl(index, item);
    }

    public A addToCustomResourceDefinitionObjects(int index,CustomResourceDefinition item){
            CustomResourceDefinitionBuilder builder = new CustomResourceDefinitionBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToCustomResourceDefinitionObjects(int index,CustomResourceDefinition item){
            CustomResourceDefinitionBuilder builder = new CustomResourceDefinitionBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToCustomResourceDefinitionObjects(CustomResourceDefinition... items){
            for (CustomResourceDefinition item : items) {CustomResourceDefinitionBuilder builder = new CustomResourceDefinitionBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToCustomResourceDefinitionObjects(Collection items){
            for (CustomResourceDefinition item : items) {CustomResourceDefinitionBuilder builder = new CustomResourceDefinitionBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromCustomResourceDefinitionObjects(CustomResourceDefinition... items){
            for (CustomResourceDefinition item : items) {CustomResourceDefinitionBuilder builder = new CustomResourceDefinitionBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromCustomResourceDefinitionObjects(Collection items){
            for (CustomResourceDefinition item : items) {CustomResourceDefinitionBuilder builder = new CustomResourceDefinitionBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.CustomResourceDefinitionObjectsNested addNewCustomResourceDefinitionObject(){
            return new CustomResourceDefinitionObjectsNestedImpl();
    }

    public TemplateFluent.CustomResourceDefinitionObjectsNested addNewCustomResourceDefinitionObjectLike(CustomResourceDefinition item){
            return new CustomResourceDefinitionObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.CustomResourceDefinitionObjectsNested setNewCustomResourceDefinitionObjectLike(int index,CustomResourceDefinition item){
            return new CustomResourceDefinitionObjectsNestedImpl(index, item);
    }

    public A addToImageSignatureObjects(int index,ImageSignature item){
            ImageSignatureBuilder builder = new ImageSignatureBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToImageSignatureObjects(int index,ImageSignature item){
            ImageSignatureBuilder builder = new ImageSignatureBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToImageSignatureObjects(ImageSignature... items){
            for (ImageSignature item : items) {ImageSignatureBuilder builder = new ImageSignatureBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToImageSignatureObjects(Collection items){
            for (ImageSignature item : items) {ImageSignatureBuilder builder = new ImageSignatureBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromImageSignatureObjects(ImageSignature... items){
            for (ImageSignature item : items) {ImageSignatureBuilder builder = new ImageSignatureBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromImageSignatureObjects(Collection items){
            for (ImageSignature item : items) {ImageSignatureBuilder builder = new ImageSignatureBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ImageSignatureObjectsNested addNewImageSignatureObject(){
            return new ImageSignatureObjectsNestedImpl();
    }

    public TemplateFluent.ImageSignatureObjectsNested addNewImageSignatureObjectLike(ImageSignature item){
            return new ImageSignatureObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ImageSignatureObjectsNested setNewImageSignatureObjectLike(int index,ImageSignature item){
            return new ImageSignatureObjectsNestedImpl(index, item);
    }

    public A addToClusterRoleObjects(int index,ClusterRole item){
            ClusterRoleBuilder builder = new ClusterRoleBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToClusterRoleObjects(int index,ClusterRole item){
            ClusterRoleBuilder builder = new ClusterRoleBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToClusterRoleObjects(ClusterRole... items){
            for (ClusterRole item : items) {ClusterRoleBuilder builder = new ClusterRoleBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToClusterRoleObjects(Collection items){
            for (ClusterRole item : items) {ClusterRoleBuilder builder = new ClusterRoleBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromClusterRoleObjects(ClusterRole... items){
            for (ClusterRole item : items) {ClusterRoleBuilder builder = new ClusterRoleBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromClusterRoleObjects(Collection items){
            for (ClusterRole item : items) {ClusterRoleBuilder builder = new ClusterRoleBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ClusterRoleObjectsNested addNewClusterRoleObject(){
            return new ClusterRoleObjectsNestedImpl();
    }

    public TemplateFluent.ClusterRoleObjectsNested addNewClusterRoleObjectLike(ClusterRole item){
            return new ClusterRoleObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ClusterRoleObjectsNested setNewClusterRoleObjectLike(int index,ClusterRole item){
            return new ClusterRoleObjectsNestedImpl(index, item);
    }

    public A addToNamespaceObjects(int index,Namespace item){
            NamespaceBuilder builder = new NamespaceBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToNamespaceObjects(int index,Namespace item){
            NamespaceBuilder builder = new NamespaceBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToNamespaceObjects(Namespace... items){
            for (Namespace item : items) {NamespaceBuilder builder = new NamespaceBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToNamespaceObjects(Collection items){
            for (Namespace item : items) {NamespaceBuilder builder = new NamespaceBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromNamespaceObjects(Namespace... items){
            for (Namespace item : items) {NamespaceBuilder builder = new NamespaceBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromNamespaceObjects(Collection items){
            for (Namespace item : items) {NamespaceBuilder builder = new NamespaceBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.NamespaceObjectsNested addNewNamespaceObject(){
            return new NamespaceObjectsNestedImpl();
    }

    public TemplateFluent.NamespaceObjectsNested addNewNamespaceObjectLike(Namespace item){
            return new NamespaceObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.NamespaceObjectsNested setNewNamespaceObjectLike(int index,Namespace item){
            return new NamespaceObjectsNestedImpl(index, item);
    }

    public A addToClusterPolicyObjects(int index,ClusterPolicy item){
            ClusterPolicyBuilder builder = new ClusterPolicyBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToClusterPolicyObjects(int index,ClusterPolicy item){
            ClusterPolicyBuilder builder = new ClusterPolicyBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToClusterPolicyObjects(ClusterPolicy... items){
            for (ClusterPolicy item : items) {ClusterPolicyBuilder builder = new ClusterPolicyBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToClusterPolicyObjects(Collection items){
            for (ClusterPolicy item : items) {ClusterPolicyBuilder builder = new ClusterPolicyBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromClusterPolicyObjects(ClusterPolicy... items){
            for (ClusterPolicy item : items) {ClusterPolicyBuilder builder = new ClusterPolicyBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromClusterPolicyObjects(Collection items){
            for (ClusterPolicy item : items) {ClusterPolicyBuilder builder = new ClusterPolicyBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ClusterPolicyObjectsNested addNewClusterPolicyObject(){
            return new ClusterPolicyObjectsNestedImpl();
    }

    public TemplateFluent.ClusterPolicyObjectsNested addNewClusterPolicyObjectLike(ClusterPolicy item){
            return new ClusterPolicyObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ClusterPolicyObjectsNested setNewClusterPolicyObjectLike(int index,ClusterPolicy item){
            return new ClusterPolicyObjectsNestedImpl(index, item);
    }

    public A addToBuildObjects(int index,Build item){
            BuildBuilder builder = new BuildBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToBuildObjects(int index,Build item){
            BuildBuilder builder = new BuildBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToBuildObjects(Build... items){
            for (Build item : items) {BuildBuilder builder = new BuildBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToBuildObjects(Collection items){
            for (Build item : items) {BuildBuilder builder = new BuildBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromBuildObjects(Build... items){
            for (Build item : items) {BuildBuilder builder = new BuildBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromBuildObjects(Collection items){
            for (Build item : items) {BuildBuilder builder = new BuildBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.BuildObjectsNested addNewBuildObject(){
            return new BuildObjectsNestedImpl();
    }

    public TemplateFluent.BuildObjectsNested addNewBuildObjectLike(Build item){
            return new BuildObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.BuildObjectsNested setNewBuildObjectLike(int index,Build item){
            return new BuildObjectsNestedImpl(index, item);
    }

    public A addToScaleObjects(int index,Scale item){
            ScaleBuilder builder = new ScaleBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToScaleObjects(int index,Scale item){
            ScaleBuilder builder = new ScaleBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToScaleObjects(Scale... items){
            for (Scale item : items) {ScaleBuilder builder = new ScaleBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToScaleObjects(Collection items){
            for (Scale item : items) {ScaleBuilder builder = new ScaleBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromScaleObjects(Scale... items){
            for (Scale item : items) {ScaleBuilder builder = new ScaleBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromScaleObjects(Collection items){
            for (Scale item : items) {ScaleBuilder builder = new ScaleBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ScaleObjectsNested addNewScaleObject(){
            return new ScaleObjectsNestedImpl();
    }

    public TemplateFluent.ScaleObjectsNested addNewScaleObjectLike(Scale item){
            return new ScaleObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ScaleObjectsNested setNewScaleObjectLike(int index,Scale item){
            return new ScaleObjectsNestedImpl(index, item);
    }

    public A addToPodObjects(int index,Pod item){
            PodBuilder builder = new PodBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToPodObjects(int index,Pod item){
            PodBuilder builder = new PodBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToPodObjects(Pod... items){
            for (Pod item : items) {PodBuilder builder = new PodBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToPodObjects(Collection items){
            for (Pod item : items) {PodBuilder builder = new PodBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromPodObjects(Pod... items){
            for (Pod item : items) {PodBuilder builder = new PodBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromPodObjects(Collection items){
            for (Pod item : items) {PodBuilder builder = new PodBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.PodObjectsNested addNewPodObject(){
            return new PodObjectsNestedImpl();
    }

    public TemplateFluent.PodObjectsNested addNewPodObjectLike(Pod item){
            return new PodObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.PodObjectsNested setNewPodObjectLike(int index,Pod item){
            return new PodObjectsNestedImpl(index, item);
    }

    public A addToHorizontalPodAutoscalerObjects(int index,HorizontalPodAutoscaler item){
            HorizontalPodAutoscalerBuilder builder = new HorizontalPodAutoscalerBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToHorizontalPodAutoscalerObjects(int index,HorizontalPodAutoscaler item){
            HorizontalPodAutoscalerBuilder builder = new HorizontalPodAutoscalerBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToHorizontalPodAutoscalerObjects(HorizontalPodAutoscaler... items){
            for (HorizontalPodAutoscaler item : items) {HorizontalPodAutoscalerBuilder builder = new HorizontalPodAutoscalerBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToHorizontalPodAutoscalerObjects(Collection items){
            for (HorizontalPodAutoscaler item : items) {HorizontalPodAutoscalerBuilder builder = new HorizontalPodAutoscalerBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromHorizontalPodAutoscalerObjects(HorizontalPodAutoscaler... items){
            for (HorizontalPodAutoscaler item : items) {HorizontalPodAutoscalerBuilder builder = new HorizontalPodAutoscalerBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromHorizontalPodAutoscalerObjects(Collection items){
            for (HorizontalPodAutoscaler item : items) {HorizontalPodAutoscalerBuilder builder = new HorizontalPodAutoscalerBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.HorizontalPodAutoscalerObjectsNested addNewHorizontalPodAutoscalerObject(){
            return new HorizontalPodAutoscalerObjectsNestedImpl();
    }

    public TemplateFluent.HorizontalPodAutoscalerObjectsNested addNewHorizontalPodAutoscalerObjectLike(HorizontalPodAutoscaler item){
            return new HorizontalPodAutoscalerObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.HorizontalPodAutoscalerObjectsNested setNewHorizontalPodAutoscalerObjectLike(int index,HorizontalPodAutoscaler item){
            return new HorizontalPodAutoscalerObjectsNestedImpl(index, item);
    }

    public A addToThirdPartyResourceObjects(int index,ThirdPartyResource item){
            ThirdPartyResourceBuilder builder = new ThirdPartyResourceBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToThirdPartyResourceObjects(int index,ThirdPartyResource item){
            ThirdPartyResourceBuilder builder = new ThirdPartyResourceBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToThirdPartyResourceObjects(ThirdPartyResource... items){
            for (ThirdPartyResource item : items) {ThirdPartyResourceBuilder builder = new ThirdPartyResourceBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToThirdPartyResourceObjects(Collection items){
            for (ThirdPartyResource item : items) {ThirdPartyResourceBuilder builder = new ThirdPartyResourceBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromThirdPartyResourceObjects(ThirdPartyResource... items){
            for (ThirdPartyResource item : items) {ThirdPartyResourceBuilder builder = new ThirdPartyResourceBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromThirdPartyResourceObjects(Collection items){
            for (ThirdPartyResource item : items) {ThirdPartyResourceBuilder builder = new ThirdPartyResourceBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ThirdPartyResourceObjectsNested addNewThirdPartyResourceObject(){
            return new ThirdPartyResourceObjectsNestedImpl();
    }

    public TemplateFluent.ThirdPartyResourceObjectsNested addNewThirdPartyResourceObjectLike(ThirdPartyResource item){
            return new ThirdPartyResourceObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ThirdPartyResourceObjectsNested setNewThirdPartyResourceObjectLike(int index,ThirdPartyResource item){
            return new ThirdPartyResourceObjectsNestedImpl(index, item);
    }

    public A addToImageStreamTagObjects(int index,ImageStreamTag item){
            ImageStreamTagBuilder builder = new ImageStreamTagBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToImageStreamTagObjects(int index,ImageStreamTag item){
            ImageStreamTagBuilder builder = new ImageStreamTagBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToImageStreamTagObjects(ImageStreamTag... items){
            for (ImageStreamTag item : items) {ImageStreamTagBuilder builder = new ImageStreamTagBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToImageStreamTagObjects(Collection items){
            for (ImageStreamTag item : items) {ImageStreamTagBuilder builder = new ImageStreamTagBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromImageStreamTagObjects(ImageStreamTag... items){
            for (ImageStreamTag item : items) {ImageStreamTagBuilder builder = new ImageStreamTagBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromImageStreamTagObjects(Collection items){
            for (ImageStreamTag item : items) {ImageStreamTagBuilder builder = new ImageStreamTagBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ImageStreamTagObjectsNested addNewImageStreamTagObject(){
            return new ImageStreamTagObjectsNestedImpl();
    }

    public TemplateFluent.ImageStreamTagObjectsNested addNewImageStreamTagObjectLike(ImageStreamTag item){
            return new ImageStreamTagObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ImageStreamTagObjectsNested setNewImageStreamTagObjectLike(int index,ImageStreamTag item){
            return new ImageStreamTagObjectsNestedImpl(index, item);
    }

    public A addToComponentStatusObjects(int index,ComponentStatus item){
            ComponentStatusBuilder builder = new ComponentStatusBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToComponentStatusObjects(int index,ComponentStatus item){
            ComponentStatusBuilder builder = new ComponentStatusBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToComponentStatusObjects(ComponentStatus... items){
            for (ComponentStatus item : items) {ComponentStatusBuilder builder = new ComponentStatusBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToComponentStatusObjects(Collection items){
            for (ComponentStatus item : items) {ComponentStatusBuilder builder = new ComponentStatusBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromComponentStatusObjects(ComponentStatus... items){
            for (ComponentStatus item : items) {ComponentStatusBuilder builder = new ComponentStatusBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromComponentStatusObjects(Collection items){
            for (ComponentStatus item : items) {ComponentStatusBuilder builder = new ComponentStatusBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ComponentStatusObjectsNested addNewComponentStatusObject(){
            return new ComponentStatusObjectsNestedImpl();
    }

    public TemplateFluent.ComponentStatusObjectsNested addNewComponentStatusObjectLike(ComponentStatus item){
            return new ComponentStatusObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ComponentStatusObjectsNested setNewComponentStatusObjectLike(int index,ComponentStatus item){
            return new ComponentStatusObjectsNestedImpl(index, item);
    }

    public A addToSecretObjects(int index,Secret item){
            SecretBuilder builder = new SecretBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToSecretObjects(int index,Secret item){
            SecretBuilder builder = new SecretBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToSecretObjects(Secret... items){
            for (Secret item : items) {SecretBuilder builder = new SecretBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToSecretObjects(Collection items){
            for (Secret item : items) {SecretBuilder builder = new SecretBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromSecretObjects(Secret... items){
            for (Secret item : items) {SecretBuilder builder = new SecretBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromSecretObjects(Collection items){
            for (Secret item : items) {SecretBuilder builder = new SecretBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.SecretObjectsNested addNewSecretObject(){
            return new SecretObjectsNestedImpl();
    }

    public TemplateFluent.SecretObjectsNested addNewSecretObjectLike(Secret item){
            return new SecretObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.SecretObjectsNested setNewSecretObjectLike(int index,Secret item){
            return new SecretObjectsNestedImpl(index, item);
    }

    public A addToReplicationControllerObjects(int index,ReplicationController item){
            ReplicationControllerBuilder builder = new ReplicationControllerBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToReplicationControllerObjects(int index,ReplicationController item){
            ReplicationControllerBuilder builder = new ReplicationControllerBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToReplicationControllerObjects(ReplicationController... items){
            for (ReplicationController item : items) {ReplicationControllerBuilder builder = new ReplicationControllerBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToReplicationControllerObjects(Collection items){
            for (ReplicationController item : items) {ReplicationControllerBuilder builder = new ReplicationControllerBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromReplicationControllerObjects(ReplicationController... items){
            for (ReplicationController item : items) {ReplicationControllerBuilder builder = new ReplicationControllerBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromReplicationControllerObjects(Collection items){
            for (ReplicationController item : items) {ReplicationControllerBuilder builder = new ReplicationControllerBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ReplicationControllerObjectsNested addNewReplicationControllerObject(){
            return new ReplicationControllerObjectsNestedImpl();
    }

    public TemplateFluent.ReplicationControllerObjectsNested addNewReplicationControllerObjectLike(ReplicationController item){
            return new ReplicationControllerObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ReplicationControllerObjectsNested setNewReplicationControllerObjectLike(int index,ReplicationController item){
            return new ReplicationControllerObjectsNestedImpl(index, item);
    }

    public A addToLimitRangeObjects(int index,LimitRange item){
            LimitRangeBuilder builder = new LimitRangeBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToLimitRangeObjects(int index,LimitRange item){
            LimitRangeBuilder builder = new LimitRangeBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToLimitRangeObjects(LimitRange... items){
            for (LimitRange item : items) {LimitRangeBuilder builder = new LimitRangeBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToLimitRangeObjects(Collection items){
            for (LimitRange item : items) {LimitRangeBuilder builder = new LimitRangeBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromLimitRangeObjects(LimitRange... items){
            for (LimitRange item : items) {LimitRangeBuilder builder = new LimitRangeBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromLimitRangeObjects(Collection items){
            for (LimitRange item : items) {LimitRangeBuilder builder = new LimitRangeBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.LimitRangeObjectsNested addNewLimitRangeObject(){
            return new LimitRangeObjectsNestedImpl();
    }

    public TemplateFluent.LimitRangeObjectsNested addNewLimitRangeObjectLike(LimitRange item){
            return new LimitRangeObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.LimitRangeObjectsNested setNewLimitRangeObjectLike(int index,LimitRange item){
            return new LimitRangeObjectsNestedImpl(index, item);
    }

    public A addToEndpointsObjects(int index,Endpoints item){
            EndpointsBuilder builder = new EndpointsBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToEndpointsObjects(int index,Endpoints item){
            EndpointsBuilder builder = new EndpointsBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToEndpointsObjects(Endpoints... items){
            for (Endpoints item : items) {EndpointsBuilder builder = new EndpointsBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToEndpointsObjects(Collection items){
            for (Endpoints item : items) {EndpointsBuilder builder = new EndpointsBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromEndpointsObjects(Endpoints... items){
            for (Endpoints item : items) {EndpointsBuilder builder = new EndpointsBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromEndpointsObjects(Collection items){
            for (Endpoints item : items) {EndpointsBuilder builder = new EndpointsBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.EndpointsObjectsNested addNewEndpointsObject(){
            return new EndpointsObjectsNestedImpl();
    }

    public TemplateFluent.EndpointsObjectsNested addNewEndpointsObjectLike(Endpoints item){
            return new EndpointsObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.EndpointsObjectsNested setNewEndpointsObjectLike(int index,Endpoints item){
            return new EndpointsObjectsNestedImpl(index, item);
    }

    public A addToSecurityContextConstraintsObjects(int index,SecurityContextConstraints item){
            SecurityContextConstraintsBuilder builder = new SecurityContextConstraintsBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToSecurityContextConstraintsObjects(int index,SecurityContextConstraints item){
            SecurityContextConstraintsBuilder builder = new SecurityContextConstraintsBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToSecurityContextConstraintsObjects(SecurityContextConstraints... items){
            for (SecurityContextConstraints item : items) {SecurityContextConstraintsBuilder builder = new SecurityContextConstraintsBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToSecurityContextConstraintsObjects(Collection items){
            for (SecurityContextConstraints item : items) {SecurityContextConstraintsBuilder builder = new SecurityContextConstraintsBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromSecurityContextConstraintsObjects(SecurityContextConstraints... items){
            for (SecurityContextConstraints item : items) {SecurityContextConstraintsBuilder builder = new SecurityContextConstraintsBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromSecurityContextConstraintsObjects(Collection items){
            for (SecurityContextConstraints item : items) {SecurityContextConstraintsBuilder builder = new SecurityContextConstraintsBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.SecurityContextConstraintsObjectsNested addNewSecurityContextConstraintsObject(){
            return new SecurityContextConstraintsObjectsNestedImpl();
    }

    public TemplateFluent.SecurityContextConstraintsObjectsNested addNewSecurityContextConstraintsObjectLike(SecurityContextConstraints item){
            return new SecurityContextConstraintsObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.SecurityContextConstraintsObjectsNested setNewSecurityContextConstraintsObjectLike(int index,SecurityContextConstraints item){
            return new SecurityContextConstraintsObjectsNestedImpl(index, item);
    }

    public A addToGroupObjects(int index,Group item){
            GroupBuilder builder = new GroupBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToGroupObjects(int index,Group item){
            GroupBuilder builder = new GroupBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToGroupObjects(Group... items){
            for (Group item : items) {GroupBuilder builder = new GroupBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToGroupObjects(Collection items){
            for (Group item : items) {GroupBuilder builder = new GroupBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromGroupObjects(Group... items){
            for (Group item : items) {GroupBuilder builder = new GroupBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromGroupObjects(Collection items){
            for (Group item : items) {GroupBuilder builder = new GroupBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.GroupObjectsNested addNewGroupObject(){
            return new GroupObjectsNestedImpl();
    }

    public TemplateFluent.GroupObjectsNested addNewGroupObjectLike(Group item){
            return new GroupObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.GroupObjectsNested setNewGroupObjectLike(int index,Group item){
            return new GroupObjectsNestedImpl(index, item);
    }

    public A addToEventObjects(int index,Event item){
            EventBuilder builder = new EventBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToEventObjects(int index,Event item){
            EventBuilder builder = new EventBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToEventObjects(Event... items){
            for (Event item : items) {EventBuilder builder = new EventBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToEventObjects(Collection items){
            for (Event item : items) {EventBuilder builder = new EventBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromEventObjects(Event... items){
            for (Event item : items) {EventBuilder builder = new EventBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromEventObjects(Collection items){
            for (Event item : items) {EventBuilder builder = new EventBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.EventObjectsNested addNewEventObject(){
            return new EventObjectsNestedImpl();
    }

    public TemplateFluent.EventObjectsNested addNewEventObjectLike(Event item){
            return new EventObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.EventObjectsNested setNewEventObjectLike(int index,Event item){
            return new EventObjectsNestedImpl(index, item);
    }

    public A addToNodeObjects(int index,Node item){
            NodeBuilder builder = new NodeBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToNodeObjects(int index,Node item){
            NodeBuilder builder = new NodeBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToNodeObjects(Node... items){
            for (Node item : items) {NodeBuilder builder = new NodeBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToNodeObjects(Collection items){
            for (Node item : items) {NodeBuilder builder = new NodeBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromNodeObjects(Node... items){
            for (Node item : items) {NodeBuilder builder = new NodeBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromNodeObjects(Collection items){
            for (Node item : items) {NodeBuilder builder = new NodeBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.NodeObjectsNested addNewNodeObject(){
            return new NodeObjectsNestedImpl();
    }

    public TemplateFluent.NodeObjectsNested addNewNodeObjectLike(Node item){
            return new NodeObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.NodeObjectsNested setNewNodeObjectLike(int index,Node item){
            return new NodeObjectsNestedImpl(index, item);
    }

    public A addToReplicaSetObjects(int index,ReplicaSet item){
            ReplicaSetBuilder builder = new ReplicaSetBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToReplicaSetObjects(int index,ReplicaSet item){
            ReplicaSetBuilder builder = new ReplicaSetBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToReplicaSetObjects(ReplicaSet... items){
            for (ReplicaSet item : items) {ReplicaSetBuilder builder = new ReplicaSetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToReplicaSetObjects(Collection items){
            for (ReplicaSet item : items) {ReplicaSetBuilder builder = new ReplicaSetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromReplicaSetObjects(ReplicaSet... items){
            for (ReplicaSet item : items) {ReplicaSetBuilder builder = new ReplicaSetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromReplicaSetObjects(Collection items){
            for (ReplicaSet item : items) {ReplicaSetBuilder builder = new ReplicaSetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ReplicaSetObjectsNested addNewReplicaSetObject(){
            return new ReplicaSetObjectsNestedImpl();
    }

    public TemplateFluent.ReplicaSetObjectsNested addNewReplicaSetObjectLike(ReplicaSet item){
            return new ReplicaSetObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ReplicaSetObjectsNested setNewReplicaSetObjectLike(int index,ReplicaSet item){
            return new ReplicaSetObjectsNestedImpl(index, item);
    }

    public A addToClusterRoleBindingObjects(int index,ClusterRoleBinding item){
            ClusterRoleBindingBuilder builder = new ClusterRoleBindingBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToClusterRoleBindingObjects(int index,ClusterRoleBinding item){
            ClusterRoleBindingBuilder builder = new ClusterRoleBindingBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToClusterRoleBindingObjects(ClusterRoleBinding... items){
            for (ClusterRoleBinding item : items) {ClusterRoleBindingBuilder builder = new ClusterRoleBindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToClusterRoleBindingObjects(Collection items){
            for (ClusterRoleBinding item : items) {ClusterRoleBindingBuilder builder = new ClusterRoleBindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromClusterRoleBindingObjects(ClusterRoleBinding... items){
            for (ClusterRoleBinding item : items) {ClusterRoleBindingBuilder builder = new ClusterRoleBindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromClusterRoleBindingObjects(Collection items){
            for (ClusterRoleBinding item : items) {ClusterRoleBindingBuilder builder = new ClusterRoleBindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ClusterRoleBindingObjectsNested addNewClusterRoleBindingObject(){
            return new ClusterRoleBindingObjectsNestedImpl();
    }

    public TemplateFluent.ClusterRoleBindingObjectsNested addNewClusterRoleBindingObjectLike(ClusterRoleBinding item){
            return new ClusterRoleBindingObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ClusterRoleBindingObjectsNested setNewClusterRoleBindingObjectLike(int index,ClusterRoleBinding item){
            return new ClusterRoleBindingObjectsNestedImpl(index, item);
    }

    public A addToJenkinsObjects(int index,Jenkins item){
            JenkinsBuilder builder = new JenkinsBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToJenkinsObjects(int index,Jenkins item){
            JenkinsBuilder builder = new JenkinsBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToJenkinsObjects(Jenkins... items){
            for (Jenkins item : items) {JenkinsBuilder builder = new JenkinsBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToJenkinsObjects(Collection items){
            for (Jenkins item : items) {JenkinsBuilder builder = new JenkinsBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromJenkinsObjects(Jenkins... items){
            for (Jenkins item : items) {JenkinsBuilder builder = new JenkinsBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromJenkinsObjects(Collection items){
            for (Jenkins item : items) {JenkinsBuilder builder = new JenkinsBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.JenkinsObjectsNested addNewJenkinsObject(){
            return new JenkinsObjectsNestedImpl();
    }

    public TemplateFluent.JenkinsObjectsNested addNewJenkinsObjectLike(Jenkins item){
            return new JenkinsObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.JenkinsObjectsNested setNewJenkinsObjectLike(int index,Jenkins item){
            return new JenkinsObjectsNestedImpl(index, item);
    }

    public A addToDaemonSetObjects(int index,DaemonSet item){
            DaemonSetBuilder builder = new DaemonSetBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToDaemonSetObjects(int index,DaemonSet item){
            DaemonSetBuilder builder = new DaemonSetBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToDaemonSetObjects(DaemonSet... items){
            for (DaemonSet item : items) {DaemonSetBuilder builder = new DaemonSetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToDaemonSetObjects(Collection items){
            for (DaemonSet item : items) {DaemonSetBuilder builder = new DaemonSetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromDaemonSetObjects(DaemonSet... items){
            for (DaemonSet item : items) {DaemonSetBuilder builder = new DaemonSetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromDaemonSetObjects(Collection items){
            for (DaemonSet item : items) {DaemonSetBuilder builder = new DaemonSetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.DaemonSetObjectsNested addNewDaemonSetObject(){
            return new DaemonSetObjectsNestedImpl();
    }

    public TemplateFluent.DaemonSetObjectsNested addNewDaemonSetObjectLike(DaemonSet item){
            return new DaemonSetObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.DaemonSetObjectsNested setNewDaemonSetObjectLike(int index,DaemonSet item){
            return new DaemonSetObjectsNestedImpl(index, item);
    }

    public A addToPodDisruptionBudgetObjects(int index,PodDisruptionBudget item){
            PodDisruptionBudgetBuilder builder = new PodDisruptionBudgetBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToPodDisruptionBudgetObjects(int index,PodDisruptionBudget item){
            PodDisruptionBudgetBuilder builder = new PodDisruptionBudgetBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToPodDisruptionBudgetObjects(PodDisruptionBudget... items){
            for (PodDisruptionBudget item : items) {PodDisruptionBudgetBuilder builder = new PodDisruptionBudgetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToPodDisruptionBudgetObjects(Collection items){
            for (PodDisruptionBudget item : items) {PodDisruptionBudgetBuilder builder = new PodDisruptionBudgetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromPodDisruptionBudgetObjects(PodDisruptionBudget... items){
            for (PodDisruptionBudget item : items) {PodDisruptionBudgetBuilder builder = new PodDisruptionBudgetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromPodDisruptionBudgetObjects(Collection items){
            for (PodDisruptionBudget item : items) {PodDisruptionBudgetBuilder builder = new PodDisruptionBudgetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.PodDisruptionBudgetObjectsNested addNewPodDisruptionBudgetObject(){
            return new PodDisruptionBudgetObjectsNestedImpl();
    }

    public TemplateFluent.PodDisruptionBudgetObjectsNested addNewPodDisruptionBudgetObjectLike(PodDisruptionBudget item){
            return new PodDisruptionBudgetObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.PodDisruptionBudgetObjectsNested setNewPodDisruptionBudgetObjectLike(int index,PodDisruptionBudget item){
            return new PodDisruptionBudgetObjectsNestedImpl(index, item);
    }

    public A addToImageStreamObjects(int index,ImageStream item){
            ImageStreamBuilder builder = new ImageStreamBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToImageStreamObjects(int index,ImageStream item){
            ImageStreamBuilder builder = new ImageStreamBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToImageStreamObjects(ImageStream... items){
            for (ImageStream item : items) {ImageStreamBuilder builder = new ImageStreamBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToImageStreamObjects(Collection items){
            for (ImageStream item : items) {ImageStreamBuilder builder = new ImageStreamBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromImageStreamObjects(ImageStream... items){
            for (ImageStream item : items) {ImageStreamBuilder builder = new ImageStreamBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromImageStreamObjects(Collection items){
            for (ImageStream item : items) {ImageStreamBuilder builder = new ImageStreamBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.ImageStreamObjectsNested addNewImageStreamObject(){
            return new ImageStreamObjectsNestedImpl();
    }

    public TemplateFluent.ImageStreamObjectsNested addNewImageStreamObjectLike(ImageStream item){
            return new ImageStreamObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.ImageStreamObjectsNested setNewImageStreamObjectLike(int index,ImageStream item){
            return new ImageStreamObjectsNestedImpl(index, item);
    }

    public A addToRoleBindingRestrictionObjects(int index,RoleBindingRestriction item){
            RoleBindingRestrictionBuilder builder = new RoleBindingRestrictionBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToRoleBindingRestrictionObjects(int index,RoleBindingRestriction item){
            RoleBindingRestrictionBuilder builder = new RoleBindingRestrictionBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToRoleBindingRestrictionObjects(RoleBindingRestriction... items){
            for (RoleBindingRestriction item : items) {RoleBindingRestrictionBuilder builder = new RoleBindingRestrictionBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToRoleBindingRestrictionObjects(Collection items){
            for (RoleBindingRestriction item : items) {RoleBindingRestrictionBuilder builder = new RoleBindingRestrictionBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromRoleBindingRestrictionObjects(RoleBindingRestriction... items){
            for (RoleBindingRestriction item : items) {RoleBindingRestrictionBuilder builder = new RoleBindingRestrictionBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromRoleBindingRestrictionObjects(Collection items){
            for (RoleBindingRestriction item : items) {RoleBindingRestrictionBuilder builder = new RoleBindingRestrictionBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.RoleBindingRestrictionObjectsNested addNewRoleBindingRestrictionObject(){
            return new RoleBindingRestrictionObjectsNestedImpl();
    }

    public TemplateFluent.RoleBindingRestrictionObjectsNested addNewRoleBindingRestrictionObjectLike(RoleBindingRestriction item){
            return new RoleBindingRestrictionObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.RoleBindingRestrictionObjectsNested setNewRoleBindingRestrictionObjectLike(int index,RoleBindingRestriction item){
            return new RoleBindingRestrictionObjectsNestedImpl(index, item);
    }

    public A addToBindingObjects(int index,Binding item){
            BindingBuilder builder = new BindingBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToBindingObjects(int index,Binding item){
            BindingBuilder builder = new BindingBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToBindingObjects(Binding... items){
            for (Binding item : items) {BindingBuilder builder = new BindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToBindingObjects(Collection items){
            for (Binding item : items) {BindingBuilder builder = new BindingBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromBindingObjects(Binding... items){
            for (Binding item : items) {BindingBuilder builder = new BindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromBindingObjects(Collection items){
            for (Binding item : items) {BindingBuilder builder = new BindingBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.BindingObjectsNested addNewBindingObject(){
            return new BindingObjectsNestedImpl();
    }

    public TemplateFluent.BindingObjectsNested addNewBindingObjectLike(Binding item){
            return new BindingObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.BindingObjectsNested setNewBindingObjectLike(int index,Binding item){
            return new BindingObjectsNestedImpl(index, item);
    }

    public A addToLocalSubjectAccessReviewObjects(int index,io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item){
            io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder builder = new io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToLocalSubjectAccessReviewObjects(int index,io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item){
            io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder builder = new io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToLocalSubjectAccessReviewObjects(io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview... items){
            for (io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item : items) {io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder builder = new io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToAuthorizationLocalSubjectAccessReviewObjects(Collection items){
            for (io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item : items) {io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder builder = new io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromLocalSubjectAccessReviewObjects(io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview... items){
            for (io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item : items) {io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder builder = new io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromAuthorizationLocalSubjectAccessReviewObjects(Collection items){
            for (io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item : items) {io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder builder = new io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReviewBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.AuthorizationLocalSubjectAccessReviewObjectsNested addNewAuthorizationLocalSubjectAccessReviewObject(){
            return new AuthorizationLocalSubjectAccessReviewObjectsNestedImpl();
    }

    public TemplateFluent.AuthorizationLocalSubjectAccessReviewObjectsNested addNewLocalSubjectAccessReviewObjectLike(io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item){
            return new AuthorizationLocalSubjectAccessReviewObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.AuthorizationLocalSubjectAccessReviewObjectsNested setNewLocalSubjectAccessReviewObjectLike(int index,io.alauda.kubernetes.api.model.authorization.LocalSubjectAccessReview item){
            return new AuthorizationLocalSubjectAccessReviewObjectsNestedImpl(index, item);
    }

    public A addToStatefulSetObjects(int index,StatefulSet item){
            StatefulSetBuilder builder = new StatefulSetBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToStatefulSetObjects(int index,StatefulSet item){
            StatefulSetBuilder builder = new StatefulSetBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToStatefulSetObjects(StatefulSet... items){
            for (StatefulSet item : items) {StatefulSetBuilder builder = new StatefulSetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToStatefulSetObjects(Collection items){
            for (StatefulSet item : items) {StatefulSetBuilder builder = new StatefulSetBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromStatefulSetObjects(StatefulSet... items){
            for (StatefulSet item : items) {StatefulSetBuilder builder = new StatefulSetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromStatefulSetObjects(Collection items){
            for (StatefulSet item : items) {StatefulSetBuilder builder = new StatefulSetBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.StatefulSetObjectsNested addNewStatefulSetObject(){
            return new StatefulSetObjectsNestedImpl();
    }

    public TemplateFluent.StatefulSetObjectsNested addNewStatefulSetObjectLike(StatefulSet item){
            return new StatefulSetObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.StatefulSetObjectsNested setNewStatefulSetObjectLike(int index,StatefulSet item){
            return new StatefulSetObjectsNestedImpl(index, item);
    }

    public A addToPipelineTemplateTaskInstanceObjects(int index,PipelineTemplateTaskInstance item){
            PipelineTemplateTaskInstanceBuilder builder = new PipelineTemplateTaskInstanceBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToPipelineTemplateTaskInstanceObjects(int index,PipelineTemplateTaskInstance item){
            PipelineTemplateTaskInstanceBuilder builder = new PipelineTemplateTaskInstanceBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToPipelineTemplateTaskInstanceObjects(PipelineTemplateTaskInstance... items){
            for (PipelineTemplateTaskInstance item : items) {PipelineTemplateTaskInstanceBuilder builder = new PipelineTemplateTaskInstanceBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToPipelineTemplateTaskInstanceObjects(Collection items){
            for (PipelineTemplateTaskInstance item : items) {PipelineTemplateTaskInstanceBuilder builder = new PipelineTemplateTaskInstanceBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromPipelineTemplateTaskInstanceObjects(PipelineTemplateTaskInstance... items){
            for (PipelineTemplateTaskInstance item : items) {PipelineTemplateTaskInstanceBuilder builder = new PipelineTemplateTaskInstanceBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromPipelineTemplateTaskInstanceObjects(Collection items){
            for (PipelineTemplateTaskInstance item : items) {PipelineTemplateTaskInstanceBuilder builder = new PipelineTemplateTaskInstanceBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.PipelineTemplateTaskInstanceObjectsNested addNewPipelineTemplateTaskInstanceObject(){
            return new PipelineTemplateTaskInstanceObjectsNestedImpl();
    }

    public TemplateFluent.PipelineTemplateTaskInstanceObjectsNested addNewPipelineTemplateTaskInstanceObjectLike(PipelineTemplateTaskInstance item){
            return new PipelineTemplateTaskInstanceObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.PipelineTemplateTaskInstanceObjectsNested setNewPipelineTemplateTaskInstanceObjectLike(int index,PipelineTemplateTaskInstance item){
            return new PipelineTemplateTaskInstanceObjectsNestedImpl(index, item);
    }

    public A addToOAuthClientObjects(int index,OAuthClient item){
            OAuthClientBuilder builder = new OAuthClientBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToOAuthClientObjects(int index,OAuthClient item){
            OAuthClientBuilder builder = new OAuthClientBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToOAuthClientObjects(OAuthClient... items){
            for (OAuthClient item : items) {OAuthClientBuilder builder = new OAuthClientBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToOAuthClientObjects(Collection items){
            for (OAuthClient item : items) {OAuthClientBuilder builder = new OAuthClientBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A removeFromOAuthClientObjects(OAuthClient... items){
            for (OAuthClient item : items) {OAuthClientBuilder builder = new OAuthClientBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public A removeAllFromOAuthClientObjects(Collection items){
            for (OAuthClient item : items) {OAuthClientBuilder builder = new OAuthClientBuilder(item);_visitables.remove(builder);this.objects.remove(builder);} return (A)this;
    }

    public TemplateFluent.OAuthClientObjectsNested addNewOAuthClientObject(){
            return new OAuthClientObjectsNestedImpl();
    }

    public TemplateFluent.OAuthClientObjectsNested addNewOAuthClientObjectLike(OAuthClient item){
            return new OAuthClientObjectsNestedImpl(-1, item);
    }

    public TemplateFluent.OAuthClientObjectsNested setNewOAuthClientObjectLike(int index,OAuthClient item){
            return new OAuthClientObjectsNestedImpl(index, item);
    }

    public A addToTemplateObjects(int index,Template item){
            TemplateBuilder builder = new TemplateBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.objects.add(index >= 0 ? index : objects.size(), builder); return (A)this;
    }

    public A setToTemplateObjects(int index,Template item){
            TemplateBuilder builder = new TemplateBuilder(item);
            if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
            if (index < 0 || index >= objects.size()) { objects.add(builder); } else { objects.set(index, builder);}
             return (A)this;
    }

    public A addToTemplateObjects(Template... items){
            for (Template item : items) {TemplateBuilder builder = new TemplateBuilder(item);_visitables.add(builder);this.objects.add(builder);} return (A)this;
    }

    public A addAllToTemplateObjects(Collection