diff options
author | Tim Cooper <tim.cooper@layeh.com> | 2015-08-12 04:51:14 +0300 |
---|---|---|
committer | Mikkel Krautz <mikkel@krautz.dk> | 2016-05-08 17:45:52 +0300 |
commit | 805c0477c1e631f4607a3a77783e8c2e581d69aa (patch) | |
tree | 14ab2119561ad8059629a053047fb9f61bcf13f8 /src/murmur/MurmurGRPCImpl.h | |
parent | 19537ac2184e32b86af73bbbdf95c4228b0072d3 (diff) |
grpc: implement TextMessageFilter
Diffstat (limited to 'src/murmur/MurmurGRPCImpl.h')
-rw-r--r-- | src/murmur/MurmurGRPCImpl.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/murmur/MurmurGRPCImpl.h b/src/murmur/MurmurGRPCImpl.h index f76ba716e..6dd6dcb17 100644 --- a/src/murmur/MurmurGRPCImpl.h +++ b/src/murmur/MurmurGRPCImpl.h @@ -56,6 +56,7 @@ class V1_ContextActionEvents; class V1_Events; class V1_ServerEvents; class V1_AuthenticatorStream; +class V1_TextMessageFilter; } } @@ -76,11 +77,17 @@ class MurmurRPCImpl : public QThread { // Listeners QHash<int, QMultiHash<QString, ::MurmurRPC::Wrapper::V1_ContextActionEvents *> > qhContextActionListeners; + QSet<::MurmurRPC::Wrapper::V1_Events *> qsMetaServiceListeners; + QMultiHash<int, ::MurmurRPC::Wrapper::V1_ServerEvents *> qmhServerServiceListeners; + QMutex qmAuthenticatorsLock; QHash<int, ::MurmurRPC::Wrapper::V1_AuthenticatorStream *> qhAuthenticators; + QMutex qmTextMessageFilterLock; + QHash<int, ::MurmurRPC::Wrapper::V1_TextMessageFilter *> qhTextMessageFilters; + QMap<int, QMap<unsigned int, QSet<QString> > > qmActiveContextActions; // server id -> session -> context action bool hasActiveContextAction(const ::Server *s, const ::User *u, const QString &action); void addActiveContextAction(const ::Server *s, const ::User *u, const QString &action); @@ -88,7 +95,8 @@ class MurmurRPCImpl : public QThread { void removeUserActiveContextActions(const ::Server *s, const ::User *u); void removeActiveContextActions(const ::Server *s); - void removeAuthenticator(const ::Server *); + void removeTextMessageFilter(const ::Server *s); + void removeAuthenticator(const ::Server *s); void sendMetaEvent(const ::MurmurRPC::Event &e); void sendServerEvent(const ::Server *s, const ::MurmurRPC::Server_Event &e); @@ -117,6 +125,8 @@ class MurmurRPCImpl : public QThread { void channelCreated(const Channel *channel); void channelRemoved(const Channel *channel); + void textMessageFilter(int &res, const User *user, MumbleProto::TextMessage &message); + void contextAction(const User *user, const QString &action, unsigned int session, int channel); }; |