001package org.galaxyproject.gxformat2.v19_09;
002
003import org.galaxyproject.gxformat2.v19_09.utils.Savable;
004
005/**
006 * Auto-generated interface for <I>https://galaxyproject.org/gxformat2/v19_09#GalaxyWorkflow</I><br>
007 * This interface is implemented by {@link GalaxyWorkflowImpl}<br>
008 *
009 * <BLOCKQUOTE>
010 *
011 * A Galaxy workflow description. This record corresponds to the description of a workflow that
012 * should be executable on a Galaxy server that includes the contained tool definitions.
013 *
014 * <p>The workflows API or the user interface of Galaxy instances that are of version 19.09 or newer
015 * should be able to import a document defining this record.
016 *
017 * <p>## A note about `label` field.
018 *
019 * <p>This is the name of the workflow in the Galaxy user interface. This is the mechanism that
020 * users will primarily identify the workflow using. Legacy support - this may also be called 'name'
021 * and Galaxy will consume the workflow document fine and treat this attribute correctly - however
022 * in order to validate against this workflow definition schema the attribute should be called
023 * `label`.
024 *
025 * </BLOCKQUOTE>
026 */
027public interface GalaxyWorkflow extends Process, HasUUID, Savable {
028  /**
029   * Getter for property <I>https://w3id.org/cwl/cwl#Identified/id</I><br>
030   *
031   * <BLOCKQUOTE>
032   *
033   * The unique identifier for this object. *
034   *
035   * </BLOCKQUOTE>
036   */
037  java.util.Optional<String> getId();
038  /**
039   * Getter for property <I>https://w3id.org/cwl/cwl#Labeled/label</I><br>
040   *
041   * <BLOCKQUOTE>
042   *
043   * A short, human-readable label of this object. *
044   *
045   * </BLOCKQUOTE>
046   */
047  java.util.Optional<String> getLabel();
048  /**
049   * Getter for property <I>https://w3id.org/cwl/salad#Documented/doc</I><br>
050   *
051   * <BLOCKQUOTE>
052   *
053   * A documentation string for this object, or an array of strings which should be concatenated. *
054   *
055   * </BLOCKQUOTE>
056   */
057  Object getDoc();
058  /**
059   * Getter for property <I>https://w3id.org/cwl/cwl#inputs</I><br>
060   *
061   * <BLOCKQUOTE>
062   *
063   * Defines the input parameters of the process. The process is ready to run when all required
064   * input parameters are associated with concrete values. Input parameters include a schema for
065   * each parameter which is used to validate the input object. It may also be used to build a user
066   * interface for constructing the input object.
067   *
068   * <p>When accepting an input object, all input parameters must have a value. If an input
069   * parameter is missing from the input object, it must be assigned a value of `null` (or the value
070   * of `default` for that parameter, if provided) for the purposes of validation and evaluation of
071   * expressions. *
072   *
073   * </BLOCKQUOTE>
074   */
075  java.util.List<Object> getInputs();
076  /**
077   * Getter for property <I>https://w3id.org/cwl/cwl#outputs</I><br>
078   *
079   * <BLOCKQUOTE>
080   *
081   * Defines the parameters representing the output of the process. May be used to generate and/or
082   * validate the output object. *
083   *
084   * </BLOCKQUOTE>
085   */
086  java.util.List<Object> getOutputs();
087  /**
088   * Getter for property <I>https://galaxyproject.org/gxformat2/gxformat2common#HasUUID/uuid</I><br>
089   *
090   * <BLOCKQUOTE>
091   *
092   * UUID uniquely representing this element. *
093   *
094   * </BLOCKQUOTE>
095   */
096  java.util.Optional<String> getUuid();
097  /**
098   * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#GalaxyWorkflow/class</I><br>
099   */
100  String getClass_();
101  /**
102   * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#GalaxyWorkflow/steps</I><br>
103   *
104   * <BLOCKQUOTE>
105   *
106   * The individual steps that make up the workflow. Each step is executed when all of its input
107   * data links are fulfilled. *
108   *
109   * </BLOCKQUOTE>
110   */
111  java.util.List<Object> getSteps();
112  /**
113   * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#GalaxyWorkflow/report</I><br>
114   *
115   * <BLOCKQUOTE>
116   *
117   * Workflow invocation report template. *
118   *
119   * </BLOCKQUOTE>
120   */
121  java.util.Optional<Report> getReport();
122}