Class ActionProducer

    • Constructor Detail

      • ActionProducer

        public ActionProducer​(Action a)
        Creates a producer for an action.
        Parameters:
        a - Action implementation.
      • ActionProducer

        public ActionProducer​(Action a,
                              boolean nw)
        Creates a producer for an action.
        Parameters:
        a - Action implementation.
        nw - Defines if produceAction method should wait for the end of action.
      • ActionProducer

        protected ActionProducer()
        Creates a producer. produceAction must be overridden.
      • ActionProducer

        protected ActionProducer​(boolean nw)
        Creates a producer. produceAction must be overridden.
        Parameters:
        nw - Defines if produceAction method should wait for the end of action.
    • Method Detail

      • setOutput

        public void setOutput​(TestOut out)
        Identity of the streams or writers used for print output.
        Parameters:
        out - An object containing print output assignments for output and error streams.
        See Also:
        TestOut, Outputable
      • getException

        public Throwable getException()
        Returns the exception value.
        Returns:
        a Throwable object representing the exception value
      • setActionPriority

        public void setActionPriority​(int newPriority)
        Defines action priority in terms of thread priority. Increase (decrease) parameter value to Thread.MIN_PRIORITY(MAX_PRIORITY) in case if it is less(more) then it.
        Parameters:
        newPriority - New thread priority.
      • getResult

        public Object getResult()
        Get the result of a launched action.
        Returns:
        a launched action's result. without waiting in case if getFinished()
        See Also:
        getFinished()
      • getFinished

        public boolean getFinished()
        Check if a launched action has finished.
        Returns:
        true if the launched action has completed, either normally or with an exception; false otherwise.
      • launch

        public Object launch​(Object obj)
        Does nothing; the method should be overridden by inheritors.
        Specified by:
        launch in interface Action
        Parameters:
        obj - An object used to modify execution. This might be a java.lang.String[] that lists a test's command line arguments.
        Returns:
        An object - result of the action.
        See Also:
        Action
      • produceAction

        public Object produceAction​(Object obj)
                             throws InterruptedException
        Starts execution. Uses ActionProducer.MaxActionTime timeout.
        Parameters:
        obj - Parameter to be passed into action's launch(Object) method. This parameter might be a java.lang.String[] that lists a test's command line arguments.
        Returns:
        launch(Object) result.
        Throws:
        TimeoutExpiredException
        InterruptedException
      • run

        public final void run()
        Launch an action in a separate thread of execution. When the action finishes, record that fact. If the action finishes normally, store it's result. Use getFinished() and getResult to answer questions about test completion and return value, respectively.
        Specified by:
        run in interface Runnable
        Overrides:
        run in class Thread
        See Also:
        getFinished(), getResult(), Runnable
      • actionProduced

        public final Object actionProduced​(Object obj)
        Inquire for a reference to the object returned by a launched action.
        Specified by:
        actionProduced in interface Waitable
        Parameters:
        obj - Not used.
        Returns:
        the result returned when a launched action finishes normally.
        See Also:
        Waitable