create interface

This commit is contained in:
2023-11-29 11:53:20 +01:00
parent e8cb3ab9b9
commit 847393cec3
9 changed files with 148 additions and 1 deletions

View File

@ -0,0 +1,16 @@
#ifndef ISTOMPOBSERVER_H
#define ISTOMPOBSERVER_H
#include <QString>
namespace interface {
class iStompObserver {
virtual void connectConfirmation(bool success, int version);
virtual void sendConfirmation(bool success);
virtual void subscribeConfirmation(bool success);
virtual void receiveIndication(int id, QString destination, QString body);
virtual void disconnectConfirmation();
virtual void disconnectIndication();
};
}
#endif // ISTOMPOBSERVER_H

29
interface/iStompSubject.h Normal file
View File

@ -0,0 +1,29 @@
#ifndef ISTOMPSUBJECT_H
#define ISTOMPSUBJECT_H
#include "iStompObserver.h"
#include <QString>
namespace interface {
class iStompSubject {
public:
virtual bool subscribe(iStompObserver* obs);
virtual void unsubscribe(iStompObserver* obs);
virtual void connectRequest(QString host, int port, QString vhost, QString username, QString password);
virtual void sendRequest(QString destination, QString body);
virtual void subscribeRequest(QString destination, int id);
virtual void disconnectRequest();
protected:
virtual void notifyConnectConfirmation(bool success, int version);
virtual void notifySendConfirmation(bool success);
virtual void notifySubscribeConfirmation(bool success);
virtual void notifyReceiveIndication(int id, QString destination, QString body);
virtual void notifyDisconnectConfirmation();
virtual void notifyDisconnectIndication();
};
} // namespace
#endif // ISTOMPSUBJECT_H