Class BShell

  extended byjava.lang.Thread
      extended byorg.syrup.functions.BShell
All Implemented Interfaces:
Function, java.lang.Runnable

public class BShell
extends java.lang.Thread
implements Function

Executes a shell command, provided by the first input, using a BlobServer. The second input provides the stdin. If the second input is not given the first (command) input is consumed. The first output maps to stdout and the second output to stderr. Only the second input and first output are put through a BlobServer. This makes the processing of big inputs and outputs possible without overloading the backing store implementation of Syrup.

Robbert van Dalen

Field Summary
Fields inherited from class java.lang.Thread
Constructor Summary
Method Summary
 Result execute(Context context)
          Generates a Result given a Task's Context.
 void run()
          Main processing method for the BShell object
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Constructor Detail


public BShell()
Method Detail


public Result execute(Context context)
Description copied from interface: Function
Generates a Result given a Task's Context. Implementations should not throw Exceptions, retain Objects or any other resources after the calling Thread exits this method.

Specified by:
execute in interface Function
context - The Context from which the Function get its parameters.
The Result after execution.


public void run()
Main processing method for the BShell object

Specified by:
run in interface java.lang.Runnable