X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2Fconnobject%2FConnectionObject.h;h=8e5221f246de60bf2ffb49a534d4e6805803939c;hp=24f357f63e9eeee953035806f970f73c7760e7fc;hb=a578ed436123242f807cb59eae02fcf6c22e2458;hpb=2c8998278759b5bf6fc3bcf75afd289c214b6c84 diff --git a/source/connobject/ConnectionObject.h b/source/connobject/ConnectionObject.h index 24f357f..8e5221f 100644 --- a/source/connobject/ConnectionObject.h +++ b/source/connobject/ConnectionObject.h @@ -24,6 +24,16 @@ #include #include "../common/sslcertstructs.h" +#if defined (__WIN32__) +#include +#include +#include +#include +#include +#include +#include +#endif + enum COConnectResult { COCONNECT_UNITTESTFAIL = -1, COCONNECT_OK, @@ -80,39 +90,42 @@ class ConnectionObject{ public: ConnectionObject(std::string ServerAddress, int ServerPort, std::string ServerUser, std::string ServerPass, bool ServerSSL); ConnectionObject(std::string ServerAddress, int ServerPort, std::string ServerUser, std::string ServerPass, bool ServerSSL, std::string ServerPrefix, std::string ServerAccount); - + // Virtual functions to be setup by the inheriting classes. - virtual void SetupConnectionObject() { }; + virtual void SetupConnectionObject() = 0; //virtual ~ConnectionObject() {}; - virtual bool IsTaskCompleted() {}; + virtual bool IsTaskCompleted() = 0; - virtual COConnectResult Connect(bool DoAuthentication) {}; - virtual void BypassSSLVerification(bool EnableBypass) {}; + virtual COConnectResult Connect(bool DoAuthentication) = 0; + virtual void BypassSSLVerification(bool EnableBypass) = 0; - virtual COServerResponse GetDefaultPrefix(std::string *ServerPrefix) {}; - virtual COServerResponse AddContact(std::string Location, std::string Data) {}; - virtual COServerResponse EditContact(std::string Location, std::string Data) {}; - virtual COServerResponse DeleteContact(std::string Location) {}; - virtual COServerResponse GetServerEntityTagValue(std::string Location) {}; - virtual COServerResponse GetContact(std::string Location, std::string *PageData) {}; - virtual COContactList GetContactList(std::string SyncToken) {}; + 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() {}; - virtual bool CanDoSSL() {}; - virtual COSSLVerified SSLVerify() {}; - virtual bool AbleToLogin() {}; - virtual bool HasValidResponse() {}; - virtual bool IsSelfSigned() {}; - virtual std::string GetErrorMessage() {}; + 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__) #elif defined(__WIN32__) + + virtual PCCERT_CONTEXT BuildSSLCollection() = 0; + #else - virtual SSLCertCollectionString BuildSSLCollection() {}; + virtual SSLCertCollectionString BuildSSLCollection() = 0; #endif