public abstract class TP extends Protocol implements DiagnosticsHandler.ProbeHandler, AdditionalJmxObjects
sendMulticast(byte[], int, int)
sendUnicast(org.jgroups.PhysicalAddress, byte[], int, int)
init()
start()
: subclasses must call super.start() after they initialize themselves
(e.g., created their sockets).
stop()
: subclasses must call super.stop() after they deinitialized themselves
destroy()
receive(Address, byte[], int, int)
method must
be called by subclasses when a unicast or multicast message has been received.Modifier and Type | Field and Description |
---|---|
protected AverageMinMax |
avg_batch_size |
protected InetAddress |
bind_addr |
protected int |
bind_port
The port to which the transport binds.
|
protected Bundler |
bundler |
protected int |
bundler_capacity |
protected int |
bundler_num_spins |
protected String |
bundler_type |
protected String |
bundler_wait_strategy |
protected static boolean |
can_bind_to_mcast_addr |
protected AsciiString |
cluster_name
The name of the group to which this member is connected.
|
protected ReentrantLock |
connectLock |
protected DiagnosticsHandler |
diag_handler |
protected InetAddress |
diagnostics_addr |
protected List<NetworkInterface> |
diagnostics_bind_interfaces |
protected String |
diagnostics_passcode |
protected int |
diagnostics_port |
protected int |
diagnostics_ttl |
protected boolean |
enable_diagnostics |
protected InetAddress |
external_addr |
protected int |
external_port |
protected TpHeader |
header
The header including the cluster name, sent with each message.
|
protected Executor |
internal_pool |
protected ThreadFactory |
internal_thread_factory |
protected boolean |
is_trace |
protected long |
last_discovery_request |
static byte |
LIST |
protected Address |
local_addr
The address (host and port) of this member
|
protected PhysicalAddress |
local_physical_addr |
protected boolean |
log_discard_msgs
Whether or not warnings about messages from different groups are logged - private flag, not for common use
|
protected boolean |
log_discard_msgs_version |
protected LazyRemovalCache<Address,PhysicalAddress> |
logical_addr_cache
Cache which maintains mappings between logical and physical addresses.
|
protected long |
logical_addr_cache_expiration |
protected int |
logical_addr_cache_max_size |
protected Future<?> |
logical_addr_cache_reaper |
protected long |
logical_addr_cache_reaper_interval |
protected boolean |
loopback_copy |
protected boolean |
loopback_separate_thread |
protected int |
max_bundle_size
Maximum number of bytes for messages to be queued until they are sent.
|
protected Set<Address> |
members
The members of this group (updated when a member joins or leaves).
|
protected String |
message_processing_policy |
protected static long |
MIN_WAIT_BETWEEN_DISCOVERIES |
static int |
MSG_OVERHEAD |
protected int |
msg_processing_max_buffer_size |
protected MessageProcessingPolicy |
msg_processing_policy |
protected MsgStats |
msg_stats |
static byte |
MULTICAST |
protected int |
port_range |
protected List<DiagnosticsHandler.ProbeHandler> |
preregistered_probe_handlers |
protected static LazyRemovalCache.Printable<Address,LazyRemovalCache.Entry<PhysicalAddress>> |
print_function |
protected List<NetworkInterface> |
receive_interfaces
List
|
protected boolean |
receive_on_all_interfaces |
protected SocketFactory |
socket_factory |
protected SuppressLog<Address> |
suppress_log_different_cluster
Log to suppress identical warnings for messages from members in different clusters
|
protected SuppressLog<Address> |
suppress_log_different_version
Log to suppress identical warnings for messages from members with different (incompatible) versions
|
protected long |
suppress_time_different_cluster_warnings |
protected long |
suppress_time_different_version_warnings |
protected ThreadFactory |
thread_factory
Factory which is used by the thread pool
|
protected String |
thread_naming_pattern |
protected Executor |
thread_pool
The thread pool which handles unmarshalling, version checks and dispatching of messages
|
protected boolean |
thread_pool_enabled |
protected long |
thread_pool_keep_alive_time |
protected int |
thread_pool_max_threads |
protected int |
thread_pool_min_threads |
protected TimeService |
time_service |
protected long |
time_service_interval |
protected TimeScheduler |
timer |
protected boolean |
timer_handle_non_blocking_tasks |
protected boolean |
use_common_fork_join_pool |
protected boolean |
use_fork_join_pool |
protected boolean |
use_ip_addrs |
protected View |
view |
protected ExpiryCache<Address> |
who_has_cache
Cache keeping track of WHO_HAS requests for physical addresses (given a logical address) and expiring
them after who_has_cache_timeout ms
|
protected long |
who_has_cache_timeout |
after_creation_hook, down_prot, ergonomics, id, log, stack, stats, up_prot
Modifier | Constructor and Description |
---|---|
protected |
TP()
Creates the TP protocol, and initializes the state variables, does
however not start any sockets or threads.
|
Modifier and Type | Method and Description |
---|---|
protected void |
_send(Message msg,
Address dest) |
protected boolean |
addPhysicalAddressToCache(Address logical_addr,
PhysicalAddress physical_addr) |
protected boolean |
addPhysicalAddressToCache(Address logical_addr,
PhysicalAddress physical_addr,
boolean overwrite) |
AverageMinMax |
avgBatchSize() |
void |
bundler(String type) |
int |
bundlerNumSpins() |
TP |
bundlerNumSpins(int spins) |
String |
bundlerStats() |
void |
bundlerStatsReset() |
String |
bundlerWaitStrategy() |
TP |
bundlerWaitStrategy(String strategy) |
TP |
clearDifferentClusterCache() |
TP |
clearDifferentVersionCache() |
void |
clearLogicalAddressCache()
Clears the cache.
|
protected Bundler |
createBundler(String type) |
protected static ExecutorService |
createThreadPool(int min_threads,
int max_threads,
long keep_alive_time,
String rejection_policy,
BlockingQueue<Runnable> queue,
ThreadFactory factory,
Log log,
boolean use_fork_join_pool,
boolean use_common_fork_join_pool) |
void |
destroy()
This method is called on a
JChannel.close() . |
void |
disableDiagnostics() |
void |
doSend(byte[] buf,
int offset,
int length,
Address dest) |
Object |
down(Event evt)
An event is to be sent down the stack.
|
Object |
down(Message msg)
A message needs to be sent to a single member or all members
|
String |
dumpTimerTasks() |
TP |
enableBlockingTimerTasks(boolean flag) |
void |
enableDiagnostics() |
void |
evictLogicalAddressCache() |
void |
evictLogicalAddressCache(boolean force) |
protected void |
fetchLocalAddresses()
Grabs the local address (or addresses in the shared transport case) and registers them with the physical address
in the transport's cache
|
protected void |
fetchPhysicalAddrs(List<Address> missing) |
protected Responses |
fetchResponsesFromDiscoveryProtocol(List<Address> missing) |
protected Collection<PhysicalAddress> |
getAllPhysicalAddressesFromCache() |
String |
getAvgBatchSize() |
InetAddress |
getBindAddress() |
int |
getBindPort() |
Bundler |
getBundler() |
int |
getBundlerBufferSize() |
int |
getBundlerCapacity() |
String |
getBundlerClass() |
String |
getClusterName() |
AsciiString |
getClusterNameAscii() |
int |
getDifferentClusterMessages() |
int |
getDifferentVersionMessages() |
abstract String |
getInfo() |
Executor |
getInternalThreadPool() |
int |
getInternalThreadPoolSize() |
int |
getInternalThreadPoolSizeLargest() |
ThreadFactory |
getInternalThreadPoolThreadFactory() |
Object[] |
getJmxObjects() |
String |
getLocalAddress() |
String |
getLocalPhysicalAddress() |
boolean |
getLogDiscardMessages() |
boolean |
getLogDiscardMessagesVersion() |
int |
getMaxBundleSize() |
int |
getMessageProcessingMaxBufferSize() |
MsgStats |
getMessageStats() |
long |
getNumMessagesSent() |
static int |
getNumThreads() |
int |
getNumTimerTasks() |
protected abstract PhysicalAddress |
getPhysicalAddress() |
protected PhysicalAddress |
getPhysicalAddressFromCache(Address logical_addr) |
int |
getPortRange() |
List<NetworkInterface> |
getReceiveInterfaces() |
SocketFactory |
getSocketFactory()
Returns the SocketFactory associated with this protocol, if overridden in a subclass, or passes the call down
|
ThreadFactory |
getThreadFactory()
Supposed to be overwritten by subclasses.
|
String |
getThreadNamingPattern()
Names the current thread.
|
Executor |
getThreadPool() |
long |
getThreadPoolKeepAliveTime() |
int |
getThreadPoolMaxThreads() |
int |
getThreadPoolMinThreads() |
int |
getThreadPoolSize() |
int |
getThreadPoolSizeActive() |
int |
getThreadPoolSizeLargest() |
ThreadFactory |
getThreadPoolThreadFactory() |
TimeScheduler |
getTimer() |
String |
getTimerClass() |
int |
getTimerThreads() |
TimeService |
getTimeService() |
boolean |
getUseIpAddresses() |
protected void |
handleConnect() |
protected void |
handleDisconnect() |
protected Object |
handleDownEvent(Event evt) |
protected void |
handleMessageBatch(DataInput in,
boolean multicast) |
Map<String,String> |
handleProbe(String... keys)
Handles a probe.
|
protected void |
handleSingleMessage(DataInput in,
boolean multicast) |
TP |
incrBatchesSent(int delta) |
TP |
incrNumSingleMsgsSent(int d) |
void |
init()
Called after instance has been created (null constructor) and before protocol is started.
|
boolean |
isDiagnosticsHandlerRunning() |
boolean |
isLogicalAddressCacheReaperRunning() |
boolean |
isMulticastCapable() |
boolean |
isReceiveOnAllInterfaces() |
Address |
localAddress() |
static String |
loggerType() |
protected void |
loopback(Message msg,
boolean multicast) |
void |
passBatchUp(MessageBatch batch,
boolean perform_cluster_name_matching,
boolean discard_own_mcast) |
void |
passMessageUp(Message msg,
byte[] cluster_name,
boolean perform_cluster_name_matching,
boolean multicast,
boolean discard_own_mcast) |
String |
printLogicalAddressCache() |
String |
printWhoHasCache() |
protected void |
processBatch(MessageBatch batch,
boolean oob,
boolean internal) |
void |
receive(Address sender,
byte[] data,
int offset,
int length)
Subclasses must call this method when a unicast or multicast message has been received.
|
void |
receive(Address sender,
DataInput in) |
protected void |
registerLocalAddress(Address addr)
Associates the address with the physical address fetched from the cache
|
TP |
registerProbeHandler(DiagnosticsHandler.ProbeHandler handler) |
protected void |
removeLogicalAddressFromCache(Address logical_addr) |
void |
resetStats() |
protected boolean |
runInNewThread(Runnable task) |
protected void |
send(Message msg,
Address dest)
Serializes and sends a message.
|
abstract void |
sendMulticast(byte[] data,
int offset,
int length)
Send to all members in the group.
|
protected void |
sendToMembers(Collection<Address> mbrs,
byte[] buf,
int offset,
int length)
Fetches the physical addrs for mbrs and sends the msg to each physical address.
|
protected void |
sendToSingleMember(Address dest,
byte[] buf,
int offset,
int length) |
abstract void |
sendUnicast(PhysicalAddress dest,
byte[] data,
int offset,
int length)
Send a unicast to 1 member.
|
TP |
setBindAddress(InetAddress bind_addr) |
TP |
setBindPort(int port) |
TP |
setBindToAllInterfaces(boolean flag) |
TP |
setBundler(Bundler bundler)
Installs a bundler.
|
TP |
setDiagnosticsHandler(DiagnosticsHandler handler)
Sets a
DiagnosticsHandler . |
protected void |
setInAllThreadFactories(String cluster_name,
Address local_address,
String pattern) |
TP |
setInternalThreadPool(Executor thread_pool) |
TP |
setInternalThreadPoolThreadFactory(ThreadFactory factory) |
<T extends Protocol> |
setLevel(String level)
Sets the level of a logger.
|
TP |
setLogDiscardMessages(boolean flag) |
TP |
setLogDiscardMessagesVersion(boolean flag) |
TP |
setMaxBundleSize(int size) |
void |
setMessageProcessingPolicy(String policy) |
TP |
setPortRange(int range) |
void |
setSocketFactory(SocketFactory factory)
Sets a SocketFactory.
|
protected void |
setSourceAddress(Message msg)
If the sender is null, set our own address.
|
TP |
setThreadFactory(ThreadFactory factory) |
protected void |
setThreadNames() |
TP |
setThreadPool(Executor thread_pool) |
TP |
setThreadPoolKeepAliveTime(long time) |
TP |
setThreadPoolMaxThreads(int size) |
TP |
setThreadPoolMinThreads(int size) |
TP |
setThreadPoolThreadFactory(ThreadFactory factory) |
TP |
setTimer(TimeScheduler timer)
Sets a new timer.
|
TP |
setTimeService(TimeService ts) |
protected static void |
shutdownThreadPool(Executor thread_pool) |
void |
start()
Creates the unicast and multicast sockets and starts the unicast and multicast receiver threads
|
protected void |
startDiagnostics() |
void |
stop()
This method is called on a
JChannel.disconnect() . |
protected void |
stopDiagnostics() |
boolean |
submitToThreadPool(Executor pool,
Runnable task,
boolean spawn_thread_on_rejection,
boolean forward_to_internal_pool) |
boolean |
submitToThreadPool(Runnable task,
boolean spawn_thread_on_rejection) |
String[] |
supportedKeys()
Returns a list of supported keys
|
abstract boolean |
supportsMulticasting()
Whether or not hardware multicasting is supported
|
String |
toString() |
boolean |
unicastDestMismatch(Address dest) |
TP |
unregisterProbeHandler(DiagnosticsHandler.ProbeHandler handler) |
protected void |
unsetThreadNames() |
protected boolean |
versionMatch(short version,
Address sender) |
View |
view() |
accept, afterCreationHook, enableStats, getConfigurableObjects, getDownProtocol, getDownServices, getId, getIdsAbove, getLevel, getLog, getName, getProtocolStack, getTransport, getUpProtocol, getUpServices, getValue, isErgonomics, level, parse, providedDownServices, providedUpServices, requiredDownServices, requiredUpServices, resetStatistics, setDownProtocol, setErgonomics, setId, setProperties, setProtocolStack, setUpProtocol, setValue, statsEnabled, up, up, up
public static final byte LIST
public static final byte MULTICAST
public static final int MSG_OVERHEAD
protected static final long MIN_WAIT_BETWEEN_DISCOVERIES
protected static final boolean can_bind_to_mcast_addr
protected InetAddress bind_addr
protected boolean use_ip_addrs
protected InetAddress external_addr
protected int external_port
protected boolean is_trace
protected boolean receive_on_all_interfaces
protected List<NetworkInterface> receive_interfaces
protected int logical_addr_cache_max_size
protected long logical_addr_cache_expiration
protected long logical_addr_cache_reaper_interval
protected int bind_port
port_range
protected int port_range
protected boolean loopback_copy
protected boolean loopback_separate_thread
protected String message_processing_policy
protected int msg_processing_max_buffer_size
protected String thread_naming_pattern
protected boolean use_fork_join_pool
protected boolean use_common_fork_join_pool
protected boolean thread_pool_enabled
protected int thread_pool_min_threads
protected int thread_pool_max_threads
protected long thread_pool_keep_alive_time
protected long time_service_interval
protected boolean enable_diagnostics
protected InetAddress diagnostics_addr
protected List<NetworkInterface> diagnostics_bind_interfaces
protected int diagnostics_port
protected int diagnostics_ttl
protected String diagnostics_passcode
protected boolean log_discard_msgs
protected boolean log_discard_msgs_version
protected long who_has_cache_timeout
protected long suppress_time_different_version_warnings
protected long suppress_time_different_cluster_warnings
protected int max_bundle_size
protected String bundler_type
protected int bundler_capacity
protected int bundler_num_spins
protected String bundler_wait_strategy
protected final MsgStats msg_stats
protected AsciiString cluster_name
protected boolean timer_handle_non_blocking_tasks
protected Address local_addr
protected PhysicalAddress local_physical_addr
protected volatile View view
protected final Set<Address> members
protected final ReentrantLock connectLock
protected Executor thread_pool
protected ThreadFactory thread_factory
protected ThreadFactory internal_thread_factory
protected Executor internal_pool
protected TimeScheduler timer
protected TimeService time_service
protected SocketFactory socket_factory
protected Bundler bundler
protected MessageProcessingPolicy msg_processing_policy
protected DiagnosticsHandler diag_handler
protected final List<DiagnosticsHandler.ProbeHandler> preregistered_probe_handlers
protected TpHeader header
protected LazyRemovalCache<Address,PhysicalAddress> logical_addr_cache
protected long last_discovery_request
protected Future<?> logical_addr_cache_reaper
protected final AverageMinMax avg_batch_size
protected static final LazyRemovalCache.Printable<Address,LazyRemovalCache.Entry<PhysicalAddress>> print_function
protected ExpiryCache<Address> who_has_cache
protected SuppressLog<Address> suppress_log_different_version
protected SuppressLog<Address> suppress_log_different_cluster
protected TP()
public String getBundlerClass()
public TP setMaxBundleSize(int size)
public final int getMaxBundleSize()
public int getBundlerCapacity()
public int getMessageProcessingMaxBufferSize()
public int getBundlerBufferSize()
public String bundlerWaitStrategy()
public int bundlerNumSpins()
public TP bundlerNumSpins(int spins)
public boolean isLogicalAddressCacheReaperRunning()
public String getAvgBatchSize()
public AverageMinMax avgBatchSize()
public TP setThreadPoolMinThreads(int size)
public int getThreadPoolMinThreads()
public TP setThreadPoolMaxThreads(int size)
public int getThreadPoolMaxThreads()
public TP setThreadPoolKeepAliveTime(long time)
public long getThreadPoolKeepAliveTime()
public Object[] getJmxObjects()
getJmxObjects
in interface AdditionalJmxObjects
public <T extends Protocol> T setLevel(String level)
Protocol
public void setMessageProcessingPolicy(String policy)
public String getTimerClass()
public String getClusterName()
public AsciiString getClusterNameAscii()
public int getDifferentClusterMessages()
public int getDifferentVersionMessages()
public TP clearDifferentClusterCache()
public TP clearDifferentVersionCache()
public static String loggerType()
public TP enableBlockingTimerTasks(boolean flag)
public MsgStats getMessageStats()
public abstract boolean supportsMulticasting()
public boolean isMulticastCapable()
public String getLocalAddress()
public Address localAddress()
public View view()
public String getLocalPhysicalAddress()
public void resetStats()
resetStats
in class Protocol
public TP registerProbeHandler(DiagnosticsHandler.ProbeHandler handler)
public TP unregisterProbeHandler(DiagnosticsHandler.ProbeHandler handler)
public TP setDiagnosticsHandler(DiagnosticsHandler handler)
DiagnosticsHandler
. Should be set before the stack is startedhandler
- public Bundler getBundler()
public TP setBundler(Bundler bundler)
public Executor getThreadPool()
public ThreadFactory getThreadPoolThreadFactory()
public TP setThreadPoolThreadFactory(ThreadFactory factory)
public Executor getInternalThreadPool()
public ThreadFactory getInternalThreadPoolThreadFactory()
public TP setInternalThreadPoolThreadFactory(ThreadFactory factory)
public TimeScheduler getTimer()
public TP setTimer(TimeScheduler timer)
timer
- public TimeService getTimeService()
public TP setTimeService(TimeService ts)
public ThreadFactory getThreadFactory()
Protocol
getThreadFactory
in class Protocol
public TP setThreadFactory(ThreadFactory factory)
public SocketFactory getSocketFactory()
Protocol
getSocketFactory
in class Protocol
public void setSocketFactory(SocketFactory factory)
Protocol
TP
)setSocketFactory
in class Protocol
public String getThreadNamingPattern()
public long getNumMessagesSent()
public TP incrBatchesSent(int delta)
public TP incrNumSingleMsgsSent(int d)
public InetAddress getBindAddress()
public TP setBindAddress(InetAddress bind_addr)
public int getBindPort()
public TP setBindPort(int port)
public TP setBindToAllInterfaces(boolean flag)
public boolean isReceiveOnAllInterfaces()
public List<NetworkInterface> getReceiveInterfaces()
public TP setPortRange(int range)
public int getPortRange()
public int getThreadPoolSize()
public int getThreadPoolSizeActive()
public int getThreadPoolSizeLargest()
public int getInternalThreadPoolSize()
public int getInternalThreadPoolSizeLargest()
public int getNumTimerTasks()
public String dumpTimerTasks()
public int getTimerThreads()
public static int getNumThreads()
public boolean isDiagnosticsHandlerRunning()
public TP setLogDiscardMessages(boolean flag)
public boolean getLogDiscardMessages()
public TP setLogDiscardMessagesVersion(boolean flag)
public boolean getLogDiscardMessagesVersion()
public boolean getUseIpAddresses()
public String printLogicalAddressCache()
public String printWhoHasCache()
public void evictLogicalAddressCache()
public void evictLogicalAddressCache(boolean force)
public abstract void sendMulticast(byte[] data, int offset, int length) throws Exception
data
- The data to be sent. This is not a copy, so don't modify itoffset
- length
- Exception
public abstract void sendUnicast(PhysicalAddress dest, byte[] data, int offset, int length) throws Exception
dest
- Must be a non-null unicast addressdata
- The data to be sent. This is not a copy, so don't modify itoffset
- length
- Exception
public abstract String getInfo()
public void init() throws Exception
Protocol
public void destroy()
Protocol
JChannel.close()
.
Does some cleanup; after the call the VM will terminatepublic void start() throws Exception
start
in class Protocol
Exception
- Thrown if protocol cannot be started successfully. This will cause the ProtocolStack
to fail, so JChannel.connect(String)
will throw an exceptionpublic String bundlerStats()
public void bundlerStatsReset()
public void bundler(String type)
public void stop()
Protocol
JChannel.disconnect()
. Stops work (e.g. by closing multicast socket).
Will be called from top to bottom. This means that at the time of the method invocation the
neighbor protocol below is still working. This method will replace the
STOP, STOP_OK, CLEANUP and CLEANUP_OK events. The ProtocolStack guarantees that
when this method is called all messages in the down queue will have been flushedpublic void enableDiagnostics()
public void disableDiagnostics()
protected void stopDiagnostics()
public Map<String,String> handleProbe(String... keys)
DiagnosticsHandler.ProbeHandler
handleProbe
in interface DiagnosticsHandler.ProbeHandler
public String[] supportedKeys()
DiagnosticsHandler.ProbeHandler
supportedKeys
in interface DiagnosticsHandler.ProbeHandler
protected void handleDisconnect()
public Object down(Event evt)
Protocol
down_prot.down()
.protected void loopback(Message msg, boolean multicast)
protected void setSourceAddress(Message msg)
public void passMessageUp(Message msg, byte[] cluster_name, boolean perform_cluster_name_matching, boolean multicast, boolean discard_own_mcast)
public void passBatchUp(MessageBatch batch, boolean perform_cluster_name_matching, boolean discard_own_mcast)
public void receive(Address sender, byte[] data, int offset, int length)
protected void handleMessageBatch(DataInput in, boolean multicast)
protected void handleSingleMessage(DataInput in, boolean multicast)
protected void processBatch(MessageBatch batch, boolean oob, boolean internal)
public boolean unicastDestMismatch(Address dest)
public boolean submitToThreadPool(Runnable task, boolean spawn_thread_on_rejection)
public boolean submitToThreadPool(Executor pool, Runnable task, boolean spawn_thread_on_rejection, boolean forward_to_internal_pool)
protected boolean runInNewThread(Runnable task)
protected boolean versionMatch(short version, Address sender)
protected void send(Message msg, Address dest) throws Exception
Exception
public void doSend(byte[] buf, int offset, int length, Address dest) throws Exception
Exception
protected void sendToSingleMember(Address dest, byte[] buf, int offset, int length) throws Exception
Exception
protected void sendToMembers(Collection<Address> mbrs, byte[] buf, int offset, int length) throws Exception
Exception
protected Responses fetchResponsesFromDiscoveryProtocol(List<Address> missing)
protected void registerLocalAddress(Address addr)
addr
- protected void fetchLocalAddresses()
protected void setThreadNames()
protected void unsetThreadNames()
protected void setInAllThreadFactories(String cluster_name, Address local_address, String pattern)
protected static ExecutorService createThreadPool(int min_threads, int max_threads, long keep_alive_time, String rejection_policy, BlockingQueue<Runnable> queue, ThreadFactory factory, Log log, boolean use_fork_join_pool, boolean use_common_fork_join_pool)
protected static void shutdownThreadPool(Executor thread_pool)
protected boolean addPhysicalAddressToCache(Address logical_addr, PhysicalAddress physical_addr)
protected boolean addPhysicalAddressToCache(Address logical_addr, PhysicalAddress physical_addr, boolean overwrite)
protected PhysicalAddress getPhysicalAddressFromCache(Address logical_addr)
protected Collection<PhysicalAddress> getAllPhysicalAddressesFromCache()
protected void removeLogicalAddressFromCache(Address logical_addr)
public void clearLogicalAddressCache()
protected abstract PhysicalAddress getPhysicalAddress()
Copyright © 2018 JBoss, a division of Red Hat. All rights reserved.