Package org.jgroups.util
package org.jgroups.util
Provides useful functionality which cannot be assigned to any particular other package.
-
ClassDescriptionCollects acks from a number of nodes, waits for all acks.Subclass of
UUIDwhich adds a string as payload.AgeOutCache<K>Cache which removes its elements after a certain timeBoundedList<T>A bounded subclass of LinkedList, oldest elements are removed once max capacity is exceeded.Buffer with an offset and length.The Command patttern (see Gamma et al.).Attempt at writing a fast transfer queue, which is bounded.Maintains credits for senders, when credits fall below 0, a sender blocks until new credits have been received.Default implementation, ignores service namesThread factory mainly responsible for naming of threads.Implementation ofTimeSchedulerby extendingScheduledThreadPoolExecutorto keep tasks sorted.A message digest, which is used by the PBCAST layer for gossiping (also used by NAKACK for keeping track of current seqnos for all members).Class keeping track of the lowest and highest sequence numbers delivered, and the highest sequence numbers received, per member.Extends ByteArrayOutputStream, but exposes the internal buffer.FIFOMessageQueue<K,V> Deprecated.Will be removed together with the Multiplexer in 3.0Class copied fromBitSet.A listener that is called back when a future is done.Lists all network interfaces on a systemImplementation ofTimeScheduler.Simple task wrapper, always executed by at most 1 thread.Open addressing based implementation of a hashmap (not supporting the Map interface though) for message headers.Simple class that holds an immutable reference to another object (or tonull).Listener generating XML output suitable to be processed by JUnitReport.Lazily names threads: whenever the address or cluster name is changed, all threads are renamedDeprecated.ID to uniquely identify a mergeA mutable version of Digest (which is immutableSimple receiver which buffers all messagesA sub-interface of a Future, that allows for listeners to be attached so that observers can be notified when the future completes.NullFuture<T>Subclass ofUUIDwhich adds a string as payload.Promise<T>Allows a thread to submit an asynchronous request and to wait for the result.Iterates over all concrete Protocol classes and creates tables with Protocol's properties.Redirects incoming TCP connections to other hosts/ports.Elements are added at the tail and removed from the head.Manages resources such as multicast addresses and multicast ports, and TCP ports.Similar to AckCollector, but collects responses, not just acks.A store for messages to be retransmitted or delivered.RingBuffer<T>Rsp<T>class that represents a response from a communicationContains responses from all members.Keeps track of a single message to retransmitKeeps track of a range of messages to be retransmitted.Maintains the highest received and highest delivered seqno per memberShutdownRejectedExecutionHandler is a decorator RejectedExecutionHandler used in all JGroups ThreadPoolExecutor(s).Address with a cluster name.Factory to create various types of sockets.Implementations of Streamable can add their state directly to the output stream, enabling them to bypass costly serializationAn object that can alter the state of a thread when it receives a callback from aThreadManagernotifying it that the thread has been created or released from use.An object that manages threads and provides callbacks to aThreadDecoratorto allow it to alter their state.ThreadPoolExecutor subclass that implements @{link ThreadManager}.Timer-like interface which allows for execution of tasks.The interface that dynamic tasks (TimeScheduler.scheduleWithDynamicInterval(org.jgroups.util.TimeScheduler.Task)) must implementImplementation ofTimeScheduler.Simple task wrapper, always executed by at most 1 thread.Subclass ofUUIDwhich adds 3 strings (siteId, rackId and machineId)as payload.Triple<V1,V2, V3> Holds 3 values, useful when we have a map with a key, but more than 1 value and we don't want to create a separate holder object for the values, and don't want to pass the values as a list or array.Tuple<V1,V2> Holds 2 values, useful when we have a map with a key, but more than 1 value and we don't want to create a separate holder object for the values, and don't want to pass the values as a list or array.Vector which cannot be modifiedCollection of various utility routines that can not be assigned to other classes.Logical address which is unique over space and time.Iterates over all concrete Protocol classes and creates XML schema used for validation of configuration files.