net.sf.opensmus
Class MUSMessage

java.lang.Object
  extended by net.sf.opensmus.MUSMessage
Direct Known Subclasses:
MUSLogonMessage

public class MUSMessage
extends java.lang.Object

Class representing a message formatted according to the Shockwave MultiUserServer specs.
See technote 15465 "Shockwave Multiuser protocol description" at www.macromedia.com/support for more information about the internal structure of a Shockwave binary message. Shockwave is a trademark of Macromedia, Inc. All rights reserved.


Field Summary
 int m_errCode
          Message error code, represented as a MUSErrorCode type (for example MUSErrorCode.NoError)
static byte[] m_header
          Default MUS message header, included automatically with each message.
 LValue m_msgContent
          The content part of this message.
 MUSMsgHeaderStringList m_recptID
          A MUSMsgHeaderStringList object containing one or more MUSMsgHeaderStrings, each corresponding to one intended recipient for this message.
 MUSMsgHeaderString m_senderID
          A single MUSMsgHeaderString object corresponding to the name of the message's sender.
 MUSMsgHeaderString m_subject
          A single MUSMsgHeaderString object corresponding to the message's subject.
 int m_timeStamp
          Message timestamp.
 boolean m_udp
          UDP flag for this message.
 
Constructor Summary
MUSMessage()
          Default Constructor
MUSMessage(org.jboss.netty.buffer.ChannelBuffer buf)
          Constructor.
MUSMessage(MUSMessage msg)
          Constructor.
 
Method Summary
 void dump()
          Reserved for internal use of OpenSMUS.
protected  int extractInt(byte[] rawmsg, int offset)
           
 void extractMUSMessage(org.jboss.netty.buffer.ChannelBuffer buf)
          Reserved for internal use of OpenSMUS.
 org.jboss.netty.buffer.ChannelBuffer getBytes()
          Reserved for internal use of OpenSMUS.
 java.net.DatagramPacket toDatagramPacket(java.net.InetAddress addr, int port, boolean encrypted)
          Reserved for internal use of OpenSMUS.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_header

public static final byte[] m_header
Default MUS message header, included automatically with each message.


m_errCode

public int m_errCode
Message error code, represented as a MUSErrorCode type (for example MUSErrorCode.NoError)


m_timeStamp

public int m_timeStamp
Message timestamp. Usually set automatically by OpenSMUS's message dispatcher.


m_subject

public MUSMsgHeaderString m_subject
A single MUSMsgHeaderString object corresponding to the message's subject.


m_senderID

public MUSMsgHeaderString m_senderID
A single MUSMsgHeaderString object corresponding to the name of the message's sender.


m_recptID

public MUSMsgHeaderStringList m_recptID
A MUSMsgHeaderStringList object containing one or more MUSMsgHeaderStrings, each corresponding to one intended recipient for this message.


m_msgContent

public LValue m_msgContent
The content part of this message. Content is always one single LValue, but it may be a linear or property list including other LValues.


m_udp

public boolean m_udp
UDP flag for this message. When set to TRUE the dispatcher will attempt to deliver the message using the UDP connection channel.

Constructor Detail

MUSMessage

public MUSMessage()
Default Constructor


MUSMessage

public MUSMessage(org.jboss.netty.buffer.ChannelBuffer buf)
Constructor. Created a message from raw bytes.


MUSMessage

public MUSMessage(MUSMessage msg)
Constructor. Clones another message.

Method Detail

extractMUSMessage

public void extractMUSMessage(org.jboss.netty.buffer.ChannelBuffer buf)
Reserved for internal use of OpenSMUS.


extractInt

protected int extractInt(byte[] rawmsg,
                         int offset)

dump

public void dump()
Reserved for internal use of OpenSMUS.


toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getBytes

public org.jboss.netty.buffer.ChannelBuffer getBytes()
Reserved for internal use of OpenSMUS.


toDatagramPacket

public java.net.DatagramPacket toDatagramPacket(java.net.InetAddress addr,
                                                int port,
                                                boolean encrypted)
Reserved for internal use of OpenSMUS.