|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.aelitis.azureus.core.networkmanager.impl.OutgoingMessageQueueImpl
public class OutgoingMessageQueueImpl
Priority-based outbound peer message queue.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface com.aelitis.azureus.core.networkmanager.OutgoingMessageQueue |
---|
OutgoingMessageQueue.MessageQueueListener |
Constructor Summary | |
---|---|
OutgoingMessageQueueImpl(MessageStreamEncoder stream_encoder)
Create a new outgoing message queue. |
Method Summary | |
---|---|
void |
addMessage(Message message,
boolean manual_listener_notify)
Add a message to the message queue. |
void |
cancelQueueListener(OutgoingMessageQueue.MessageQueueListener listener)
Cancel queue event notification listener. |
int[] |
deliverToTransport(int max_bytes,
boolean protocol_is_free,
boolean manual_listener_notify)
Deliver (write) message(s) data to the underlying transport. |
void |
destroy()
Destroy this queue; i.e. |
void |
doListenerNotifications()
Manually send any unsent listener notifications. |
void |
flush()
Force all pending messages to be delivered |
int |
getDataQueuedBytes()
|
MessageStreamEncoder |
getEncoder()
|
int |
getMssSize()
|
int |
getPercentDoneOfCurrentMessage()
Get the percentage of the current message that has already been sent out. |
boolean |
getPriorityBoost()
|
int |
getProtocolQueuedBytes()
|
java.lang.String |
getQueueTrace()
|
int |
getTotalSize()
Get the total number of bytes ready to be transported. |
boolean |
hasUrgentMessage()
Whether or not an urgent message (one that needs an immediate send, i.e. |
boolean |
isBlocked()
|
boolean |
isDestroyed()
|
void |
notifyOfExternallySentMessage(Message message)
Notifty the queue (and its listeners) of a message sent externally on the queue's behalf. |
Message |
peekFirstMessage()
|
void |
registerQueueListener(OutgoingMessageQueue.MessageQueueListener listener)
Add a listener to be notified of queue events. |
boolean |
removeMessage(Message message,
boolean manual_listener_notify)
Remove a particular message from the queue. |
void |
removeMessagesOfType(Message[] message_types,
boolean manual_listener_notify)
Remove all messages of the given types from the queue. |
void |
setEncoder(MessageStreamEncoder stream_encoder)
Set the message stream encoder that will be used to encode outgoing messages. |
void |
setPriorityBoost(boolean boost)
|
void |
setTrace(boolean on)
|
void |
setTransport(Transport _transport)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public OutgoingMessageQueueImpl(MessageStreamEncoder stream_encoder)
stream_encoder
- default message encoderMethod Detail |
---|
public void setTransport(Transport _transport)
setTransport
in interface OutgoingMessageQueue
public int getMssSize()
getMssSize
in interface OutgoingMessageQueue
public void setEncoder(MessageStreamEncoder stream_encoder)
setEncoder
in interface OutgoingMessageQueue
stream_encoder
- to usepublic MessageStreamEncoder getEncoder()
getEncoder
in interface OutgoingMessageQueue
public int getPercentDoneOfCurrentMessage()
getPercentDoneOfCurrentMessage
in interface OutgoingMessageQueue
public void destroy()
destroy
in interface OutgoingMessageQueue
public int getTotalSize()
getTotalSize
in interface OutgoingMessageQueue
public int getDataQueuedBytes()
getDataQueuedBytes
in interface OutgoingMessageQueue
public int getProtocolQueuedBytes()
getProtocolQueuedBytes
in interface OutgoingMessageQueue
public boolean getPriorityBoost()
getPriorityBoost
in interface OutgoingMessageQueue
public void setPriorityBoost(boolean boost)
setPriorityBoost
in interface OutgoingMessageQueue
public boolean isBlocked()
isBlocked
in interface OutgoingMessageQueue
public boolean hasUrgentMessage()
hasUrgentMessage
in interface OutgoingMessageQueue
public Message peekFirstMessage()
peekFirstMessage
in interface OutgoingMessageQueue
public void addMessage(Message message, boolean manual_listener_notify)
addMessage
in interface OutgoingMessageQueue
message
- message to addmanual_listener_notify
- true for manual notification, false for automaticpublic void removeMessagesOfType(Message[] message_types, boolean manual_listener_notify)
removeMessagesOfType
in interface OutgoingMessageQueue
message_types
- type to removemanual_listener_notify
- true for manual notification, false for automaticpublic boolean removeMessage(Message message, boolean manual_listener_notify)
removeMessage
in interface OutgoingMessageQueue
message
- to removemanual_listener_notify
- true for manual notification, false for automatic
public int[] deliverToTransport(int max_bytes, boolean protocol_is_free, boolean manual_listener_notify) throws java.io.IOException
deliverToTransport
in interface OutgoingMessageQueue
max_bytes
- maximum number of bytes to delivermanual_listener_notify
- true for manual notification, false for automatic
java.io.IOException
- on delivery errorpublic void flush()
OutgoingMessageQueue
flush
in interface OutgoingMessageQueue
public boolean isDestroyed()
isDestroyed
in interface OutgoingMessageQueue
public void doListenerNotifications()
doListenerNotifications
in interface OutgoingMessageQueue
public void setTrace(boolean on)
setTrace
in interface OutgoingMessageQueue
public java.lang.String getQueueTrace()
getQueueTrace
in interface OutgoingMessageQueue
public void registerQueueListener(OutgoingMessageQueue.MessageQueueListener listener)
registerQueueListener
in interface OutgoingMessageQueue
listener
- public void cancelQueueListener(OutgoingMessageQueue.MessageQueueListener listener)
cancelQueueListener
in interface OutgoingMessageQueue
listener
- public void notifyOfExternallySentMessage(Message message)
notifyOfExternallySentMessage
in interface OutgoingMessageQueue
message
- sent externally
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |