org.fcrepo.server.utilities
Class MethodInvokerThread

java.lang.Object
  extended by java.lang.Thread
      extended by org.fcrepo.server.utilities.MethodInvokerThread
All Implemented Interfaces:
Runnable

public class MethodInvokerThread
extends Thread

A Thread that invokes a single method, then exits.

This is convenient in situations where some method should run in a separate thread, but it is either inconvenient or inappropriate to write a Runnable to do the work.

Author:
Chris Wilper

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
MethodInvokerThread(Object targetObject, Method method, Object[] args)
          Constructs a MethodInvokerThread.
MethodInvokerThread(Object targetObject, Method method, Object[] args, String name)
          Constructs a MethodInvokerThread with a name.
MethodInvokerThread(Object targetObject, Method method, Object[] args, ThreadGroup threadGroup, String name)
          Constructs a MethodInvokerThread with a ThreadGroup and a name.
 
Method Summary
 Object getReturned()
          Gets the Object returned by the invoked Method.
 Throwable getThrown()
          Gets the Throwable that resulted if an error occurred while trying to invoke the Method.
 void run()
          Invokes the Method, then exits.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MethodInvokerThread

public MethodInvokerThread(Object targetObject,
                           Method method,
                           Object[] args)
Constructs a MethodInvokerThread.

Parameters:
targetObject - The object in which the method resides.
method - The Method to invoke.
args - The arguments to the method.

MethodInvokerThread

public MethodInvokerThread(Object targetObject,
                           Method method,
                           Object[] args,
                           String name)
Constructs a MethodInvokerThread with a name.

Parameters:
targetObject - The object in which the method resides.
method - The Method to invoke.
args - The arguments to the method.
name - The thread's name.

MethodInvokerThread

public MethodInvokerThread(Object targetObject,
                           Method method,
                           Object[] args,
                           ThreadGroup threadGroup,
                           String name)
Constructs a MethodInvokerThread with a ThreadGroup and a name.

Parameters:
targetObject - The object in which the method resides.
method - The Method to invoke.
args - The arguments to the method.
threadGroup - The ThreadGroup to which the thread should belong.
name - The thread's name.
Method Detail

run

public void run()
Invokes the Method, then exits.

Specified by:
run in interface Runnable
Overrides:
run in class Thread

getReturned

public Object getReturned()
Gets the Object returned by the invoked Method.

Returns:
The Object, or null if the method has no return type or the method hasn't been invoked yet.

getThrown

public Throwable getThrown()
Gets the Throwable that resulted if an error occurred while trying to invoke the Method.

Returns:
The Throwable, or null if the method's invocation did not produce a Throwable or the method hasn't been invoked yet.


Copyright © 2012 DuraSpace. All Rights Reserved.