solar.service.pack.proto
Class FairQueueOBM

java.lang.Object
  |
  +--solar.service.pack.proto.FairQueueOBM
All Implemented Interfaces:
OutputBufferManager

public class FairQueueOBM
extends java.lang.Object
implements OutputBufferManager

This output buffer manager takes all currently non-empty buffers and dequeue one of them with uniform probability.

Version:
$Id: FairQueueOBM.java,v 1.4 2003/10/13 13:06:57 glchen Exp $
Author:
Guanling Chen

Field Summary
protected  BaseProtocol.ProtocolState _state
           
protected  cern.jet.random.Uniform _unigen
           
 
Constructor Summary
FairQueueOBM(BaseProtocol.ProtocolState state)
           
 
Method Summary
 BufferedEvent getEvent()
           
 void resumeSubscriber(java.lang.Object subkey)
           
 void suspendSubscriber(java.lang.Object subkey)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_unigen

protected cern.jet.random.Uniform _unigen

_state

protected BaseProtocol.ProtocolState _state
Constructor Detail

FairQueueOBM

public FairQueueOBM(BaseProtocol.ProtocolState state)
Method Detail

suspendSubscriber

public void suspendSubscriber(java.lang.Object subkey)
Specified by:
suspendSubscriber in interface OutputBufferManager

resumeSubscriber

public void resumeSubscriber(java.lang.Object subkey)
Specified by:
resumeSubscriber in interface OutputBufferManager

getEvent

public BufferedEvent getEvent()
                       throws java.lang.InterruptedException
Specified by:
getEvent in interface OutputBufferManager
java.lang.InterruptedException