📄 outgoingmessagequeueimpl.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: OutgoingMessageQueueImpl.java
package org.gudy.azureus2.pluginsimpl.local.network;
import com.aelitis.azureus.core.networkmanager.OutgoingMessageQueue;
import java.util.HashMap;
import org.gudy.azureus2.plugins.messaging.Message;
import org.gudy.azureus2.plugins.messaging.MessageStreamEncoder;
import org.gudy.azureus2.plugins.network.OutgoingMessageQueueListener;
import org.gudy.azureus2.pluginsimpl.local.messaging.MessageAdapter;
import org.gudy.azureus2.pluginsimpl.local.messaging.MessageStreamEncoderAdapter;
public class OutgoingMessageQueueImpl
implements org.gudy.azureus2.plugins.network.OutgoingMessageQueue
{
private final OutgoingMessageQueue core_queue;
private final HashMap registrations = new HashMap();
protected OutgoingMessageQueueImpl(OutgoingMessageQueue core_queue)
{
this.core_queue = core_queue;
}
public void setEncoder(MessageStreamEncoder encoder)
{
core_queue.setEncoder(new MessageStreamEncoderAdapter(encoder));
}
public void sendMessage(Message message)
{
if (message instanceof MessageAdapter)
{
core_queue.addMessage(((MessageAdapter)message).getCoreMessage(), false);
return;
} else
{
core_queue.addMessage(new MessageAdapter(message), false);
return;
}
}
public void registerListener(final OutgoingMessageQueueListener listener)
{
com.aelitis.azureus.core.networkmanager.OutgoingMessageQueue.MessageQueueListener core_listener = new com.aelitis.azureus.core.networkmanager.OutgoingMessageQueue.MessageQueueListener() {
final OutgoingMessageQueueListener val$listener;
final OutgoingMessageQueueImpl this$0;
public boolean messageAdded(com.aelitis.azureus.core.peermanager.messaging.Message message)
{
if (message instanceof MessageAdapter)
return listener.messageAdded(((MessageAdapter)message).getPluginMessage());
else
return listener.messageAdded(new MessageAdapter(message));
}
public void messageQueued(com.aelitis.azureus.core.peermanager.messaging.Message message1)
{
}
public void messageRemoved(com.aelitis.azureus.core.peermanager.messaging.Message message1)
{
}
public void messageSent(com.aelitis.azureus.core.peermanager.messaging.Message message)
{
if (message instanceof MessageAdapter)
{
listener.messageSent(((MessageAdapter)message).getPluginMessage());
return;
} else
{
listener.messageSent(new MessageAdapter(message));
return;
}
}
public void protocolBytesSent(int byte_count)
{
listener.bytesSent(byte_count);
}
public void dataBytesSent(int byte_count)
{
listener.bytesSent(byte_count);
}
public void flush()
{
}
{
this$0 = OutgoingMessageQueueImpl.this;
listener = outgoingmessagequeuelistener;
super();
}
};
registrations.put(listener, core_listener);
core_queue.registerQueueListener(core_listener);
}
public void deregisterListener(OutgoingMessageQueueListener listener)
{
com.aelitis.azureus.core.networkmanager.OutgoingMessageQueue.MessageQueueListener core_listener = (com.aelitis.azureus.core.networkmanager.OutgoingMessageQueue.MessageQueueListener)registrations.remove(listener);
if (core_listener != null)
core_queue.cancelQueueListener(core_listener);
}
public void notifyOfExternalSend(Message message)
{
if (message instanceof MessageAdapter)
{
core_queue.notifyOfExternallySentMessage(((MessageAdapter)message).getCoreMessage());
return;
} else
{
core_queue.notifyOfExternallySentMessage(new MessageAdapter(message));
return;
}
}
public int getPercentDoneOfCurrentMessage()
{
return core_queue.getPercentDoneOfCurrentMessage();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -