f00f.net.irc.martyr.commands
Class PartCommand

java.lang.Object
  extended by f00f.net.irc.martyr.commands.AbstractInCommand
      extended by f00f.net.irc.martyr.commands.AbstractCommand
          extended by f00f.net.irc.martyr.commands.PartCommand
All Implemented Interfaces:
Command, InCommand, OutCommand

public class PartCommand
extends AbstractCommand

Defines PART command. If the part command is from us, we should remove that channel from the list of channels. If the part command is from someone else, we should remove that user from the list of users for that channel.


Field Summary
 
Fields inherited from class f00f.net.irc.martyr.commands.AbstractInCommand
attributes
 
Constructor Summary
PartCommand()
          For use as a factory
PartCommand(FullNick user, java.lang.String channel, java.lang.String reason)
          For use as an incoming command.
PartCommand(java.lang.String channel)
          For use as an outgoing command.
PartCommand(java.lang.String channel, java.lang.String reason)
          For use as an outgoing command.
 
Method Summary
 java.lang.String getChannel()
           
 java.lang.String getIrcIdentifier()
          Returns the string IRC uses to identify this command.
 java.lang.String getReason()
           
 FullNick getUser()
           
 InCommand parse(java.lang.String prefix, java.lang.String identifier, java.lang.String params)
          Parses a string and produces a formed command object, if it can.
 java.lang.String renderParams()
          Renders the parameters of this command.
 boolean updateClientState(ClientState state)
          Takes client state action.
 
Methods inherited from class f00f.net.irc.martyr.commands.AbstractCommand
render
 
Methods inherited from class f00f.net.irc.martyr.commands.AbstractInCommand
getAttribute, getAttributeKeys, getIntParameter, getParameter, getSourceString, getState, selfRegister, setAttribute, setSourceString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PartCommand

public PartCommand()
For use as a factory


PartCommand

public PartCommand(FullNick user,
                   java.lang.String channel,
                   java.lang.String reason)
For use as an incoming command.

Parameters:
user - User that is parting
channel - Channel that the user is parting from
reason - Reason for part

PartCommand

public PartCommand(java.lang.String channel,
                   java.lang.String reason)
For use as an outgoing command.

Parameters:
channel - Channel that we are parting from
reason - Reason we are parting

PartCommand

public PartCommand(java.lang.String channel)
For use as an outgoing command. Part with no reason.

Parameters:
channel - Channel that we are parting from
Method Detail

parse

public InCommand parse(java.lang.String prefix,
                       java.lang.String identifier,
                       java.lang.String params)
Description copied from class: AbstractInCommand
Parses a string and produces a formed command object, if it can. Should return null if it cannot form the command object.

Specified by:
parse in interface InCommand
Specified by:
parse in class AbstractInCommand
Parameters:
prefix - Prefix of the command
identifier - ID of the command
params - Parameters of the command
Returns:
InCommand instance for parsed command

getIrcIdentifier

public java.lang.String getIrcIdentifier()
Description copied from interface: Command
Returns the string IRC uses to identify this command. Examples: NICK, PING, KILL, 332. Not strictly required for OutCommands as the irc identifier is expected to be part of the reder() result.

Returns:
The IRC identifier string

renderParams

public java.lang.String renderParams()
Description copied from class: AbstractCommand
Renders the parameters of this command.

Specified by:
renderParams in class AbstractCommand
Returns:
String of rendered parameters

getReason

public java.lang.String getReason()

getChannel

public java.lang.String getChannel()

getUser

public FullNick getUser()

updateClientState

public boolean updateClientState(ClientState state)
Takes client state action. If we are parting, then remove that channel from our list of channels. If someone else is parting, remove them from the channel they are parting from.

Specified by:
updateClientState in interface InCommand
Overrides:
updateClientState in class AbstractInCommand
Parameters:
state - Client state to be updated
Returns:
True or false if changes were made


Copyright © 2000-2007 Ben Damm, Daniel Henninger, et al.