io.fabric8.autoscaling.api.model.v1.VerticalPodAutoscalerSpecFluent Maven / Gradle / Ivy
package io.fabric8.autoscaling.api.model.v1;
import io.fabric8.kubernetes.api.builder.VisitableBuilder;
import java.lang.SuppressWarnings;
import io.fabric8.kubernetes.api.builder.Nested;
import java.util.ArrayList;
import java.lang.String;
import java.util.LinkedHashMap;
import java.util.function.Predicate;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.util.Iterator;
import java.util.List;
import java.util.Collection;
import java.lang.Object;
import io.fabric8.kubernetes.api.model.autoscaling.v1.CrossVersionObjectReference;
import java.util.Map;
/**
* Generated
*/
@SuppressWarnings("unchecked")
public class VerticalPodAutoscalerSpecFluent> extends BaseFluent{
public VerticalPodAutoscalerSpecFluent() {
}
public VerticalPodAutoscalerSpecFluent(VerticalPodAutoscalerSpec instance) {
this.copyInstance(instance);
}
private ArrayList recommenders = new ArrayList();
private PodResourcePolicyBuilder resourcePolicy;
private CrossVersionObjectReference targetRef;
private PodUpdatePolicyBuilder updatePolicy;
private Map additionalProperties;
protected void copyInstance(VerticalPodAutoscalerSpec instance) {
instance = (instance != null ? instance : new VerticalPodAutoscalerSpec());
if (instance != null) {
this.withRecommenders(instance.getRecommenders());
this.withResourcePolicy(instance.getResourcePolicy());
this.withTargetRef(instance.getTargetRef());
this.withUpdatePolicy(instance.getUpdatePolicy());
this.withAdditionalProperties(instance.getAdditionalProperties());
}
}
public A addToRecommenders(int index,VerticalPodAutoscalerRecommenderSelector item) {
if (this.recommenders == null) {this.recommenders = new ArrayList();}
VerticalPodAutoscalerRecommenderSelectorBuilder builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(item);
if (index < 0 || index >= recommenders.size()) { _visitables.get("recommenders").add(builder); recommenders.add(builder); } else { _visitables.get("recommenders").add(index, builder); recommenders.add(index, builder);}
return (A)this;
}
public A setToRecommenders(int index,VerticalPodAutoscalerRecommenderSelector item) {
if (this.recommenders == null) {this.recommenders = new ArrayList();}
VerticalPodAutoscalerRecommenderSelectorBuilder builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(item);
if (index < 0 || index >= recommenders.size()) { _visitables.get("recommenders").add(builder); recommenders.add(builder); } else { _visitables.get("recommenders").set(index, builder); recommenders.set(index, builder);}
return (A)this;
}
public A addToRecommenders(io.fabric8.autoscaling.api.model.v1.VerticalPodAutoscalerRecommenderSelector... items) {
if (this.recommenders == null) {this.recommenders = new ArrayList();}
for (VerticalPodAutoscalerRecommenderSelector item : items) {VerticalPodAutoscalerRecommenderSelectorBuilder builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(item);_visitables.get("recommenders").add(builder);this.recommenders.add(builder);} return (A)this;
}
public A addAllToRecommenders(Collection items) {
if (this.recommenders == null) {this.recommenders = new ArrayList();}
for (VerticalPodAutoscalerRecommenderSelector item : items) {VerticalPodAutoscalerRecommenderSelectorBuilder builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(item);_visitables.get("recommenders").add(builder);this.recommenders.add(builder);} return (A)this;
}
public A removeFromRecommenders(io.fabric8.autoscaling.api.model.v1.VerticalPodAutoscalerRecommenderSelector... items) {
if (this.recommenders == null) return (A)this;
for (VerticalPodAutoscalerRecommenderSelector item : items) {VerticalPodAutoscalerRecommenderSelectorBuilder builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(item);_visitables.get("recommenders").remove(builder); this.recommenders.remove(builder);} return (A)this;
}
public A removeAllFromRecommenders(Collection items) {
if (this.recommenders == null) return (A)this;
for (VerticalPodAutoscalerRecommenderSelector item : items) {VerticalPodAutoscalerRecommenderSelectorBuilder builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(item);_visitables.get("recommenders").remove(builder); this.recommenders.remove(builder);} return (A)this;
}
public A removeMatchingFromRecommenders(Predicate predicate) {
if (recommenders == null) return (A) this;
final Iterator each = recommenders.iterator();
final List visitables = _visitables.get("recommenders");
while (each.hasNext()) {
VerticalPodAutoscalerRecommenderSelectorBuilder builder = each.next();
if (predicate.test(builder)) {
visitables.remove(builder);
each.remove();
}
}
return (A)this;
}
public List buildRecommenders() {
return this.recommenders != null ? build(recommenders) : null;
}
public VerticalPodAutoscalerRecommenderSelector buildRecommender(int index) {
return this.recommenders.get(index).build();
}
public VerticalPodAutoscalerRecommenderSelector buildFirstRecommender() {
return this.recommenders.get(0).build();
}
public VerticalPodAutoscalerRecommenderSelector buildLastRecommender() {
return this.recommenders.get(recommenders.size() - 1).build();
}
public VerticalPodAutoscalerRecommenderSelector buildMatchingRecommender(Predicate predicate) {
for (VerticalPodAutoscalerRecommenderSelectorBuilder item : recommenders) {
if (predicate.test(item)) {
return item.build();
}
}
return null;
}
public boolean hasMatchingRecommender(Predicate predicate) {
for (VerticalPodAutoscalerRecommenderSelectorBuilder item : recommenders) {
if (predicate.test(item)) {
return true;
}
}
return false;
}
public A withRecommenders(List recommenders) {
if (this.recommenders != null) {
this._visitables.get("recommenders").clear();
}
if (recommenders != null) {
this.recommenders = new ArrayList();
for (VerticalPodAutoscalerRecommenderSelector item : recommenders) {
this.addToRecommenders(item);
}
} else {
this.recommenders = null;
}
return (A) this;
}
public A withRecommenders(io.fabric8.autoscaling.api.model.v1.VerticalPodAutoscalerRecommenderSelector... recommenders) {
if (this.recommenders != null) {
this.recommenders.clear();
_visitables.remove("recommenders");
}
if (recommenders != null) {
for (VerticalPodAutoscalerRecommenderSelector item : recommenders) {
this.addToRecommenders(item);
}
}
return (A) this;
}
public boolean hasRecommenders() {
return this.recommenders != null && !this.recommenders.isEmpty();
}
public A addNewRecommender(String name) {
return (A)addToRecommenders(new VerticalPodAutoscalerRecommenderSelector(name));
}
public RecommendersNested addNewRecommender() {
return new RecommendersNested(-1, null);
}
public RecommendersNested addNewRecommenderLike(VerticalPodAutoscalerRecommenderSelector item) {
return new RecommendersNested(-1, item);
}
public RecommendersNested setNewRecommenderLike(int index,VerticalPodAutoscalerRecommenderSelector item) {
return new RecommendersNested(index, item);
}
public RecommendersNested editRecommender(int index) {
if (recommenders.size() <= index) throw new RuntimeException("Can't edit recommenders. Index exceeds size.");
return setNewRecommenderLike(index, buildRecommender(index));
}
public RecommendersNested editFirstRecommender() {
if (recommenders.size() == 0) throw new RuntimeException("Can't edit first recommenders. The list is empty.");
return setNewRecommenderLike(0, buildRecommender(0));
}
public RecommendersNested editLastRecommender() {
int index = recommenders.size() - 1;
if (index < 0) throw new RuntimeException("Can't edit last recommenders. The list is empty.");
return setNewRecommenderLike(index, buildRecommender(index));
}
public RecommendersNested editMatchingRecommender(Predicate predicate) {
int index = -1;
for (int i=0;i withNewResourcePolicy() {
return new ResourcePolicyNested(null);
}
public ResourcePolicyNested withNewResourcePolicyLike(PodResourcePolicy item) {
return new ResourcePolicyNested(item);
}
public ResourcePolicyNested editResourcePolicy() {
return withNewResourcePolicyLike(java.util.Optional.ofNullable(buildResourcePolicy()).orElse(null));
}
public ResourcePolicyNested editOrNewResourcePolicy() {
return withNewResourcePolicyLike(java.util.Optional.ofNullable(buildResourcePolicy()).orElse(new PodResourcePolicyBuilder().build()));
}
public ResourcePolicyNested editOrNewResourcePolicyLike(PodResourcePolicy item) {
return withNewResourcePolicyLike(java.util.Optional.ofNullable(buildResourcePolicy()).orElse(item));
}
public CrossVersionObjectReference getTargetRef() {
return this.targetRef;
}
public A withTargetRef(CrossVersionObjectReference targetRef) {
this.targetRef = targetRef;
return (A) this;
}
public boolean hasTargetRef() {
return this.targetRef != null;
}
public A withNewTargetRef(String apiVersion,String kind,String name) {
return (A)withTargetRef(new CrossVersionObjectReference(apiVersion, kind, name));
}
public PodUpdatePolicy buildUpdatePolicy() {
return this.updatePolicy != null ? this.updatePolicy.build() : null;
}
public A withUpdatePolicy(PodUpdatePolicy updatePolicy) {
this._visitables.remove("updatePolicy");
if (updatePolicy != null) {
this.updatePolicy = new PodUpdatePolicyBuilder(updatePolicy);
this._visitables.get("updatePolicy").add(this.updatePolicy);
} else {
this.updatePolicy = null;
this._visitables.get("updatePolicy").remove(this.updatePolicy);
}
return (A) this;
}
public boolean hasUpdatePolicy() {
return this.updatePolicy != null;
}
public UpdatePolicyNested withNewUpdatePolicy() {
return new UpdatePolicyNested(null);
}
public UpdatePolicyNested withNewUpdatePolicyLike(PodUpdatePolicy item) {
return new UpdatePolicyNested(item);
}
public UpdatePolicyNested editUpdatePolicy() {
return withNewUpdatePolicyLike(java.util.Optional.ofNullable(buildUpdatePolicy()).orElse(null));
}
public UpdatePolicyNested editOrNewUpdatePolicy() {
return withNewUpdatePolicyLike(java.util.Optional.ofNullable(buildUpdatePolicy()).orElse(new PodUpdatePolicyBuilder().build()));
}
public UpdatePolicyNested editOrNewUpdatePolicyLike(PodUpdatePolicy item) {
return withNewUpdatePolicyLike(java.util.Optional.ofNullable(buildUpdatePolicy()).orElse(item));
}
public A addToAdditionalProperties(String key,Object value) {
if(this.additionalProperties == null && key != null && value != null) { this.additionalProperties = new LinkedHashMap(); }
if(key != null && value != null) {this.additionalProperties.put(key, value);} return (A)this;
}
public A addToAdditionalProperties(Map map) {
if(this.additionalProperties == null && map != null) { this.additionalProperties = new LinkedHashMap(); }
if(map != null) { this.additionalProperties.putAll(map);} return (A)this;
}
public A removeFromAdditionalProperties(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(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 Map getAdditionalProperties() {
return this.additionalProperties;
}
public A withAdditionalProperties(Map additionalProperties) {
if (additionalProperties == null) {
this.additionalProperties = null;
} else {
this.additionalProperties = new LinkedHashMap(additionalProperties);
}
return (A) this;
}
public boolean hasAdditionalProperties() {
return this.additionalProperties != null;
}
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (!super.equals(o)) return false;
VerticalPodAutoscalerSpecFluent that = (VerticalPodAutoscalerSpecFluent) o;
if (!java.util.Objects.equals(recommenders, that.recommenders)) return false;
if (!java.util.Objects.equals(resourcePolicy, that.resourcePolicy)) return false;
if (!java.util.Objects.equals(targetRef, that.targetRef)) return false;
if (!java.util.Objects.equals(updatePolicy, that.updatePolicy)) return false;
if (!java.util.Objects.equals(additionalProperties, that.additionalProperties)) return false;
return true;
}
public int hashCode() {
return java.util.Objects.hash(recommenders, resourcePolicy, targetRef, updatePolicy, additionalProperties, super.hashCode());
}
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (recommenders != null && !recommenders.isEmpty()) { sb.append("recommenders:"); sb.append(recommenders + ","); }
if (resourcePolicy != null) { sb.append("resourcePolicy:"); sb.append(resourcePolicy + ","); }
if (targetRef != null) { sb.append("targetRef:"); sb.append(targetRef + ","); }
if (updatePolicy != null) { sb.append("updatePolicy:"); sb.append(updatePolicy + ","); }
if (additionalProperties != null && !additionalProperties.isEmpty()) { sb.append("additionalProperties:"); sb.append(additionalProperties); }
sb.append("}");
return sb.toString();
}
public class RecommendersNested extends VerticalPodAutoscalerRecommenderSelectorFluent> implements Nested{
RecommendersNested(int index,VerticalPodAutoscalerRecommenderSelector item) {
this.index = index;
this.builder = new VerticalPodAutoscalerRecommenderSelectorBuilder(this, item);
}
VerticalPodAutoscalerRecommenderSelectorBuilder builder;
int index;
public N and() {
return (N) VerticalPodAutoscalerSpecFluent.this.setToRecommenders(index,builder.build());
}
public N endRecommender() {
return and();
}
}
public class ResourcePolicyNested extends PodResourcePolicyFluent> implements Nested{
ResourcePolicyNested(PodResourcePolicy item) {
this.builder = new PodResourcePolicyBuilder(this, item);
}
PodResourcePolicyBuilder builder;
public N and() {
return (N) VerticalPodAutoscalerSpecFluent.this.withResourcePolicy(builder.build());
}
public N endResourcePolicy() {
return and();
}
}
public class UpdatePolicyNested extends PodUpdatePolicyFluent> implements Nested{
UpdatePolicyNested(PodUpdatePolicy item) {
this.builder = new PodUpdatePolicyBuilder(this, item);
}
PodUpdatePolicyBuilder builder;
public N and() {
return (N) VerticalPodAutoscalerSpecFluent.this.withUpdatePolicy(builder.build());
}
public N endUpdatePolicy() {
return and();
}
}
} © 2015 - 2025 Weber Informatics LLC | Privacy Policy