public class StreamManager extends java.lang.Object implements StreamManagerMBean
StreamResultFuture
s and provides status of all operation invoked.
All stream operations should be created through this class to track streaming status and progress.Modifier and Type | Class and Description |
---|---|
static interface |
StreamManager.StreamListener |
static class |
StreamManager.StreamRateLimiter |
Modifier and Type | Field and Description |
---|---|
static StreamManager |
instance |
OBJECT_NAME
Constructor and Description |
---|
StreamManager() |
Modifier and Type | Method and Description |
---|---|
void |
addListener(StreamManager.StreamListener listener) |
void |
addNotificationListener(javax.management.NotificationListener listener,
javax.management.NotificationFilter filter,
java.lang.Object handback) |
void |
clearStates() |
StreamSession |
findSession(InetAddressAndPort peer,
TimeUUID planId,
int sessionIndex,
boolean searchInitiatorSessions) |
java.util.Set<javax.management.openmbean.CompositeData> |
getCurrentStreams()
Returns the current state of all ongoing streams.
|
static StreamManager.StreamRateLimiter |
getEntireSSTableRateLimiter(InetAddressAndPort peer)
Get streaming rate limiter for entire SSTable operations.
|
StreamResultFuture |
getInitiatorStream(TimeUUID planId) |
javax.management.MBeanNotificationInfo[] |
getNotificationInfo() |
static StreamManager.StreamRateLimiter |
getRateLimiter(InetAddressAndPort peer)
Gets streaming rate limiter.
|
StreamResultFuture |
getReceivingStream(TimeUUID planId) |
java.lang.String |
getStreamingSlowEventsLogTimeout() |
StreamingState |
getStreamingState(TimeUUID id) |
java.util.Collection<StreamingState> |
getStreamingStates() |
boolean |
getStreamingStatsEnabled() |
void |
putFollowerStream(StreamResultFuture future) |
void |
putInitiatorStream(StreamResultFuture future) |
void |
putStreamingState(StreamingState state) |
StreamResultFuture |
registerFollower(StreamResultFuture result) |
void |
registerInitiator(StreamResultFuture result) |
void |
removeListener(StreamManager.StreamListener listener) |
void |
removeNotificationListener(javax.management.NotificationListener listener) |
void |
removeNotificationListener(javax.management.NotificationListener listener,
javax.management.NotificationFilter filter,
java.lang.Object handback) |
void |
setStreamingSlowEventsLogTimeout(java.lang.String value)
Sets the timeout for the streaming slow events log
|
void |
setStreamingStatsEnabled(boolean streamingStatsEnabled)
enable/disable collection of streaming stats while streaming is running.
|
void |
start() |
void |
stop() |
public static final StreamManager instance
public static StreamManager.StreamRateLimiter getRateLimiter(InetAddressAndPort peer)
public static StreamManager.StreamRateLimiter getEntireSSTableRateLimiter(InetAddressAndPort peer)
entire_sstable_stream_throughput_outbound
is less than or equal ot 0
, this returns rate limiter with the
rate of Double.MAX_VALUE
bytes per second.
Rate unit is bytes per sec.peer
- the peer locationStreamManager.StreamRateLimiter
with entire SSTable rate limit set based on peer locationpublic void start()
public void stop()
public java.util.Collection<StreamingState> getStreamingStates()
public StreamingState getStreamingState(TimeUUID id)
public void putStreamingState(StreamingState state)
public void clearStates()
public java.util.Set<javax.management.openmbean.CompositeData> getCurrentStreams()
StreamManagerMBean
getCurrentStreams
in interface StreamManagerMBean
public boolean getStreamingStatsEnabled()
getStreamingStatsEnabled
in interface StreamManagerMBean
public void setStreamingStatsEnabled(boolean streamingStatsEnabled)
StreamManagerMBean
setStreamingStatsEnabled
in interface StreamManagerMBean
public java.lang.String getStreamingSlowEventsLogTimeout()
getStreamingSlowEventsLogTimeout
in interface StreamManagerMBean
public void setStreamingSlowEventsLogTimeout(java.lang.String value)
StreamManagerMBean
setStreamingSlowEventsLogTimeout
in interface StreamManagerMBean
public void registerInitiator(StreamResultFuture result)
public StreamResultFuture registerFollower(StreamResultFuture result)
public void putInitiatorStream(StreamResultFuture future)
public void putFollowerStream(StreamResultFuture future)
public void addListener(StreamManager.StreamListener listener)
public void removeListener(StreamManager.StreamListener listener)
public StreamResultFuture getReceivingStream(TimeUUID planId)
public StreamResultFuture getInitiatorStream(TimeUUID planId)
public void addNotificationListener(javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback)
addNotificationListener
in interface javax.management.NotificationBroadcaster
public void removeNotificationListener(javax.management.NotificationListener listener) throws javax.management.ListenerNotFoundException
removeNotificationListener
in interface javax.management.NotificationBroadcaster
javax.management.ListenerNotFoundException
public void removeNotificationListener(javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback) throws javax.management.ListenerNotFoundException
removeNotificationListener
in interface javax.management.NotificationEmitter
javax.management.ListenerNotFoundException
public javax.management.MBeanNotificationInfo[] getNotificationInfo()
getNotificationInfo
in interface javax.management.NotificationBroadcaster
public StreamSession findSession(InetAddressAndPort peer, TimeUUID planId, int sessionIndex, boolean searchInitiatorSessions)
Copyright © 2009- The Apache Software Foundation