/** * Adds a collection of input mappings that map attributes in parent <i>flow scope</i> into the subflow input map. * For instance: "x" will result in the "x" attribute in parent flow scope being mapped into the subflow input map * as "x". * @param attributeNames the attributes in flow scope to map into the subflow */ public void addInputAttributes(String[] attributeNames) { if (attributeNames == null) { return; } for (int i = 0; i < attributeNames.length; i++) { addInputAttribute(attributeNames[i]); } }
/** * Adds a collection of output mappings that map subflow output attributes into the scope of the resuming parent * flow. For instance: "y" will result in the "y" attribute of the subflow output map being mapped into the * flowscope of the resuming parent flow as "y". * @param attributeNames the subflow output attributes to map into the parent flow */ public void addOutputAttributes(String[] attributeNames) { if (attributeNames == null) { return; } for (int i = 0; i < attributeNames.length; i++) { addOutputAttribute(attributeNames[i]); } }
/** * Adds an output mapping that maps a single subflow output attribute into the <i>flow scope</i> of the resuming * parent flow. For instance: "y" will result in the "y" attribute of the subflow output map being mapped into the * flowscope of the resuming parent flow as "y". * @param attributeName the subflow output attribute to map into the parent flow scope * @return this, to support call chaining */ public ConfigurableFlowAttributeMapper addOutputAttribute(String attributeName) { Expression attribute = expressionParser.parseExpression(attributeName); SettableExpression scope = new AttributeExpression(attribute, ScopeType.FLOW); addOutputMapping(new Mapping(attribute, scope, null)); return this; }
/** * Adds an input mapping that maps a single attribute in parent <i>flow scope</i> into the subflow input map. For * instance: "x" will result in the "x" attribute in parent flow scope being mapped into the subflow input map as * "x". * @param attributeName the attribute in flow scope to map into the subflow * @return this, to support call chaining */ public ConfigurableFlowAttributeMapper addInputAttribute(String attributeName) { SettableExpression attribute = expressionParser.parseSettableExpression(attributeName); Expression scope = new AttributeExpression(attribute, ScopeType.FLOW); addInputMapping(new Mapping(scope, attribute, null)); return this; }