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

io.honnix.rkt.launcher.model.schema.ImageManifestBuilder Maven / Gradle / Ivy

package io.honnix.rkt.launcher.model.schema;

import io.honnix.rkt.launcher.model.schema.type.ACKind;
import io.honnix.rkt.launcher.model.schema.type.Annotation;
import io.honnix.rkt.launcher.model.schema.type.App;
import io.honnix.rkt.launcher.model.schema.type.Dependency;
import io.honnix.rkt.launcher.model.schema.type.Label;
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 ImageManifestBuilder {
  private String acVersion;

  private ACKind acKind;

  private String name;

  private Optional> labels;

  private Optional app;

  private Optional> annotations;

  private Optional> dependencies;

  private Optional> pathWhitelist;

  public ImageManifestBuilder() {
    this.labels = Optional.empty();
    this.app = Optional.empty();
    this.annotations = Optional.empty();
    this.dependencies = Optional.empty();
    this.pathWhitelist = Optional.empty();
  }

  private ImageManifestBuilder(ImageManifest v) {
    this.acVersion = v.acVersion();
    this.acKind = v.acKind();
    this.name = v.name();
    this.labels = v.labels();
    this.app = v.app();
    this.annotations = v.annotations();
    this.dependencies = v.dependencies();
    this.pathWhitelist = v.pathWhitelist();
  }

  private ImageManifestBuilder(ImageManifestBuilder v) {
    this.acVersion = v.acVersion;
    this.acKind = v.acKind;
    this.name = v.name;
    this.labels = v.labels;
    this.app = v.app;
    this.annotations = v.annotations;
    this.dependencies = v.dependencies;
    this.pathWhitelist = v.pathWhitelist;
  }

  public String acVersion() {
    return acVersion;
  }

  public ImageManifestBuilder acVersion(String acVersion) {
    if (acVersion == null) {
      throw new NullPointerException("acVersion");
    }
    this.acVersion = acVersion;
    return this;
  }

  public ACKind acKind() {
    return acKind;
  }

  public ImageManifestBuilder acKind(ACKind acKind) {
    if (acKind == null) {
      throw new NullPointerException("acKind");
    }
    this.acKind = acKind;
    return this;
  }

  public String name() {
    return name;
  }

  public ImageManifestBuilder name(String name) {
    if (name == null) {
      throw new NullPointerException("name");
    }
    this.name = name;
    return this;
  }

  public Optional> labels() {
    return labels;
  }

  public ImageManifestBuilder labels(List




© 2015 - 2025 Weber Informatics LLC | Privacy Policy