Class PersistentPriorityProcessorPool

    • Constructor Detail

      • PersistentPriorityProcessorPool

        public PersistentPriorityProcessorPool()
        Creates a new PersistentPriorityProcessorPool with as many worker threads as processors available on the corresponding environment. id and transactionControler need to be initialized later using the setter.
      • PersistentPriorityProcessorPool

        public PersistentPriorityProcessorPool​(java.lang.String id,
                                               TransactionController transactionController)
        Creates a new PersistentPriorityProcessorPool with as many worker threads as processors available on the corresponding environment.
        Parameters:
        id - unique id of the newly created processor pool. (Must not be longer than 32 chars to be stored in database)
        transactionController - transaction controller which shall handle the transactions for workflows in between two checkpoints (i.e. between two calls to wait/resubmit/savepoint or from start to first occurence of those, or from last occurence to end). The transaction controller is only held in this class but used by the PersistentProcessors.
      • PersistentPriorityProcessorPool

        public PersistentPriorityProcessorPool​(java.lang.String id,
                                               TransactionController transactionController,
                                               int numberOfThreads)
    • Method Detail

      • setTransactionController

        public void setTransactionController​(TransactionController transactionController)
      • setLowerThreshold

        public void setLowerThreshold​(int lowerThreshold)
        Specified by:
        setLowerThreshold in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • getLowerThreshold

        public int getLowerThreshold()
        Specified by:
        getLowerThreshold in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • setUpperThreshold

        public void setUpperThreshold​(int upperThreshold)
        Specified by:
        setUpperThreshold in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • getUpperThreshold

        public int getUpperThreshold()
        Specified by:
        getUpperThreshold in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • getUpperThresholdReachedWaitMSec

        public int getUpperThresholdReachedWaitMSec()
        Specified by:
        getUpperThresholdReachedWaitMSec in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • setUpperThresholdReachedWaitMSec

        public void setUpperThresholdReachedWaitMSec​(int upperThresholdReachedWaitMSec)
        Specified by:
        setUpperThresholdReachedWaitMSec in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • getEmptyQueueWaitMSec

        public int getEmptyQueueWaitMSec()
        Specified by:
        getEmptyQueueWaitMSec in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • setEmptyQueueWaitMSec

        public void setEmptyQueueWaitMSec​(int emptyQueueWaitMSec)
        Specified by:
        setEmptyQueueWaitMSec in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • getDequeueBulkSize

        public int getDequeueBulkSize()
        Specified by:
        getDequeueBulkSize in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • setDequeueBulkSize

        public void setDequeueBulkSize​(int dequeueBulkSize)
        Specified by:
        setDequeueBulkSize in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
      • suspendDequeue

        public void suspendDequeue()
        Description copied from interface: PersistentProcessorPool
        Suspends dequeuing of workflow instances from the storage. Workflow instances that already reside in the transient queue are still processed, i.e. calling this methods runs this processor pool "dry".
        Specified by:
        suspendDequeue in interface org.copperengine.management.PersistentPriorityProcessorPoolMXBean
        Specified by:
        suspendDequeue in interface PersistentProcessorPool
        See Also:
        PersistentProcessorPool.resumeDequeue()
      • getQueueSize

        public int getQueueSize()
        Specified by:
        getQueueSize in interface org.copperengine.management.ProcessorPoolMXBean