summaryrefslogtreecommitdiff
path: root/noncore/net/opieirc/ircsession.cpp
Unidiff
Diffstat (limited to 'noncore/net/opieirc/ircsession.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opieirc/ircsession.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/noncore/net/opieirc/ircsession.cpp b/noncore/net/opieirc/ircsession.cpp
index b81038f..89df68c 100644
--- a/noncore/net/opieirc/ircsession.cpp
+++ b/noncore/net/opieirc/ircsession.cpp
@@ -1,38 +1,42 @@
1#include "ircsession.h" 1#include "ircsession.h"
2#include "ircmessageparser.h" 2#include "ircmessageparser.h"
3#include "ircversion.h" 3#include "ircversion.h"
4 4
5IRCSession::IRCSession(IRCServer *server) { 5IRCSession::IRCSession(IRCServer *server) {
6 m_server = server; 6 m_server = server;
7 m_connection = new IRCConnection(m_server); 7 m_connection = new IRCConnection(m_server);
8 m_parser = new IRCMessageParser(this); 8 m_parser = new IRCMessageParser(this);
9 connect(m_connection, SIGNAL(messageArrived(IRCMessage *)), this, SLOT(handleMessage(IRCMessage *))); 9 connect(m_connection, SIGNAL(messageArrived(IRCMessage *)), this, SLOT(handleMessage(IRCMessage *)));
10 connect(m_parser, SIGNAL(outputReady(IRCOutput)), this, SIGNAL(outputReady(IRCOutput))); 10 connect(m_parser, SIGNAL(outputReady(IRCOutput)), this, SIGNAL(outputReady(IRCOutput)));
11 connect(m_connection, SIGNAL(outputReady(IRCOutput)), this, SIGNAL(outputReady(IRCOutput))); 11 connect(m_connection, SIGNAL(outputReady(IRCOutput)), this, SIGNAL(outputReady(IRCOutput)));
12} 12}
13 13
14IRCSession::~IRCSession() { 14IRCSession::~IRCSession() {
15 /* We want this to get deleted automatically */
16 m_channels.setAutoDelete(TRUE);
17 m_people.setAutoDelete(TRUE);
18
15 delete m_parser; 19 delete m_parser;
16 delete m_connection; 20 delete m_connection;
17} 21}
18 22
19void IRCSession::beginSession() { 23void IRCSession::beginSession() {
20 m_connection->doConnect(); 24 m_connection->doConnect();
21} 25}
22 26
23void IRCSession::join(QString channelname) { 27void IRCSession::join(QString channelname) {
24 m_connection->sendLine("JOIN "+channelname); 28 m_connection->sendLine("JOIN "+channelname);
25} 29}
26 30
27void IRCSession::sendMessage(IRCPerson *person, QString message) { 31void IRCSession::sendMessage(IRCPerson *person, QString message) {
28 m_connection->sendLine("PRIVMSG " + person->nick() + " :" + message); 32 m_connection->sendLine("PRIVMSG " + person->nick() + " :" + message);
29} 33}
30 34
31void IRCSession::sendMessage(IRCChannel *channel, QString message) { 35void IRCSession::sendMessage(IRCChannel *channel, QString message) {
32 m_connection->sendLine("PRIVMSG " + channel->channelname() + " :" + message); 36 m_connection->sendLine("PRIVMSG " + channel->channelname() + " :" + message);
33} 37}
34 38
35bool IRCSession::isSessionActive() { 39bool IRCSession::isSessionActive() {
36 return m_connection->isConnected(); 40 return m_connection->isConnected();
37} 41}
38 42