FileDocCategorySizeDatePackage
Supplier.javaAPI DocExample1506Thu May 23 09:32:50 BST 2002 sample.dynamic

Supplier

public class Supplier extends Worker
Represents the supplier component of the sample application. Does some work, and places the results into a queue. This class is identical to smaple.standard.Supplier. We could have used that class in our example. However, it has been copied into the dynamic package so that it may inherit from dynamic.Basic instead of sample.standard.Basic.

Fields Summary
public static final String
ROLE
private static final int
DEFAULT_WORK_FACTOR
Constructors Summary
public Supplier(Queue queue)


        
        this(queue, DEFAULT_WORK_FACTOR);
    
public Supplier(Queue queue, int workFactor)

        super(queue, workFactor);
    
Methods Summary
public voidrun()

        //**********
        // This is where the "work" takes place. In a real-world
        /// application that uses this pattern, this logic would
        /// be replaced by the real application logic.
        //**********
        _queue.addSupplier();
        while (!_stopCalled) {
            while (_suspended) {
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {}
            }
            // Burn some cycles...
            calculatePrimes(_workFactor);
            // Now place a WorkUnit in the Queue
            _queue.add(new WorkUnit());
            _numberOfUnitsProcessed++;
        }
        _queue.removeSupplier();