ncsa.tools.trebuchet.core.util
Class CopyClientThreadPoolExecutor

java.lang.Object
  extended byedu.emory.mathcs.backport.java.util.concurrent.AbstractExecutorService
      extended byedu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor
          extended byncsa.tools.trebuchet.core.util.CopyClientThreadPoolExecutor
All Implemented Interfaces:
edu.emory.mathcs.backport.java.util.concurrent.Executor, edu.emory.mathcs.backport.java.util.concurrent.ExecutorService

public class CopyClientThreadPoolExecutor
extends edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor

Singleton thread manager for all Trebuchet copy operations. Uses a blocking queue with 0 as time-to-live for unused threads. Default capacity (30) can be altered by setting the static field before the first call to get the executor.

Author:
arossi

Nested Class Summary
 
Nested classes inherited from class edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.AbortPolicy, edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy, edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.DiscardOldestPolicy, edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.DiscardPolicy
 
Method Summary
 void register(CopyClient client, CopyClientPool pool)
           
static void setThreadPoolCapacity(int threadPoolCapacity)
           
 edu.emory.mathcs.backport.java.util.concurrent.Future submit(java.lang.Runnable r)
           
static CopyClientThreadPoolExecutor subscribe()
           
static void unsubscribe()
           
 
Methods inherited from class edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor
allowCoreThreadTimeOut, allowsCoreThreadTimeOut, awaitTermination, execute, getActiveCount, getCompletedTaskCount, getCorePoolSize, getKeepAliveTime, getLargestPoolSize, getMaximumPoolSize, getPoolSize, getQueue, getRejectedExecutionHandler, getTaskCount, getThreadFactory, isShutdown, isTerminated, isTerminating, prestartAllCoreThreads, prestartCoreThread, purge, remove, setCorePoolSize, setKeepAliveTime, setMaximumPoolSize, setRejectedExecutionHandler, setThreadFactory, shutdown, shutdownNow
 
Methods inherited from class edu.emory.mathcs.backport.java.util.concurrent.AbstractExecutorService
invokeAll, invokeAll, invokeAny, invokeAny, submit, submit
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

subscribe

public static CopyClientThreadPoolExecutor subscribe()

unsubscribe

public static void unsubscribe()

setThreadPoolCapacity

public static void setThreadPoolCapacity(int threadPoolCapacity)

register

public void register(CopyClient client,
                     CopyClientPool pool)

submit

public edu.emory.mathcs.backport.java.util.concurrent.Future submit(java.lang.Runnable r)