Class TraverseAllAction

  • All Implemented Interfaces:
    MergepointAction

    public class TraverseAllAction
    extends Object
    implements MergepointAction
    Traverses all matching elements, and applies a outlet to each matching element. The output of each outlet is appended to the output.
    • Constructor Detail

      • TraverseAllAction

        public TraverseAllAction​(String elementsToTraverseName,
                                 String outletName,
                                 Boolean acceptEmpty)
        Constructor.
        Parameters:
        elementsToTraverseName - the elements to traverse, not null.
        outletName - the name of the outlet to be invoked for each element, not null.
        acceptEmpty - true if it is correct if no matching elements are found, false to throw an error if no matching elements are found, null means true.
    • Method Detail

      • execute

        public OutletResult execute​(ControllerState controllerState)
                             throws GeneratorException
        Traverses all matching elements, and applies an outlet to each matching element. The output of each outlet is appended to the output. ${...} Tokens are replaced within outletName and elementsToTraverseName.
        Specified by:
        execute in interface MergepointAction
        Parameters:
        controllerState - The current state of the controller.
        Returns:
        The value to insert into the mergepoint, not null.
        Throws:
        GeneratorException - if an error occurs during generation.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object