Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Initial work started on using ConnectionObject on Win32 systems
[xestiaab/.git] / source / carddav2 / carddav2.h
index 0c41fdb..fd1212c 100644 (file)
 #include "../connobject/ConnectionObject.h"
 #include "../version.h"
 #include "../common/sslcertstructs.h"
+#include "../common/dirs.h"
 
 #include <curl/curl.h>
 #include <wx/tokenzr.h>
+#include <wx/file.h>
 #include <libxml/parser.h>
 #include <libxml/tree.h>
 
@@ -36,7 +38,7 @@ class CardDAV2 : public ConnectionObject {
        public:
        
                using ConnectionObject::ConnectionObject;
-       
+
                // Destructor.
        
                ~CardDAV2();
@@ -52,9 +54,9 @@ class CardDAV2 : public ConnectionObject {
                COServerResponse GetDefaultPrefix(std::string *ServerPrefix);
                COServerResponse AddContact(std::string Location, std::string Data);
                COServerResponse EditContact(std::string Location, std::string Data);
-               COServerResponse DeleteContact(std::string Location, std::string EntityTag);
+               COServerResponse DeleteContact(std::string Location);
                COServerResponse GetServerEntityTagValue(std::string Location);
-               COServerResponse GetContact(std::string Location);
+               COServerResponse GetContact(std::string Location, std::string *ContactData);
                COContactList GetContactList(std::string SyncToken);
        
                bool CanDoProcessing();
@@ -69,6 +71,9 @@ class CardDAV2 : public ConnectionObject {
 
 #if defined(__APPLE__)
 #elif defined(__WIN32__)
+
+               PCCERT_CONTEXT BuildSSLCollection();
+
 #else
                SSLCertCollectionString BuildSSLCollection();
 
@@ -81,6 +86,7 @@ class CardDAV2 : public ConnectionObject {
                
                CURL *ConnectionSession = nullptr;
                CURLcode SessionResult = CURLE_OK;
+               struct curl_slist *HeaderList = nullptr;
        
                void SetupDefaultParametersNonSSL(bool DoAuthentication);
                void SetupDefaultParametersSSL(bool DoAuthentication);
@@ -95,13 +101,19 @@ class CardDAV2 : public ConnectionObject {
                std::string BuildURL(std::string URI);
                void ResetResults();
                std::vector<std::string> GetDAVHeader();
+               std::string GetETagHeader();
+               std::string GetETagValue();
        
                std::string GetUserPrincipalURI();
                std::string GetAddressBookHomeURI();
                std::string GetDefaultAddressBookURI();
+               void ProcessContactData(COContactList *ContactList);
        
 #if defined(__APPLE__)
 #elif defined(__WIN32__)
+
+               PCCERT_CONTEXT CertificateData;
+
 #else
                bool EnableSSLBypass = false;
 #endif
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy