+bool Client::isConnected() { return connectedToCore; }
+
+void Client::connectToCore(const VarMap &conn) {
+ // TODO implement SSL
+ if(isConnected()) {
+ qDebug() << "Already connected to core!";
+ return;
+ }
+ if(conn["Host"].toString().isEmpty()) {
+ clientMode = LocalCore;
+ syncToCore(); // TODO send user and pw from conn info
+ } else {
+ clientMode = RemoteCore;
+ socket.connectToHost(conn["Host"].toString(), conn["Port"].toUInt());
+ }
+}
+
+void Client::disconnectFromCore() {
+ if(clientMode == RemoteCore) {
+ socket.close();
+ } else {
+ disconnectFromLocalCore();
+ coreDisconnected();
+ }
+ // TODO clear internal data
+}
+