frysk.gui.monitor.actions
Class RunExternal

java.lang.Object
  extended by frysk.gui.monitor.GuiObject
      extended by frysk.gui.monitor.LiaisonItem
          extended by frysk.gui.monitor.actions.Action
              extended by frysk.gui.monitor.actions.TaskAction
                  extended by frysk.gui.monitor.actions.RunExternal
All Implemented Interfaces:
SaveableXXX

public class RunExternal
extends TaskAction

Provides the ability to execute a binary or other program externally to Frysk, allowing the flexibility of user-defined actions following some event.


Nested Class Summary
(package private)  class RunExternal.AttachedObserver
          Attach to this executed program so that we know whats going on - we'll be able to gather information or manipulate it in other ways, should the need arise later.
(package private)  class RunExternal.RunExBlocker
           
(package private)  class RunExternal.TaskTerminatedObserver
          We want to know when the externally-executed program has quit, so that we can continue or optionally run another program.
 
Field Summary
private  RunExternal.RunExBlocker blocker
           
private static Logger errorLog
           
private  String execString
           
private  Task theTask
           
 
Fields inherited from class frysk.gui.monitor.actions.Action
runnable
 
Fields inherited from class frysk.gui.monitor.LiaisonItem
needInfo
 
Fields inherited from class frysk.gui.monitor.GuiObject
propertiesChanged
 
Constructor Summary
RunExternal()
           
RunExternal(RunExternal other)
           
 
Method Summary
 void execute(Task task, TaskObserverRoot observer, Event event)
           
 String getArgument()
          uset to get the item's argument
 ObservableLinkedList getArgumentCompletionList()
          If the item whishes to have a completion list for its arguments then it can return an observable linked list describing the list of possible arguments.
 GuiObject getCopy()
           
 boolean setArgument(String argument)
           
 
Methods inherited from class frysk.gui.monitor.actions.TaskAction
execute
 
Methods inherited from class frysk.gui.monitor.LiaisonItem
load, save
 
Methods inherited from class frysk.gui.monitor.GuiObject
dontSaveObject, doSaveObject, getName, getSummary, getToolTip, setName, setSummay, setToolTip, shouldSaveObject, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface frysk.gui.monitor.SaveableXXX
dontSaveObject, doSaveObject, shouldSaveObject
 

Field Detail

execString

private String execString

blocker

private RunExternal.RunExBlocker blocker

theTask

private Task theTask

errorLog

private static Logger errorLog
Constructor Detail

RunExternal

public RunExternal()

RunExternal

public RunExternal(RunExternal other)
Method Detail

execute

public void execute(Task task,
                    TaskObserverRoot observer,
                    Event event)
Specified by:
execute in class TaskAction

getCopy

public GuiObject getCopy()
Specified by:
getCopy in class LiaisonItem

setArgument

public boolean setArgument(String argument)
Specified by:
setArgument in class LiaisonItem

getArgument

public String getArgument()
Description copied from class: LiaisonItem
uset to get the item's argument

Specified by:
getArgument in class LiaisonItem
Returns:
the argument, null if the object takes no argument

getArgumentCompletionList

public ObservableLinkedList getArgumentCompletionList()
Description copied from class: LiaisonItem
If the item whishes to have a completion list for its arguments then it can return an observable linked list describing the list of possible arguments. Otherwise just return null.

Specified by:
getArgumentCompletionList in class LiaisonItem
Returns: