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