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

annotations.io.alauda.kubernetes.api.model.ContainerImageFluentImpl Maven / Gradle / Ivy

There is a newer version: 0.2.12
Show newest version
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;
    }




}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy