X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fobjects%2FCalDAV%2FCalDAV.h;h=da3b58c2205130d294c6d96f4d50de1b590ddade;hb=18117cb75689beaa9f5e96e44c3e0ea00fe1fa0a;hp=d52754165707734407340d7ae94fffa0f96b2d41;hpb=ea9eaed7642efe480c3c79944d2f771f2ef51d54;p=xestiacalendar%2F.git diff --git a/source/objects/CalDAV/CalDAV.h b/source/objects/CalDAV/CalDAV.h index d527541..da3b58c 100644 --- a/source/objects/CalDAV/CalDAV.h +++ b/source/objects/CalDAV/CalDAV.h @@ -20,6 +20,8 @@ #define __OBJECTS_CALDAV_CALDAV_H__ #include +#include +#include #include #include #include @@ -37,6 +39,10 @@ enum CalDAVQueryResult { CALDAVQUERYRESULT_SERVERERROR }; +struct CalDAVCalendarList { + +}; + struct CalDAVConnectionData{ string Hostname = ""; @@ -90,21 +96,40 @@ struct CalDAVServerResult{ }; +// CalDAVSendData: used for +// sending data to the CaLDAV +// server. + +struct CalDAVSendData{ + string *readptr; + long sizeleft; + int seek = 0; +}; + class CalDAV{ private: + string ProcessXMLUserPrincipal(); + bool MatchXMLName(xmlNodePtr *NodePtr, string NodeName); + string FetchXMLData(xmlNodePtr *NodePtr); + CalDAVConnectionData ConnectionData; + CalDAVServerResult ConnectionServerResult; CURL *ConnectionHandle = nullptr; string ServerData = ""; string ServerHeader = ""; public: + CalDAV(); + ~CalDAV(); void SetupConnectionData(CalDAVConnectionData *ConnData); CalDAVStatus GetConnectionData(); CalDAVServerResult Connect(); + CalDAVServerResult GetServerResult(); CalDAVServerSupport GetServerSupport(); - CalDAV(); - ~CalDAV(); + CalDAVCalendarList GetCalendars(); + + string GetUserPrincipal(); };