uk.org.ownage.dmdirc.parser
Class ProcessMessage

java.lang.Object
  extended by uk.org.ownage.dmdirc.parser.IRCProcessor
      extended by uk.org.ownage.dmdirc.parser.ProcessMessage

public class ProcessMessage
extends IRCProcessor

Process PRIVMSGs and NOTICEs. This horrible handles PRIVMSGs and NOTICES
This inclues CTCPs and CTCPReplies
It handles all 3 targets (Channel, Private, Unknown)
Actions are handled here aswell separately from CTCPs.
Each type has 5 Calls, making 15 callbacks handled here.


Field Summary
 
Fields inherited from class uk.org.ownage.dmdirc.parser.IRCProcessor
myManager, myParser
 
Constructor Summary
protected ProcessMessage(IRCParser parser, ProcessingManager manager)
          Create a new instance of the IRCProcessor Object
 
Method Summary
protected  boolean callChannelAction(ChannelInfo cChannel, ChannelClientInfo cChannelClient, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the ChannelAction Callback.
protected  boolean callChannelCTCP(ChannelInfo cChannel, ChannelClientInfo cChannelClient, java.lang.String sType, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the ChannelCTCP Callback.
protected  boolean callChannelCTCPReply(ChannelInfo cChannel, ChannelClientInfo cChannelClient, java.lang.String sType, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the ChannelCTCPReply Callback.
protected  boolean callChannelMessage(ChannelInfo cChannel, ChannelClientInfo cChannelClient, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the ChannelMessage Callback.
protected  boolean callChannelNotice(ChannelInfo cChannel, ChannelClientInfo cChannelClient, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the ChannelNotice Callback.
protected  boolean callPrivateAction(java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the PrivateAction Callback.
protected  boolean callPrivateCTCP(java.lang.String sType, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the PrivateCTCP Callback.
protected  boolean callPrivateCTCPReply(java.lang.String sType, java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the PrivateCTCPReply Callback.
protected  boolean callPrivateMessage(java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the PrivateMessage Callback.
protected  boolean callPrivateNotice(java.lang.String sMessage, java.lang.String sHost)
          Callback to all objects implementing the PrivateNotice Callback.
protected  boolean callUnknownAction(java.lang.String sMessage, java.lang.String sTarget, java.lang.String sHost)
          Callback to all objects implementing the UnknownAction Callback.
protected  boolean callUnknownCTCP(java.lang.String sType, java.lang.String sMessage, java.lang.String sTarget, java.lang.String sHost)
          Callback to all objects implementing the UnknownCTCP Callback.
protected  boolean callUnknownCTCPReply(java.lang.String sType, java.lang.String sMessage, java.lang.String sTarget, java.lang.String sHost)
          Callback to all objects implementing the UnknownCTCPReply Callback.
protected  boolean callUnknownMessage(java.lang.String sMessage, java.lang.String sTarget, java.lang.String sHost)
          Callback to all objects implementing the UnknownMessage Callback.
protected  boolean callUnknownNotice(java.lang.String sMessage, java.lang.String sTarget, java.lang.String sHost)
          Callback to all objects implementing the UnknownNotice Callback.
 java.lang.String[] handles()
          What does this IRCProcessor handle.
 void process(java.lang.String sParam, java.lang.String[] token)
          Process PRIVMSGs and NOTICEs.
 
Methods inherited from class uk.org.ownage.dmdirc.parser.IRCProcessor
callDebugInfo, callDebugInfo, callErrorInfo, getCallbackManager, getChannelInfo, getClientInfo, getLowerName, getName, getSvnInfo, isValidChannelName, sendString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ProcessMessage

protected ProcessMessage(IRCParser parser,
                         ProcessingManager manager)
Create a new instance of the IRCProcessor Object

Parameters:
parser - IRCParser That owns this IRCProcessor
manager - ProcessingManager that is in charge of this IRCProcessor
Method Detail

process

public void process(java.lang.String sParam,
                    java.lang.String[] token)
Process PRIVMSGs and NOTICEs. This horrible thing handles PRIVMSGs and NOTICES
This inclues CTCPs and CTCPReplies
It handles all 3 targets (Channel, Private, Unknown)
Actions are handled here aswell separately from CTCPs.
Each type has 5 Calls, making 15 callbacks handled here.

Specified by:
process in class IRCProcessor
Parameters:
sParam - Type of line to process ("NOTICE", "PRIVMSG")
token - IRCTokenised line to process

callChannelAction

protected boolean callChannelAction(ChannelInfo cChannel,
                                    ChannelClientInfo cChannelClient,
                                    java.lang.String sMessage,
                                    java.lang.String sHost)
Callback to all objects implementing the ChannelAction Callback.

Parameters:
cChannel - Channel where the action was sent to
cChannelClient - ChannelClient who sent the action (may be null if server)
sMessage - action contents
sHost - Hostname of sender (or servername)
See Also:
IChannelAction

callChannelCTCP

protected boolean callChannelCTCP(ChannelInfo cChannel,
                                  ChannelClientInfo cChannelClient,
                                  java.lang.String sType,
                                  java.lang.String sMessage,
                                  java.lang.String sHost)
Callback to all objects implementing the ChannelCTCP Callback.

Parameters:
cChannel - Channel where CTCP was sent
cChannelClient - ChannelClient who sent the message (may be null if server)
sType - Type of CTCP (VERSION, TIME etc)
sMessage - Additional contents
sHost - Hostname of sender (or servername)
See Also:
IChannelCTCP

callChannelCTCPReply

protected boolean callChannelCTCPReply(ChannelInfo cChannel,
                                       ChannelClientInfo cChannelClient,
                                       java.lang.String sType,
                                       java.lang.String sMessage,
                                       java.lang.String sHost)
Callback to all objects implementing the ChannelCTCPReply Callback.

Parameters:
cChannel - Channel where CTCPReply was sent
cChannelClient - ChannelClient who sent the message (may be null if server)
sType - Type of CTCPRReply (VERSION, TIME etc)
sMessage - Reply Contents
sHost - Hostname of sender (or servername)
See Also:
IChannelCTCPReply

callChannelMessage

protected boolean callChannelMessage(ChannelInfo cChannel,
                                     ChannelClientInfo cChannelClient,
                                     java.lang.String sMessage,
                                     java.lang.String sHost)
Callback to all objects implementing the ChannelMessage Callback.

Parameters:
cChannel - Channel where the message was sent to
cChannelClient - ChannelClient who sent the message (may be null if server)
sMessage - Message contents
sHost - Hostname of sender (or servername)
See Also:
IChannelMessage

callChannelNotice

protected boolean callChannelNotice(ChannelInfo cChannel,
                                    ChannelClientInfo cChannelClient,
                                    java.lang.String sMessage,
                                    java.lang.String sHost)
Callback to all objects implementing the ChannelNotice Callback.

Parameters:
cChannel - Channel where the notice was sent to
cChannelClient - ChannelClient who sent the notice (may be null if server)
sMessage - notice contents
sHost - Hostname of sender (or servername)
See Also:
IChannelNotice

callPrivateAction

protected boolean callPrivateAction(java.lang.String sMessage,
                                    java.lang.String sHost)
Callback to all objects implementing the PrivateAction Callback.

Parameters:
sMessage - action contents
sHost - Hostname of sender (or servername)
See Also:
IPrivateAction

callPrivateCTCP

protected boolean callPrivateCTCP(java.lang.String sType,
                                  java.lang.String sMessage,
                                  java.lang.String sHost)
Callback to all objects implementing the PrivateCTCP Callback.

Parameters:
sType - Type of CTCP (VERSION, TIME etc)
sMessage - Additional contents
sHost - Hostname of sender (or servername)
See Also:
IPrivateCTCP

callPrivateCTCPReply

protected boolean callPrivateCTCPReply(java.lang.String sType,
                                       java.lang.String sMessage,
                                       java.lang.String sHost)
Callback to all objects implementing the PrivateCTCPReply Callback.

Parameters:
sType - Type of CTCPRReply (VERSION, TIME etc)
sMessage - Reply Contents
sHost - Hostname of sender (or servername)
See Also:
IPrivateCTCPReply

callPrivateMessage

protected boolean callPrivateMessage(java.lang.String sMessage,
                                     java.lang.String sHost)
Callback to all objects implementing the PrivateMessage Callback.

Parameters:
sMessage - Message contents
sHost - Hostname of sender (or servername)
See Also:
IPrivateMessage

callPrivateNotice

protected boolean callPrivateNotice(java.lang.String sMessage,
                                    java.lang.String sHost)
Callback to all objects implementing the PrivateNotice Callback.

Parameters:
sMessage - Notice contents
sHost - Hostname of sender (or servername)
See Also:
IPrivateNotice

callUnknownAction

protected boolean callUnknownAction(java.lang.String sMessage,
                                    java.lang.String sTarget,
                                    java.lang.String sHost)
Callback to all objects implementing the UnknownAction Callback.

Parameters:
sMessage - Action contents
sTarget - Actual target of action
sHost - Hostname of sender (or servername)
See Also:
IUnknownAction

callUnknownCTCP

protected boolean callUnknownCTCP(java.lang.String sType,
                                  java.lang.String sMessage,
                                  java.lang.String sTarget,
                                  java.lang.String sHost)
Callback to all objects implementing the UnknownCTCP Callback.

Parameters:
sType - Type of CTCP (VERSION, TIME etc)
sMessage - Additional contents
sTarget - Actual Target of CTCP
sHost - Hostname of sender (or servername)
See Also:
IUnknownCTCP

callUnknownCTCPReply

protected boolean callUnknownCTCPReply(java.lang.String sType,
                                       java.lang.String sMessage,
                                       java.lang.String sTarget,
                                       java.lang.String sHost)
Callback to all objects implementing the UnknownCTCPReply Callback.

Parameters:
sType - Type of CTCPRReply (VERSION, TIME etc)
sMessage - Reply Contents
sTarget - Actual Target of CTCPReply
sHost - Hostname of sender (or servername)
See Also:
IUnknownCTCPReply

callUnknownMessage

protected boolean callUnknownMessage(java.lang.String sMessage,
                                     java.lang.String sTarget,
                                     java.lang.String sHost)
Callback to all objects implementing the UnknownMessage Callback.

Parameters:
sMessage - Message contents
sTarget - Actual target of message
sHost - Hostname of sender (or servername)
See Also:
IUnknownMessage

callUnknownNotice

protected boolean callUnknownNotice(java.lang.String sMessage,
                                    java.lang.String sTarget,
                                    java.lang.String sHost)
Callback to all objects implementing the UnknownNotice Callback.

Parameters:
sMessage - Notice contents
sTarget - Actual target of notice
sHost - Hostname of sender (or servername)
See Also:
IUnknownNotice

handles

public java.lang.String[] handles()
What does this IRCProcessor handle.

Specified by:
handles in class IRCProcessor
Returns:
String[] with the names of the tokens we handle.