Package org.jgroups.util
Class ResponseCollector<T>
java.lang.Object
org.jgroups.util.ResponseCollector<T>
- Direct Known Subclasses:
ResponseCollectorTask
Similar to AckCollector, but collects responses from cluster members, not just acks. Null is not a valid key.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionResponseCollector(Collection<Address> members) ResponseCollector(Address... members) -
Method Summary
Modifier and TypeMethodDescriptionbooleanReturns a list of members which didn't send a valid responsebooleanintvoidvoidvoidreset()voidreset(Collection<Address> members) voidbooleanintsize()voidtoString()booleanwaitForAllResponses(long timeout) Waits until all responses have been received, or until a timeout has elapsed.
-
Field Details
-
responses
-
lock
-
cond
-
-
Constructor Details
-
ResponseCollector
- Parameters:
members- List of members from which we expect responses
-
ResponseCollector
-
ResponseCollector
public ResponseCollector()
-
-
Method Details
-
add
-
remove
-
remove
-
retainAll
-
suspect
-
hasAllResponses
public boolean hasAllResponses() -
numberOfValidResponses
public int numberOfValidResponses() -
getMissing
Returns a list of members which didn't send a valid response -
getValidResults
-
getResults
-
size
public int size() -
waitForAllResponses
public boolean waitForAllResponses(long timeout) Waits until all responses have been received, or until a timeout has elapsed.- Parameters:
timeout- Number of milliseconds to wait max. This value needs to be greater than 0, or else it will be adjusted to 2000- Returns:
- boolean True if all responses have been received within timeout ms, else false (e.g. if interrupted)
-
reset
public void reset() -
reset
-
reset
-
toString
-