io.alauda.kubernetes.api.model.ContainerImageFluentImpl Maven / Gradle / Ivy
package io.alauda.kubernetes.api.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.ArrayList;
import java.lang.String;
import io.alauda.kubernetes.api.builder.Predicate;
import javax.validation.Valid;
import io.alauda.kubernetes.api.builder.BaseFluent;
import java.lang.Long;
import java.util.Collection;
import java.lang.Object;
import java.util.List;
import java.lang.Boolean;
public class ContainerImageFluentImpl> extends io.alauda.kubernetes.api.builder.BaseFluent implements ContainerImageFluent{
private List names = new ArrayList();
private Long sizeBytes;
public ContainerImageFluentImpl(){
}
public ContainerImageFluentImpl(ContainerImage instance){
this.withNames(instance.getNames());
this.withSizeBytes(instance.getSizeBytes());
}
public A addToNames(int index,String item){
this.names.add(index, item); return (A)this;
}
public A setToNames(int index,String item){
this.names.set(index, item); return (A)this;
}
public A addToNames(String... items){
for (String item : items) {this.names.add(item);} return (A)this;
}
public A addAllToNames(Collection items){
for (String item : items) {this.names.add(item);} return (A)this;
}
public A removeFromNames(String... items){
for (String item : items) {this.names.remove(item);} return (A)this;
}
public A removeAllFromNames(Collection items){
for (String item : items) {this.names.remove(item);} return (A)this;
}
public List getNames(){
return this.names;
}
public String getName(int index){
return this.names.get(index);
}
public String getFirstName(){
return this.names.get(0);
}
public String getLastName(){
return this.names.get(names.size() - 1);
}
public String getMatchingName(io.alauda.kubernetes.api.builder.Predicate predicate){
for (String item: names) { if(predicate.apply(item)){return item;} } return null;
}
public A withNames(List names){
this.names.clear();
if (names != null) {for (String item : names){this.addToNames(item);}} return (A) this;
}
public A withNames(String... names){
this.names.clear(); if (names != null) {for (String item :names){ this.addToNames(item);}} return (A) this;
}
public Boolean hasNames(){
return names!= null && !names.isEmpty();
}
public Long getSizeBytes(){
return this.sizeBytes;
}
public A withSizeBytes(Long sizeBytes){
this.sizeBytes=sizeBytes; return (A) this;
}
public Boolean hasSizeBytes(){
return this.sizeBytes!=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;
ContainerImageFluentImpl that = (ContainerImageFluentImpl) o;
if (names != null ? !names.equals(that.names) :that.names != null) return false;
if (sizeBytes != null ? !sizeBytes.equals(that.sizeBytes) :that.sizeBytes != null) return false;
return true;
}
}