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

io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl Maven / Gradle / Ivy

package io.fabric8.kubernetes.api.model.autoscaling.v2beta2;

import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.String;
import java.util.LinkedHashMap;
import java.lang.Deprecated;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.lang.Boolean;
import java.lang.Object;
import java.util.Map;

 /**
  * Generated
  */
public class MetricSpecFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent{
  public MetricSpecFluentImpl() {
  }
  public MetricSpecFluentImpl(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpec instance) {
    this.withContainerResource(instance.getContainerResource()); 
    this.withExternal(instance.getExternal()); 
    this.withObject(instance.getObject()); 
    this.withPods(instance.getPods()); 
    this.withResource(instance.getResource()); 
    this.withType(instance.getType()); 
    this.withAdditionalProperties(instance.getAdditionalProperties());

  }
  private io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceBuilder containerResource;
  private io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceBuilder external;
  private io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceBuilder object;
  private io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceBuilder pods;
  private io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceBuilder resource;
  private java.lang.String type;
  private java.util.Map additionalProperties;
  
  /**
   * This method has been deprecated, please use method buildContainerResource instead.
   * @return The buildable object.
   */
  @java.lang.Deprecated
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSource getContainerResource() {
    return this.containerResource!=null?this.containerResource.build():null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSource buildContainerResource() {
    return this.containerResource!=null?this.containerResource.build():null;
  }
  public A withContainerResource(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSource containerResource) {
    _visitables.get("containerResource").remove(this.containerResource);
    if (containerResource!=null){ this.containerResource= new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceBuilder(containerResource); _visitables.get("containerResource").add(this.containerResource);} return (A) this;
  }
  public java.lang.Boolean hasContainerResource() {
    return this.containerResource != null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ContainerResourceNested withNewContainerResource() {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ContainerResourceNestedImpl();
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ContainerResourceNested withNewContainerResourceLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSource item) {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ContainerResourceNestedImpl(item);
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ContainerResourceNested editContainerResource() {
    return withNewContainerResourceLike(getContainerResource());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ContainerResourceNested editOrNewContainerResource() {
    return withNewContainerResourceLike(getContainerResource() != null ? getContainerResource(): new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceBuilder().build());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ContainerResourceNested editOrNewContainerResourceLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSource item) {
    return withNewContainerResourceLike(getContainerResource() != null ? getContainerResource(): item);
  }
  
  /**
   * This method has been deprecated, please use method buildExternal instead.
   * @return The buildable object.
   */
  @java.lang.Deprecated
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSource getExternal() {
    return this.external!=null?this.external.build():null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSource buildExternal() {
    return this.external!=null?this.external.build():null;
  }
  public A withExternal(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSource external) {
    _visitables.get("external").remove(this.external);
    if (external!=null){ this.external= new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceBuilder(external); _visitables.get("external").add(this.external);} return (A) this;
  }
  public java.lang.Boolean hasExternal() {
    return this.external != null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ExternalNested withNewExternal() {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ExternalNestedImpl();
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ExternalNested withNewExternalLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSource item) {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ExternalNestedImpl(item);
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ExternalNested editExternal() {
    return withNewExternalLike(getExternal());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ExternalNested editOrNewExternal() {
    return withNewExternalLike(getExternal() != null ? getExternal(): new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceBuilder().build());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ExternalNested editOrNewExternalLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSource item) {
    return withNewExternalLike(getExternal() != null ? getExternal(): item);
  }
  
  /**
   * This method has been deprecated, please use method buildObject instead.
   * @return The buildable object.
   */
  @java.lang.Deprecated
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSource getObject() {
    return this.object!=null?this.object.build():null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSource buildObject() {
    return this.object!=null?this.object.build():null;
  }
  public A withObject(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSource object) {
    _visitables.get("object").remove(this.object);
    if (object!=null){ this.object= new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceBuilder(object); _visitables.get("object").add(this.object);} return (A) this;
  }
  public java.lang.Boolean hasObject() {
    return this.object != null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ObjectNested withNewObject() {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ObjectNestedImpl();
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ObjectNested withNewObjectLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSource item) {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ObjectNestedImpl(item);
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ObjectNested editObject() {
    return withNewObjectLike(getObject());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ObjectNested editOrNewObject() {
    return withNewObjectLike(getObject() != null ? getObject(): new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceBuilder().build());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ObjectNested editOrNewObjectLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSource item) {
    return withNewObjectLike(getObject() != null ? getObject(): item);
  }
  
  /**
   * This method has been deprecated, please use method buildPods instead.
   * @return The buildable object.
   */
  @java.lang.Deprecated
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSource getPods() {
    return this.pods!=null?this.pods.build():null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSource buildPods() {
    return this.pods!=null?this.pods.build():null;
  }
  public A withPods(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSource pods) {
    _visitables.get("pods").remove(this.pods);
    if (pods!=null){ this.pods= new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceBuilder(pods); _visitables.get("pods").add(this.pods);} return (A) this;
  }
  public java.lang.Boolean hasPods() {
    return this.pods != null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.PodsNested withNewPods() {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.PodsNestedImpl();
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.PodsNested withNewPodsLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSource item) {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.PodsNestedImpl(item);
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.PodsNested editPods() {
    return withNewPodsLike(getPods());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.PodsNested editOrNewPods() {
    return withNewPodsLike(getPods() != null ? getPods(): new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceBuilder().build());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.PodsNested editOrNewPodsLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSource item) {
    return withNewPodsLike(getPods() != null ? getPods(): item);
  }
  
  /**
   * This method has been deprecated, please use method buildResource instead.
   * @return The buildable object.
   */
  @java.lang.Deprecated
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSource getResource() {
    return this.resource!=null?this.resource.build():null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSource buildResource() {
    return this.resource!=null?this.resource.build():null;
  }
  public A withResource(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSource resource) {
    _visitables.get("resource").remove(this.resource);
    if (resource!=null){ this.resource= new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceBuilder(resource); _visitables.get("resource").add(this.resource);} return (A) this;
  }
  public java.lang.Boolean hasResource() {
    return this.resource != null;
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ResourceNested withNewResource() {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ResourceNestedImpl();
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ResourceNested withNewResourceLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSource item) {
    return new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluentImpl.ResourceNestedImpl(item);
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ResourceNested editResource() {
    return withNewResourceLike(getResource());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ResourceNested editOrNewResource() {
    return withNewResourceLike(getResource() != null ? getResource(): new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceBuilder().build());
  }
  public io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ResourceNested editOrNewResourceLike(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSource item) {
    return withNewResourceLike(getResource() != null ? getResource(): item);
  }
  public java.lang.String getType() {
    return this.type;
  }
  public A withType(java.lang.String type) {
    this.type=type; return (A) this;
  }
  public java.lang.Boolean hasType() {
    return this.type != null;
  }
  
  /**
   * Method is deprecated. use withType instead.
   */
  @java.lang.Deprecated
  public A withNewType(java.lang.String arg0) {
    return (A)withType(new String(arg0));
  }
  public A addToAdditionalProperties(java.lang.String key,java.lang.Object value) {
    if(this.additionalProperties == null && key != null && value != null) { this.additionalProperties = new java.util.LinkedHashMap(); }
    if(key != null && value != null) {this.additionalProperties.put(key, value);} return (A)this;
  }
  public A addToAdditionalProperties(java.util.Map map) {
    if(this.additionalProperties == null && map != null) { this.additionalProperties = new java.util.LinkedHashMap(); }
    if(map != null) { this.additionalProperties.putAll(map);} return (A)this;
  }
  public A removeFromAdditionalProperties(java.lang.String key) {
    if(this.additionalProperties == null) { return (A) this; }
    if(key != null && this.additionalProperties != null) {this.additionalProperties.remove(key);} return (A)this;
  }
  public A removeFromAdditionalProperties(java.util.Map map) {
    if(this.additionalProperties == null) { return (A) this; }
    if(map != null) { for(Object key : map.keySet()) {if (this.additionalProperties != null){this.additionalProperties.remove(key);}}} return (A)this;
  }
  public java.util.Map getAdditionalProperties() {
    return this.additionalProperties;
  }
  public A withAdditionalProperties(java.util.Map additionalProperties) {
    if (additionalProperties == null) { this.additionalProperties =  null;} else {this.additionalProperties = new java.util.LinkedHashMap(additionalProperties);} return (A) this;
  }
  public java.lang.Boolean hasAdditionalProperties() {
    return this.additionalProperties != null;
  }
  public boolean equals(java.lang.Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    MetricSpecFluentImpl that = (MetricSpecFluentImpl) o;
    if (containerResource != null ? !containerResource.equals(that.containerResource) :that.containerResource != null) return false;
    if (external != null ? !external.equals(that.external) :that.external != null) return false;
    if (object != null ? !object.equals(that.object) :that.object != null) return false;
    if (pods != null ? !pods.equals(that.pods) :that.pods != null) return false;
    if (resource != null ? !resource.equals(that.resource) :that.resource != null) return false;
    if (type != null ? !type.equals(that.type) :that.type != null) return false;
    if (additionalProperties != null ? !additionalProperties.equals(that.additionalProperties) :that.additionalProperties != null) return false;
    return true;
  }
  public int hashCode() {
    return java.util.Objects.hash(containerResource,  external,  object,  pods,  resource,  type,  additionalProperties,  super.hashCode());
  }
  public class ContainerResourceNestedImpl extends io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceFluentImpl> implements io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ContainerResourceNested,io.fabric8.kubernetes.api.builder.Nested{
    ContainerResourceNestedImpl(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSource item) {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceBuilder(this, item);
    }
    ContainerResourceNestedImpl() {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceBuilder(this);
    }
    io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ContainerResourceMetricSourceBuilder builder;
    public N and() {
      return (N) MetricSpecFluentImpl.this.withContainerResource(builder.build());
    }
    public N endContainerResource() {
      return and();
    }
    
  }
  public class ExternalNestedImpl extends io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceFluentImpl> implements io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ExternalNested,io.fabric8.kubernetes.api.builder.Nested{
    ExternalNestedImpl(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSource item) {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceBuilder(this, item);
    }
    ExternalNestedImpl() {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceBuilder(this);
    }
    io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ExternalMetricSourceBuilder builder;
    public N and() {
      return (N) MetricSpecFluentImpl.this.withExternal(builder.build());
    }
    public N endExternal() {
      return and();
    }
    
  }
  public class ObjectNestedImpl extends io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceFluentImpl> implements io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ObjectNested,io.fabric8.kubernetes.api.builder.Nested{
    ObjectNestedImpl(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSource item) {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceBuilder(this, item);
    }
    ObjectNestedImpl() {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceBuilder(this);
    }
    io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ObjectMetricSourceBuilder builder;
    public N and() {
      return (N) MetricSpecFluentImpl.this.withObject(builder.build());
    }
    public N endObject() {
      return and();
    }
    
  }
  public class PodsNestedImpl extends io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceFluentImpl> implements io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.PodsNested,io.fabric8.kubernetes.api.builder.Nested{
    PodsNestedImpl(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSource item) {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceBuilder(this, item);
    }
    PodsNestedImpl() {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceBuilder(this);
    }
    io.fabric8.kubernetes.api.model.autoscaling.v2beta2.PodsMetricSourceBuilder builder;
    public N and() {
      return (N) MetricSpecFluentImpl.this.withPods(builder.build());
    }
    public N endPods() {
      return and();
    }
    
  }
  public class ResourceNestedImpl extends io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceFluentImpl> implements io.fabric8.kubernetes.api.model.autoscaling.v2beta2.MetricSpecFluent.ResourceNested,io.fabric8.kubernetes.api.builder.Nested{
    ResourceNestedImpl(io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSource item) {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceBuilder(this, item);
    }
    ResourceNestedImpl() {
      this.builder = new io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceBuilder(this);
    }
    io.fabric8.kubernetes.api.model.autoscaling.v2beta2.ResourceMetricSourceBuilder builder;
    public N and() {
      return (N) MetricSpecFluentImpl.this.withResource(builder.build());
    }
    public N endResource() {
      return and();
    }
    
  }
  
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy