#ifndef STOMP_H #define STOMP_H #include #include "interface/iStompSubject.h" #include #include "stompframe.h" #define MAX_OBSERVER 5 class Stomp : public QObject, public interface::iStompSubject{ public: Stomp(); ~Stomp(); // iStompSubject interface public: bool subscribe(interface::iStompObserver* obs); void unsubscribe(interface::iStompObserver* obs); int connectRequest(QString host, int port, QString vhost, QString username, QString password); void sendRequest(QString destination, const QByteArray& body); void subscribeRequest(QString destination, int id); void disconnectRequest(); protected: void notifyConnectConfirmation(bool success, QString version); void notifySendConfirmation(bool success); void notifySubscribeConfirmation(bool success); void notifyReceiveIndication(int id, QString destination, QString body); void notifyDisconnectConfirmation(); void notifyDisconnectIndication(); protected: interface::iStompObserver* observer_[MAX_OBSERVER]; private: QSslSocket socket_; QString host_ = "sdi.hevs.ch"; QString vHost_ = "/"; int port_ = 61614; QString user_ = "sdi10"; QString password_ = "809c02f36becb0868da98761fe3209f6"; }; #endif // STOMP_H