Segmentation fault

This commit is contained in:
2023-12-26 18:10:52 +01:00
parent ac7411aa58
commit 2418aafa97
5 changed files with 101 additions and 20 deletions

View File

@@ -1,9 +1,12 @@
#include "stomp.h"
Stomp::Stomp() {
for(int i = 0; i< MAX_OBSERVER; i++) {
observer_[i] = nullptr;
}
socket_.setPeerVerifyMode(QSslSocket::VerifyNone);
QObject::connect(&socket_, &QSslSocket::readyRead, [&] {
auto frame = STOMPFrame::receive(socket_);
STOMPFrame frame = STOMPFrame::receive(socket_);
switch(frame.command()) {
case STOMPFrame::CONNECTED:
@@ -13,6 +16,7 @@ Stomp::Stomp() {
break;
case STOMPFrame::MESSAGE:
notifyReceiveIndication(1, frame.headers().value("destination"), frame.body());
qDebug() << "Message" << Qt::endl;
break;
@@ -104,26 +108,50 @@ void Stomp::disconnectRequest() {
}
void Stomp::notifyConnectConfirmation(bool success, QString version) {
for(int i = 0; i < MAX_OBSERVER; i++) {
if (observer_[i] != nullptr){
observer_[i]->connectConfirmation(success, version);
}
}
}
void Stomp::notifySendConfirmation(bool success) {
for(int i = 0; i < MAX_OBSERVER; i++) {
if (observer_[i] != nullptr){
observer_[i]->sendConfirmation(success);
}
}
}
void Stomp::notifySubscribeConfirmation(bool success) {
for(int i = 0; i < MAX_OBSERVER; i++) {
if (observer_[i] != nullptr){
observer_[i]->subscribeConfirmation(success);
}
}
}
void Stomp::notifyReceiveIndication(int id, QString destination, QString body) {
for(int i = 0; i < MAX_OBSERVER; i++) {
if (observer_[i] != nullptr){
observer_[i]->receiveIndication(id, destination, body);
}
}
}
void Stomp::notifyDisconnectConfirmation() {
for(int i = 0; i < MAX_OBSERVER; i++) {
if (observer_[i] != nullptr){
observer_[i]->disconnectConfirmation();
}
}
}
void Stomp::notifyDisconnectIndication() {
for(int i = 0; i < MAX_OBSERVER; i++) {
if (observer_[i] != nullptr){
observer_[i]->disconnectIndication();
}
}
}