+++ /dev/null
-// ConnectionObject.h - ConnectionObject interface
-//
-// (c) 2012-2015 Xestia Software Development.
-//
-// This file is part of Xestia Address Book.
-//
-// Xestia Address Book is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by the
-// Free Software Foundation, version 3 of the license.
-//
-// Xestia Address Book is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with Xestia Address Book. If not, see <http://www.gnu.org/licenses/>
-
-#include "ConnectionObject.h"
-
-using namespace std;
-
-/*ConnectionObject::ConnectionObject(string ServerAddress, int ServerPort, string ServerUser, string ServerPass, bool ServerSSL) :
- ServerAddress(ServerAddress), ServerPort(ServerPort), ServerUser(ServerUser), ServerPass(ServerPass), ServerSSL(ServerSSL){
-
- TestMode = true;
- this->SetupConnectionObject();
-
-}
-
-ConnectionObject::ConnectionObject(string ServerAddress, int ServerPort, string ServerUser, string ServerPass, bool ServerSSL, string ServerPrefix, string ServerAccount) :
- ServerAddress(ServerAddress), ServerPort(ServerPort), ServerUser(ServerUser), ServerPass(ServerPass), ServerSSL(ServerSSL), ServerPrefix(ServerPrefix), ServerAccount(ServerAccount){
-
- TestMode = false;
- this->SetupConnectionObject();
-
-}*/
// Virtual functions to be setup by the inheriting classes.
- virtual void SetupConnectionObject() {};
+ virtual void SetupConnectionObject() = 0;
- virtual bool IsTaskCompleted() { return false; };
+ virtual bool IsTaskCompleted() = 0;
- virtual COConnectResult Connect(bool DoAuthentication) { COConnectResult x; return x; };
- virtual void BypassSSLVerification(bool EnableBypass) {};
+ virtual COConnectResult Connect(bool DoAuthentication) = 0;
+ virtual void BypassSSLVerification(bool EnableBypass) = 0;
- virtual COServerResponse GetDefaultPrefix(std::string *ServerPrefix) { COServerResponse x; return x; };
- virtual COServerResponse AddContact(std::string Location, std::string Data) { COServerResponse x; return x; };
- virtual COServerResponse EditContact(std::string Location, std::string Data) { COServerResponse x; return x; };
- virtual COServerResponse DeleteContact(std::string Location) { COServerResponse x; return x; };
- virtual COServerResponse GetServerEntityTagValue(std::string Location) { COServerResponse x; return x; };
- virtual COServerResponse GetContact(std::string Location, std::string *PageData) { COServerResponse x; return x; };
- virtual COContactList GetContactList(std::string SyncToken) { COContactList x; return x; };
+ virtual COServerResponse GetDefaultPrefix(std::string *ServerPrefix) = 0;
+ virtual COServerResponse AddContact(std::string Location, std::string Data) = 0;
+ virtual COServerResponse EditContact(std::string Location, std::string Data) = 0;
+ virtual COServerResponse DeleteContact(std::string Location) = 0;
+ virtual COServerResponse GetServerEntityTagValue(std::string Location) = 0;
+ virtual COServerResponse GetContact(std::string Location, std::string *PageData) = 0;
+ virtual COContactList GetContactList(std::string SyncToken) = 0;
- virtual bool CanDoProcessing() { return false; };
- virtual bool CanDoSSL() { return false; };
- virtual COSSLVerified SSLVerify() { COSSLVerified x; return x; };
- virtual bool AbleToLogin() { return false; };
- virtual bool HasValidResponse() { return false; };
- virtual bool IsSelfSigned() { return false; };
- virtual std::string GetErrorMessage() { return ""; };
+ virtual bool CanDoProcessing() = 0;
+ virtual bool CanDoSSL() = 0;
+ virtual COSSLVerified SSLVerify() = 0;
+ virtual bool AbleToLogin() = 0;
+ virtual bool HasValidResponse() = 0;
+ virtual bool IsSelfSigned() = 0;
+ virtual std::string GetErrorMessage() = 0;
// OS specific functions.
#if defined(__APPLE__)
- virtual SecTrustRef BuildSSLCollection() { return nullptr; };
+ virtual SecTrustRef BuildSSLCollection() = 0;
#elif defined(__WIN32__)
- virtual PCCERT_CONTEXT BuildSSLCollection() { return nullptr; };
+ virtual PCCERT_CONTEXT BuildSSLCollection() = 0;
#else
- virtual SSLCertCollectionString BuildSSLCollection() {};
+ virtual SSLCertCollectionString BuildSSLCollection() = 0;
#endif