src/include/common/vocl/iCalendar/iCalProperty.h

00001 /*
00002  * Funambol is a mobile platform developed by Funambol, Inc. 
00003  * Copyright (C) 2003 - 2007 Funambol, Inc.
00004  * 
00005  * This program is free software; you can redistribute it and/or modify it under
00006  * the terms of the GNU Affero General Public License version 3 as published by
00007  * the Free Software Foundation with the addition of the following permission 
00008  * added to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED
00009  * WORK IN WHICH THE COPYRIGHT IS OWNED BY FUNAMBOL, FUNAMBOL DISCLAIMS THE 
00010  * WARRANTY OF NON INFRINGEMENT  OF THIRD PARTY RIGHTS.
00011  * 
00012  * This program is distributed in the hope that it will be useful, but WITHOUT
00013  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00014  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
00015  * details.
00016  * 
00017  * You should have received a copy of the GNU Affero General Public License 
00018  * along with this program; if not, see http://www.gnu.org/licenses or write to
00019  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
00020  * MA 02110-1301 USA.
00021  * 
00022  * You can contact Funambol, Inc. headquarters at 643 Bair Island Road, Suite 
00023  * 305, Redwood City, CA 94063, USA, or at email address info@funambol.com.
00024  * 
00025  * The interactive user interfaces in modified source and object code versions
00026  * of this program must display Appropriate Legal Notices, as required under
00027  * Section 5 of the GNU Affero General Public License version 3.
00028  * 
00029  * In accordance with Section 7(b) of the GNU Affero General Public License
00030  * version 3, these Appropriate Legal Notices must retain the display of the
00031  * "Powered by Funambol" logo. If the display of the logo is not reasonably 
00032  * feasible for technical reasons, the Appropriate Legal Notices must display
00033  * the words "Powered by Funambol".
00034  */
00035 
00036 
00037 #ifndef INCL_ICALENDAR_PROPERTY
00038 #define INCL_ICALENDAR_PROPERTY
00039 
00041 #include "base/fscapi.h"
00042 #include "base/util/ArrayList.h"
00043 
00044 class iCalProperty : public ArrayElement {
00045 
00046 private:
00047     WCHAR* altre;         //Alternate text representation
00048     WCHAR* cn;            //Common name
00049     WCHAR* cutype;        //Calendar user type
00050     WCHAR* delegatedFrom; //Delegator
00051     WCHAR* delegatedTo;   //Delegatee
00052     WCHAR* dir;           //Directory entry
00053     WCHAR* encoding;      //Inline encoding
00054     WCHAR* formattype;    //Format type
00055     WCHAR* fbtype;        //free-busy type
00056     WCHAR* language;      //Language for text
00057     WCHAR* member;        //Group or list membership
00058     WCHAR* partstat;      //Participation status
00059     WCHAR* range;         //Recurrence identifier range
00060     WCHAR* trigrel;       //Alarm trigger relationship
00061     WCHAR* related;       //Relationship type
00062     WCHAR* role;          //Participation role
00063     WCHAR* rsvp;          //RSVP expectation
00064     WCHAR* sentby;        //Sent by
00065     WCHAR* tzid;          //Reference to time zone object
00066     WCHAR* valuetype;     //Property value data type
00067     WCHAR* value;         //the value of property
00068     ArrayList* xParams;
00069 
00070     void set(WCHAR** property, WCHAR* v);
00071 
00072 public:
00073     iCalProperty (WCHAR* v = NULL);
00074     ~iCalProperty();
00075 
00076     // ---------------------------------------------------------- Public methods
00077 
00078     WCHAR* getAltre (WCHAR* buf = NULL, int size = -1);
00079     WCHAR* getCn (WCHAR* buf = NULL, int size = -1);
00080     WCHAR* getCutype (WCHAR* buf = NULL, int size = -1);
00081     WCHAR* getDelegatedFrom (WCHAR* buf = NULL, int size = -1);
00082     WCHAR* getDelegatedTo (WCHAR* buf = NULL, int size = -1);
00083     WCHAR* getDir (WCHAR* buf = NULL, int size = -1);
00084     WCHAR* getEncoding (WCHAR* buf = NULL, int size = -1);
00085     WCHAR* getFormatType (WCHAR* buf = NULL, int size = -1);
00086     WCHAR* getFbType (WCHAR* buf = NULL, int size = -1);
00087     WCHAR* getLanguage (WCHAR* buf = NULL, int size = -1);
00088     WCHAR* getMember (WCHAR* buf = NULL, int size = -1);
00089     WCHAR* getPartStat (WCHAR* buf = NULL, int size = -1);
00090     WCHAR* getRange (WCHAR* buf = NULL, int size = -1);
00091     WCHAR* getTrigRel (WCHAR* buf = NULL, int size = -1);
00092     WCHAR* getRelated (WCHAR* buf = NULL, int size = -1);
00093     WCHAR* getRole (WCHAR* buf = NULL, int size = -1);
00094     WCHAR* getRsvp (WCHAR* buf = NULL, int size = -1);
00095     WCHAR* getSentBy (WCHAR* buf = NULL, int size = -1);
00096     WCHAR* getTzID (WCHAR* buf = NULL, int size = -1);
00097     WCHAR* getValueType (WCHAR* buf = NULL, int size = -1);
00098     WCHAR* getValue (WCHAR* buf = NULL, int size = -1);
00099     ArrayList* getXParam();
00100 
00101     void setAltre (WCHAR* v);
00102     void setCn (WCHAR* v);
00103     void setCutype (WCHAR* v);
00104     void setDelegatedFrom (WCHAR* v);
00105     void setDelegatedTo (WCHAR* v);
00106     void setDir (WCHAR* v);
00107     void setEncoding (WCHAR* v);
00108     void setFormatType (WCHAR* v);
00109     void setFbType (WCHAR* v);
00110     void setLanguage (WCHAR* v);
00111     void setMember (WCHAR* v);
00112     void setPartStat (WCHAR* v);
00113     void setRange (WCHAR* v);
00114     void setTrigRel (WCHAR* v);
00115     void setRelated (WCHAR* v);
00116     void setRole (WCHAR* v);
00117     void setRsvp (WCHAR* v);
00118     void setSentBy (WCHAR* v);
00119     void setTzID (WCHAR* v);
00120     void setValueType (WCHAR* v);
00121     void setValue (WCHAR* v);
00122     void setXParam(ArrayList& list);
00123 
00124     ArrayElement* clone();
00125 };
00126 
00128 #endif

Generated on Mon Feb 4 09:50:48 2008 for Funambol Outlook Plug-in Library by  doxygen 1.5.2