📄 messageadapter.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: MessageAdapter.java
package org.gudy.azureus2.pluginsimpl.local.messaging;
import com.aelitis.azureus.core.peermanager.messaging.Message;
import com.aelitis.azureus.core.peermanager.messaging.MessageException;
import java.nio.ByteBuffer;
import org.gudy.azureus2.core3.util.DirectByteBuffer;
public class MessageAdapter
implements org.gudy.azureus2.plugins.messaging.Message, Message
{
private org.gudy.azureus2.plugins.messaging.Message plug_msg;
private Message core_msg;
public MessageAdapter(org.gudy.azureus2.plugins.messaging.Message plug_msg)
{
this.plug_msg = null;
core_msg = null;
this.plug_msg = plug_msg;
}
public MessageAdapter(Message core_msg)
{
plug_msg = null;
this.core_msg = null;
this.core_msg = core_msg;
}
public org.gudy.azureus2.plugins.messaging.Message getPluginMessage()
{
return plug_msg;
}
public Message getCoreMessage()
{
return core_msg;
}
public ByteBuffer[] getPayload()
{
if (core_msg == null)
return plug_msg.getPayload();
DirectByteBuffer dbbs[] = core_msg.getData();
ByteBuffer bbs[] = new ByteBuffer[dbbs.length];
for (int i = 0; i < dbbs.length; i++)
bbs[i] = dbbs[i].getBuffer((byte)11);
return bbs;
}
public org.gudy.azureus2.plugins.messaging.Message create(ByteBuffer data)
throws org.gudy.azureus2.plugins.messaging.MessageException
{
if (core_msg == null)
return plug_msg.create(data);
return new MessageAdapter(core_msg.deserialize(new DirectByteBuffer(data), (byte)1));
MessageException e;
e;
throw new org.gudy.azureus2.plugins.messaging.MessageException(e.getMessage());
}
public String getID()
{
return core_msg != null ? core_msg.getID() : plug_msg.getID();
}
public byte[] getIDBytes()
{
return core_msg != null ? core_msg.getIDBytes() : plug_msg.getID().getBytes();
}
public int getType()
{
return core_msg != null ? core_msg.getType() : plug_msg.getType();
}
public byte getVersion()
{
return core_msg != null ? core_msg.getVersion() : 1;
}
public String getDescription()
{
return core_msg != null ? core_msg.getDescription() : plug_msg.getDescription();
}
public void destroy()
{
if (core_msg == null)
plug_msg.destroy();
else
core_msg.destroy();
}
public String getFeatureID()
{
return "AZPLUGMSG";
}
public int getFeatureSubID()
{
return -1;
}
public DirectByteBuffer[] getData()
{
if (plug_msg == null)
return core_msg.getData();
ByteBuffer bbs[] = plug_msg.getPayload();
DirectByteBuffer dbbs[] = new DirectByteBuffer[bbs.length];
for (int i = 0; i < bbs.length; i++)
dbbs[i] = new DirectByteBuffer(bbs[i]);
return dbbs;
}
public Message deserialize(DirectByteBuffer data, byte version)
throws MessageException
{
Exception exception;
if (plug_msg == null)
return core_msg.deserialize(data, version);
MessageAdapter messageadapter;
try
{
org.gudy.azureus2.plugins.messaging.Message message = plug_msg.create(data.getBuffer((byte)11));
if (message == null)
throw new MessageException("Plugin message deserialisation failed");
messageadapter = new MessageAdapter(message);
}
catch (org.gudy.azureus2.plugins.messaging.MessageException e)
{
throw new MessageException(e.getMessage());
}
finally
{
data.returnToPool();
}
data.returnToPool();
return messageadapter;
throw exception;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -