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

org.opentcs.guing.base.model.EnvelopeModel Maven / Gradle / Ivy

/**
 * Copyright (c) The openTCS Authors.
 *
 * This program is free software and subject to the MIT license. (For details,
 * see the licensing information (LICENSE.txt) you should have received with
 * this copy of the software.)
 */
package org.opentcs.guing.base.model;

import static java.util.Objects.requireNonNull;

import jakarta.annotation.Nonnull;
import java.util.List;
import org.opentcs.data.model.Couple;
import org.opentcs.data.model.Envelope;

/**
 * A representation of an {@link Envelope} with an additional (reference) key.
 */
public class EnvelopeModel {

  private final String key;
  private final List vertices;

  /**
   * Creates a new instance.
   *
   * @param key The key to be used for referencing the envelope.
   * @param vertices The sequence of vertices the envelope consists of.
   */
  public EnvelopeModel(
      @Nonnull
      String key,
      @Nonnull
      List vertices
  ) {
    this.key = requireNonNull(key, "key");
    this.vertices = requireNonNull(vertices, "vertices");
  }

  @Nonnull
  public String getKey() {
    return key;
  }

  @Nonnull
  public List getVertices() {
    return vertices;
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy