net.kano.joscar.snaccmd.icbm
Class SendRvIcbm

java.lang.Object
  extended bySnacCommand
      extended byAbstractIcbm
          extended byAbstractRvIcbm
              extended bySendRvIcbm

public class SendRvIcbm
extends AbstractRvIcbm

A SNAC command used to send a rendezvous command to another user.

See Also:
RecvRvIcbm
Source of this SNAC:
AIM client
SNAC command type:
Family 0x04, command 0x06

Field Summary
 
Fields inherited from class AbstractRvIcbm
RVSTATUS_ACCEPT, RVSTATUS_DENY, RVSTATUS_REQUEST
 
Fields inherited from class AbstractIcbm
CHANNEL_CHAT, CHANNEL_IM, CHANNEL_RV
 
Fields inherited from class SnacCommand
SNACFLAG_DEFAULT
 
Constructor Summary
protected SendRvIcbm(SnacPacket packet)
          Generates a new send-rendezvous command from the given incoming SNAC packet.
  SendRvIcbm(java.lang.String sn, long icbmMessageId, int status, long rvSessionId, CapabilityBlock cap, LiveWritable rvDataWriter)
          Creates a new outgoing rendezvous command with the given properties.
  SendRvIcbm(java.lang.String sn, long icbmMessageId, long rvSessionId, RvCommand command)
          Creates a new outgoing rendezvous to the given user with the properties given by the given RvCommand.
 
Method Summary
 java.lang.String getScreenname()
          Returns the screenname of the user to whom this rendezvous is addressed.
protected  void writeChannelData(java.io.OutputStream out)
          Writes the channel-specific data for this ICBM command to the given output stream.
 
Methods inherited from class AbstractRvIcbm
getCapability, getRvData, getRvSessionId, getRvStatus, toString
 
Methods inherited from class AbstractIcbm
getChannel, getChannelData, getIcbmChannel, getIcbmMessageId, writeData
 
Methods inherited from class SnacCommand
getCommand, getFamily, getFlag1, getFlag2
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SendRvIcbm

protected SendRvIcbm(SnacPacket packet)
Generates a new send-rendezvous command from the given incoming SNAC packet.

Parameters:
packet - an incoming send-rendezvous packet

SendRvIcbm

public SendRvIcbm(java.lang.String sn,
                  long icbmMessageId,
                  int status,
                  long rvSessionId,
                  CapabilityBlock cap,
                  LiveWritable rvDataWriter)
Creates a new outgoing rendezvous command with the given properties.

Parameters:
sn - the screenname to whom to send this rendezvous
icbmMessageId - an ICBM message ID to attach to this command
status - a status code, like AbstractRvIcbm.RVSTATUS_REQUEST
rvSessionId - the ID of the rendezvous session on which this rendezvous is being sent
cap - the capability block associated with this rendezvous command
rvDataWriter - an object used to write the rendezvous-specific data to the connection

SendRvIcbm

public SendRvIcbm(java.lang.String sn,
                  long icbmMessageId,
                  long rvSessionId,
                  RvCommand command)
Creates a new outgoing rendezvous to the given user with the properties given by the given RvCommand.

Parameters:
sn - the screenname to whom this rendezvous command is being sent
icbmMessageId - an ICBM message ID for this RV ICBM
rvSessionId - a rendezvous session ID on which this rendezvous exists
command - a rendezvous command that will be used to create this rendezvous packet
Method Detail

getScreenname

public final java.lang.String getScreenname()
Returns the screenname of the user to whom this rendezvous is addressed.

Returns:
the receiver's screenname

writeChannelData

protected final void writeChannelData(java.io.OutputStream out)
                               throws java.io.IOException
Description copied from class: AbstractIcbm
Writes the channel-specific data for this ICBM command to the given output stream.

Specified by:
writeChannelData in class AbstractIcbm
Parameters:
out - the stream to write to
Throws:
java.io.IOException - if an I/O error occurs