00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __CCOMPONENTDETAILS__H_
00025 #define __CCOMPONENTDETAILS__H_
00026
00027
00028 #include <iostream>
00029 #include <vector>
00030 #include <string>
00031 #include <map>
00032 #include <sys/socket.h>
00033 #include <sys/ioctl.h>
00034 #include <net/if.h>
00035 #include "CComponent.h"
00036 using namespace std;
00037 #ifndef _QRESULT__
00038 #define _QRESULT__
00039 typedef struct _QueryResult QueryResult;
00040
00041 struct _QueryResult {
00042 public:
00043 char **pResult;
00044 int iRow;
00045 int iColumn;
00046 };
00047 #endif
00048
00049
00050 class COrganizer;
00051 class CAttendee;
00052 class COrganizer;
00053 class CAttendee;
00054 class CParameters;
00055 class CCalendarDB;
00056 class CProperties;
00057
00058
00065 class CComponentDetails:public CComponent {
00066
00067 public:
00068
00069
00070 CComponentDetails();
00071
00072
00073 CComponentDetails(string description);
00074
00075
00076 CComponentDetails(string summary, int tododue, int status);
00077
00078
00079 CComponentDetails(string summary, string description, string location, int dateStart,
00080 int dateEnd);
00081
00082 void initEvent();
00083
00087 CComponentDetails(CComponentDetails & ref);
00088
00092 const CComponentDetails & operator=(const CComponentDetails & right);
00093
00100 bool setClas(string szClas);
00101
00108 string getClas();
00109
00116 bool setDateStamp(int iDateStamp);
00117
00124 int getDateStamp();
00125
00132 bool setOrganizer(COrganizer *pOrg);
00133
00140 COrganizer *getOrganizer();
00141
00148 void removeOrganizer();
00149
00156 bool setAttendees(vector < CAttendee * > vAttendeeList);
00157
00164 vector < CAttendee * >getAttendees();
00165
00172 void removeAttendees();
00173
00181 bool setAttachments(vector < string > vAttachList);
00182
00189 vector < string >getAttachments();
00190
00197 bool setSequence(int iSequence);
00198
00205 int getSequence();
00206
00213 bool setUid(int iUId);
00214
00221 int getUid();
00222
00229 bool setUrl(string szUrl);
00230
00237 string getUrl();
00238
00245 bool setCategories(string szCategories);
00246
00253 string getCategories();
00254
00261 bool setComments(string szComments);
00262
00269 string getComments();
00270
00277 bool setContact(string szContact);
00278
00285 string getContact();
00286
00293 bool setRelated(string szRelated);
00294
00301 string getRelated();
00302
00309 bool setResources(string szResources);
00310
00317 string getResources();
00325 vector <CAttendee *> retrieveAttendeeDetails();
00334 COrganizer* retrieveOrganizerDetails();
00335
00342 bool setXProperties(vector < CProperties* >);
00343
00350 vector < CProperties* > getXProperties();
00351
00358 void removeXProperties();
00359
00362 virtual ~ CComponentDetails();
00363
00370 map<string,vector <CParameters*> > getHashMap();
00371
00380 bool setHashMap(map<string, vector <CParameters*> > hashMap);
00381
00388 void removeHashMap();
00389
00398 map< string, vector < CParameters* > > retrieveParameterDetails();
00399 map < string,vector < CParameters* > > retrieveXParameterDetails();
00400
00401
00408 vector < CParameters* > getParameter(QueryResult *pQr);
00418 vector < CProperties* > retrieveXPropertyDetails();
00426 vector<string> getPropertyValues( string szProperty);
00433 CAttendee* convertParamToAttendee(vector<CParameters*> vParam);
00443 vector <CParameters*> getParameter(string szPropName,string szPropValue);
00450 COrganizer* convertParamToOrganizer(vector<CParameters*> vParam);
00454 string toString();
00455
00456
00457
00458 private:
00459
00460
00468 void copyHashMap(map<string, vector <CParameters*> > hashMap);
00469
00470
00471 private:
00472
00473
00474
00475 int iDateStamp;
00477 COrganizer *pOrganizer;
00479
00480
00481 vector < string >vAttachments;
00483 vector < CAttendee *>vAttendee;
00485 int iSequence;
00487 int iUId;
00489 string szUrl;
00491 string szCategory;
00493 string szComments;
00495 string szContacts;
00497 string szRelated;
00499 string szResources;
00501 vector <CProperties*> vXProp;
00503 string szClas;
00505 map< string, vector <CParameters*> > hashMap;
00506
00507
00508 };
00509
00510 #endif