
io.honnix.rkt.launcher.options.image.ListOptionsBuilder Maven / Gradle / Ivy
package io.honnix.rkt.launcher.options.image;
import io.norberg.automatter.AutoMatter;
import java.util.List;
import java.util.Optional;
import javax.annotation.Generated;
@Generated("io.norberg.automatter.processor.AutoMatterProcessor")
public final class ListOptionsBuilder {
private Optional order;
private Optional> sort;
public ListOptionsBuilder() {
this.order = Optional.empty();
this.sort = Optional.empty();
}
private ListOptionsBuilder(ListOptions v) {
this.order = v.order();
this.sort = v.sort();
}
private ListOptionsBuilder(ListOptionsBuilder v) {
this.order = v.order;
this.sort = v.sort;
}
public Optional order() {
return order;
}
public ListOptionsBuilder order(ListOptions.Order order) {
return order(Optional.ofNullable(order));
}
@SuppressWarnings("unchecked")
public ListOptionsBuilder order(Optional extends ListOptions.Order> order) {
if (order == null) {
throw new NullPointerException("order");
}
this.order = (Optional)order;
return this;
}
public Optional> sort() {
return sort;
}
public ListOptionsBuilder sort(List sort) {
return sort(Optional.ofNullable(sort));
}
@SuppressWarnings("unchecked")
public ListOptionsBuilder sort(Optional extends List> sort) {
if (sort == null) {
throw new NullPointerException("sort");
}
this.sort = (Optional>)sort;
return this;
}
public ListOptions build() {
return new Value(order, sort);
}
public static ListOptionsBuilder from(ListOptions v) {
return new ListOptionsBuilder(v);
}
public static ListOptionsBuilder from(ListOptionsBuilder v) {
return new ListOptionsBuilder(v);
}
private static final class Value implements ListOptions {
private final Optional order;
private final Optional> sort;
private Value(@AutoMatter.Field("order") Optional order, @AutoMatter.Field("sort") Optional> sort) {
if (order == null) {
throw new NullPointerException("order");
}
if (sort == null) {
throw new NullPointerException("sort");
}
this.order = order;
this.sort = sort;
}
@AutoMatter.Field
@Override
public Optional order() {
return order;
}
@AutoMatter.Field
@Override
public Optional> sort() {
return sort;
}
public ListOptionsBuilder builder() {
return new ListOptionsBuilder(this);
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof ListOptions)) {
return false;
}
final ListOptions that = (ListOptions) o;
if (order != null ? !order.equals(that.order()) : that.order() != null) {
return false;
}
if (sort != null ? !sort.equals(that.sort()) : that.sort() != null) {
return false;
}
return true;
}
@Override
public int hashCode() {
int result = 1;
long temp;
result = 31 * result + (order != null ? order.hashCode() : 0);
result = 31 * result + (sort != null ? sort.hashCode() : 0);
return result;
}
@Override
public String toString() {
return "ListOptions{" +
"order=" + order +
", sort=" + sort +
'}';
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy