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#WorkflowStep</I><br> 007 * This interface is implemented by {@link WorkflowStepImpl}<br> 008 * 009 * <BLOCKQUOTE> 010 * 011 * This represents a non-input step a Galaxy Workflow. 012 * 013 * <p># A note about `state` and `tool_state` fields. 014 * 015 * <p>Only one or the other should be specified. These are two ways to represent the "state" of a 016 * tool at this workflow step. Both are essentially maps from parameter names to parameter values. 017 * 018 * <p>`tool_state` is much more low-level and expects a flat dictionary with each value a JSON dump. 019 * Nested tool structures such as conditionals and repeats should have all their values in the JSON 020 * dumped string. In general `tool_state` may be present in workflows exported from Galaxy but 021 * shouldn't be written by humans. 022 * 023 * <p>`state` can contained a typed map. Repeat values can be represented as YAML arrays. An 024 * alternative to representing `state` this way is defining inputs with default values. 025 * 026 * </BLOCKQUOTE> 027 */ 028public interface WorkflowStep 029 extends Identified, 030 Labeled, 031 Documented, 032 HasStepPosition, 033 ReferencesTool, 034 HasStepErrors, 035 HasUUID, 036 Savable { 037 /** 038 * Getter for property <I>https://w3id.org/cwl/cwl#Identified/id</I><br> 039 * 040 * <BLOCKQUOTE> 041 * 042 * The unique identifier for this object. * 043 * 044 * </BLOCKQUOTE> 045 */ 046 java.util.Optional<String> getId(); 047 /** 048 * Getter for property <I>https://w3id.org/cwl/cwl#Labeled/label</I><br> 049 * 050 * <BLOCKQUOTE> 051 * 052 * A short, human-readable label of this object. * 053 * 054 * </BLOCKQUOTE> 055 */ 056 java.util.Optional<String> getLabel(); 057 /** 058 * Getter for property <I>https://w3id.org/cwl/salad#Documented/doc</I><br> 059 * 060 * <BLOCKQUOTE> 061 * 062 * A documentation string for this object, or an array of strings which should be concatenated. * 063 * 064 * </BLOCKQUOTE> 065 */ 066 Object getDoc(); 067 /** 068 * Getter for property 069 * <I>https://galaxyproject.org/gxformat2/gxformat2common#HasStepPosition/position</I><br> 070 */ 071 java.util.Optional<StepPosition> getPosition(); 072 /** 073 * Getter for property 074 * <I>https://galaxyproject.org/gxformat2/gxformat2common#ReferencesTool/tool_id</I><br> 075 * 076 * <BLOCKQUOTE> 077 * 078 * The tool ID used to run this step of the workflow (e.g. 'cat1' or 079 * 'toolshed.g2.bx.psu.edu/repos/nml/collapse_collections/collapse_dataset/4.0'). * 080 * 081 * </BLOCKQUOTE> 082 */ 083 java.util.Optional<String> getTool_id(); 084 /** 085 * Getter for property 086 * <I>https://galaxyproject.org/gxformat2/gxformat2common#ReferencesTool/tool_shed_repository</I> 087 * <br> 088 * 089 * <BLOCKQUOTE> 090 * 091 * The Galaxy Tool Shed repository that should be installed in order to use this tool. * 092 * 093 * </BLOCKQUOTE> 094 */ 095 java.util.Optional<ToolShedRepository> getTool_shed_repository(); 096 /** 097 * Getter for property 098 * <I>https://galaxyproject.org/gxformat2/gxformat2common#ReferencesTool/tool_version</I><br> 099 * 100 * <BLOCKQUOTE> 101 * 102 * The tool version corresponding used to run this step of the workflow. For tool shed installed 103 * tools, the ID generally uniquely specifies a version and this field is optional. * 104 * 105 * </BLOCKQUOTE> 106 */ 107 java.util.Optional<String> getTool_version(); 108 /** 109 * Getter for property 110 * <I>https://galaxyproject.org/gxformat2/gxformat2common#HasStepErrors/errors</I><br> 111 * 112 * <BLOCKQUOTE> 113 * 114 * During Galaxy export there may be some problem validating the tool state, tool used, etc.. that 115 * will be indicated by this field. The Galaxy user should be warned of these problems before the 116 * workflow can be used in Galaxy. 117 * 118 * <p>This field should not be used in human written Galaxy workflow files. 119 * 120 * <p>A typical problem is the referenced tool is not installed, this can be fixed by installed 121 * the tool and re-saving the workflow and then re-exporting it. * 122 * 123 * </BLOCKQUOTE> 124 */ 125 java.util.Optional<String> getErrors(); 126 /** 127 * Getter for property <I>https://galaxyproject.org/gxformat2/gxformat2common#HasUUID/uuid</I><br> 128 * 129 * <BLOCKQUOTE> 130 * 131 * UUID uniquely representing this element. * 132 * 133 * </BLOCKQUOTE> 134 */ 135 java.util.Optional<String> getUuid(); 136 /** 137 * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#in</I><br> 138 * 139 * <BLOCKQUOTE> 140 * 141 * Defines the input parameters of the workflow step. The process is ready to run when all 142 * required input parameters are associated with concrete values. Input parameters include a 143 * schema for each parameter which is used to validate the input object. It may also be used build 144 * a user interface for constructing the input object. * 145 * 146 * </BLOCKQUOTE> 147 */ 148 java.util.Optional<java.util.List<Object>> getIn(); 149 /** 150 * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#out</I><br> 151 * 152 * <BLOCKQUOTE> 153 * 154 * Defines the parameters representing the output of the process. May be used to generate and/or 155 * validate the output object. 156 * 157 * <p>This can also be called 'outputs' for legacy reasons - but the resulting workflow document 158 * is not a valid instance of this schema. * 159 * 160 * </BLOCKQUOTE> 161 */ 162 java.util.Optional<java.util.List<Object>> getOut(); 163 /** 164 * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#state</I><br> 165 * 166 * <BLOCKQUOTE> 167 * 168 * Structured tool state. * 169 * 170 * </BLOCKQUOTE> 171 */ 172 java.util.Optional<Object> getState(); 173 /** 174 * Getter for property <I>https://galaxyproject.org/gxformat2/v19_09#tool_state</I><br> 175 * 176 * <BLOCKQUOTE> 177 * 178 * Unstructured tool state. * 179 * 180 * </BLOCKQUOTE> 181 */ 182 java.util.Optional<Object> getTool_state(); 183 /** 184 * Getter for property <I>https://w3id.org/cwl/salad#type</I><br> 185 * 186 * <BLOCKQUOTE> 187 * 188 * Workflow step module's type (defaults to 'tool'). * 189 * 190 * </BLOCKQUOTE> 191 */ 192 java.util.Optional<WorkflowStepType> getType(); 193 /** 194 * Getter for property <I>https://w3id.org/cwl/cwl#run</I><br> 195 * 196 * <BLOCKQUOTE> 197 * 198 * Specifies a subworkflow to run. * 199 * 200 * </BLOCKQUOTE> 201 */ 202 java.util.Optional<GalaxyWorkflow> getRun(); 203 /** 204 * Getter for property 205 * <I>https://galaxyproject.org/gxformat2/v19_09#WorkflowStep/runtime_inputs</I><br> 206 */ 207 java.util.Optional<java.util.List<Object>> getRuntime_inputs(); 208}