6 #include <pajlada/signals/signal.hpp> 7 #include <pajlada/signals/signalholder.hpp> 33 void sendMessage(
const QString &channelName,
const QString &message);
65 const QString &channelName) = 0;
76 const QString &channelName);
83 QMap<QString, std::weak_ptr<Channel>>
channels;
87 void initConnection();
96 QTimer reconnectTimer_;
97 int falloffCounter_ = 1;
99 std::mutex connectionMutex_;
102 pajlada::Signals::SignalHolder connections_;
104 bool initialized_{
false};
void addGlobalSystemMessage(const QString &messageText)
Definition: AbstractIrcServer.cpp:145
void open(ConnectionType type)
Definition: AbstractIrcServer.cpp:131
Definition: AbstractIrcServer.hpp:21
void addFakeMessage(const QString &data)
Definition: AbstractIrcServer.cpp:380
virtual void readConnectionMessageReceived(Communi::IrcMessage *message)
Definition: AbstractIrcServer.cpp:402
void sendRawMessage(const QString &rawMessage)
Definition: AbstractIrcServer.cpp:181
Definition: AbstractIrcServer.hpp:18
ConnectionType
Definition: AbstractIrcServer.hpp:21
void disconnect()
Definition: AbstractIrcServer.cpp:164
virtual void initializeConnectionSignals(IrcConnection *connection, ConnectionType type)
Definition: AbstractIrcServer.hpp:57
virtual void onWriteConnected(IrcConnection *connection)
Definition: AbstractIrcServer.cpp:342
virtual void onDisconnected()
Definition: AbstractIrcServer.cpp:347
virtual void onReadConnected(IrcConnection *connection)
Definition: AbstractIrcServer.cpp:292
Definition: Application.cpp:48
virtual void initializeConnection(IrcConnection *connection, ConnectionType type)=0
void sendMessage(const QString &channelName, const QString &message)
Definition: AbstractIrcServer.cpp:175
QMap< QString, std::weak_ptr< Channel > > channels
Definition: AbstractIrcServer.hpp:83
pajlada::Signals::NoArgSignal disconnected
Definition: AbstractIrcServer.hpp:43
virtual QString cleanChannelName(const QString &dirtyChannelName)
Definition: AbstractIrcServer.cpp:374
void connect()
Definition: AbstractIrcServer.cpp:114
virtual void writeConnectionMessageReceived(Communi::IrcMessage *message)
Definition: AbstractIrcServer.cpp:195
virtual bool hasSeparateWriteConnection() const =0
virtual std::shared_ptr< Channel > createChannel(const QString &channelName)=0
virtual std::shared_ptr< Channel > getCustomChannel(const QString &channelName)
Definition: AbstractIrcServer.cpp:367
ChannelPtr getChannelOrEmpty(const QString &dirtyChannelName)
Definition: AbstractIrcServer.cpp:251
Definition: AbstractIrcServer.hpp:21
Definition: IrcConnection2.hpp:12
virtual ~AbstractIrcServer()=default
ChannelPtr getOrAddChannel(const QString &dirtyChannelName)
Definition: AbstractIrcServer.cpp:201
void forEachChannel(std::function< void(ChannelPtr)> func)
Definition: AbstractIrcServer.cpp:407
virtual void privateMessageReceived(Communi::IrcPrivateMessage *message)
Definition: AbstractIrcServer.cpp:396
void initializeIrc()
Definition: AbstractIrcServer.cpp:94
std::unique_ptr< T, DeleteLater > QObjectPtr
Definition: Common.hpp:66
std::shared_ptr< Channel > ChannelPtr
Definition: Channel.hpp:125
std::mutex channelMutex
Definition: AbstractIrcServer.hpp:84
AbstractIrcServer()
Definition: AbstractIrcServer.cpp:22
pajlada::Signals::NoArgSignal connected
Definition: AbstractIrcServer.hpp:42
std::vector< std::weak_ptr< Channel > > getChannels()
Definition: AbstractIrcServer.cpp:279
Definition: AbstractIrcServer.hpp:21