org.eclipse.net4j.util.concurrent
Class SynchronizingCorrelator<CORRELATION,RESULT>

java.lang.Object
  extended by org.eclipse.net4j.util.concurrent.SynchronizingCorrelator<CORRELATION,RESULT>
All Implemented Interfaces:
ICorrelator<CORRELATION,ISynchronizer<RESULT>>

public class SynchronizingCorrelator<CORRELATION,RESULT>
extends Object
implements ICorrelator<CORRELATION,ISynchronizer<RESULT>>


Constructor Summary
SynchronizingCorrelator()
           
 
Method Summary
 ISynchronizer<RESULT> correlate(CORRELATION correlation)
           
 ISynchronizer<RESULT> correlateUnique(CORRELATION correlation)
           
protected  ISynchronizer<RESULT> createSynchronizer(CORRELATION correlation)
           
 RESULT get(CORRELATION correlation, long timeout)
           
 ISynchronizer<RESULT> getSynchronizer(CORRELATION correlation)
           
 boolean isCorrelated(CORRELATION correlation)
           
 void put(CORRELATION correlation, RESULT result)
           
 boolean put(CORRELATION correlation, RESULT result, long timeout)
           
 boolean putIfCorrelated(CORRELATION correlation, RESULT result)
           
 String toString()
           
 ISynchronizer<RESULT> uncorrelate(CORRELATION correlation)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SynchronizingCorrelator

public SynchronizingCorrelator()
Method Detail

getSynchronizer

public ISynchronizer<RESULT> getSynchronizer(CORRELATION correlation)
Since:
3.0

isCorrelated

public boolean isCorrelated(CORRELATION correlation)
Specified by:
isCorrelated in interface ICorrelator<CORRELATION,ISynchronizer<RESULT>>

correlate

public ISynchronizer<RESULT> correlate(CORRELATION correlation)
Specified by:
correlate in interface ICorrelator<CORRELATION,ISynchronizer<RESULT>>

correlateUnique

public ISynchronizer<RESULT> correlateUnique(CORRELATION correlation)
Specified by:
correlateUnique in interface ICorrelator<CORRELATION,ISynchronizer<RESULT>>

uncorrelate

public ISynchronizer<RESULT> uncorrelate(CORRELATION correlation)
Specified by:
uncorrelate in interface ICorrelator<CORRELATION,ISynchronizer<RESULT>>

get

public RESULT get(CORRELATION correlation,
                  long timeout)

put

public void put(CORRELATION correlation,
                RESULT result)

putIfCorrelated

public boolean putIfCorrelated(CORRELATION correlation,
                               RESULT result)
Since:
3.0

put

public boolean put(CORRELATION correlation,
                   RESULT result,
                   long timeout)

createSynchronizer

protected ISynchronizer<RESULT> createSynchronizer(CORRELATION correlation)

toString

public String toString()
Overrides:
toString in class Object


Copyright (c) 2011, 2012 Eike Stepper (Berlin, Germany) and others.