bump to 1.0.0 and clean up spec file
[platform/upstream/libical.git] / src / libical / icalparameter_cxx.cpp
1 /* -*- Mode: C++ -*- */
2
3 /**
4  * @file    icalparameter_cxx.cpp
5  * @author  fnguyen (12/10/01)
6  * @brief   Implementation of C++ Wrapper for icalparameter.c
7  *
8  * (C) COPYRIGHT 2001, Critical Path
9
10  This program is free software; you can redistribute it and/or modify
11  it under the terms of either: 
12
13     The LGPL as published by the Free Software Foundation, version
14     2.1, available at: http://www.fsf.org/copyleft/lesser.html
15
16   Or:
17
18     The Mozilla Public License Version 1.0. You may obtain a copy of
19     the License at http://www.mozilla.org/MPL/
20  */
21
22 #ifndef ICALPARAMETER_CXX_H
23 #include "icalparameter_cxx.h"
24 #endif
25
26 #ifndef ICALVALUE_CXX_H
27 #include "icalvalue_cxx.h"
28 #endif
29
30 typedef char* string; // Will use the string library from STL
31
32 ICalParameter::ICalParameter() throw(icalerrorenum) : imp(icalparameter_new(ICAL_ANY_PARAMETER)){
33 }
34
35 ICalParameter::ICalParameter(const ICalParameter& v) throw(icalerrorenum) {
36         imp = icalparameter_new_clone(v.imp);
37         if (!imp) throw icalerrno;
38 }
39
40 ICalParameter& ICalParameter::operator=(const ICalParameter& v)  throw(icalerrorenum) {
41         if (this == &v) return *this;
42
43         if (imp != NULL)
44         {
45                 icalparameter_free(imp);
46                 imp = icalparameter_new_clone(v.imp);
47                 if (!imp) throw icalerrno;
48         }
49     
50         return *this;
51 }
52
53 ICalParameter::~ICalParameter(){
54         if (imp != NULL) icalparameter_free(imp);
55 }
56
57 ICalParameter::ICalParameter(icalparameter* v) throw(icalerrorenum) : imp(v){
58 }
59
60 /// Create from string of form "PARAMNAME=VALUE"
61 ICalParameter::ICalParameter(string str) throw(icalerrorenum) { 
62         imp = icalparameter_new_from_string(str);
63         if (!imp) throw icalerrno;
64 }
65
66 /// Create from just the value, the part after the "="
67 ICalParameter::ICalParameter(icalparameter_kind kind, string  str) throw(icalerrorenum) { 
68         imp = icalparameter_new_from_value_string(kind, str);
69         if (!imp) throw icalerrno;
70 }
71
72 ICalParameter::ICalParameter(icalparameter_kind kind) throw(icalerrorenum) {
73         imp = icalparameter_new(kind);
74         if (!imp) throw icalerrno;
75 }
76
77 string ICalParameter::as_ical_string() throw(icalerrorenum) {
78   char *str = icalparameter_as_ical_string(imp);
79
80   if (!str) throw icalerrno;
81
82   return str;
83 }
84
85 bool ICalParameter::is_valid(){
86         if (imp == NULL) return false;
87         return (icalparameter_isa_parameter((void*)imp) ? true : false);
88 }
89 icalparameter_kind ICalParameter::isa(){
90         return icalparameter_isa(imp);
91 }
92 int ICalParameter::isa_parameter(void* param){
93         return icalparameter_isa_parameter(param);
94 }
95
96 /* Acess the name of an X parameer */
97 void ICalParameter::set_xname(ICalParameter &param, string  v){
98         icalparameter_set_xname(param, v);
99 }
100 string ICalParameter::get_xname(ICalParameter &param){
101         return (string)icalparameter_get_xname(param);
102 }
103 void ICalParameter::set_xvalue (ICalParameter &param, string  v){
104         icalparameter_set_xvalue(param, v);
105 }
106 string ICalParameter::get_xvalue(ICalParameter &param){
107         return (string)icalparameter_get_xvalue(param);
108 }
109
110 /* Convert enumerations */
111 string ICalParameter::kind_to_string(icalparameter_kind kind){
112         return (string)icalparameter_kind_to_string(kind);
113 }
114 icalparameter_kind ICalParameter::string_to_kind(string  str){
115         return icalparameter_string_to_kind(str);
116 }
117
118 /* DELEGATED-FROM */
119 string ICalParameter::get_delegatedfrom(){
120         return (string)icalparameter_get_delegatedfrom(imp);
121 }
122 void ICalParameter::set_delegatedfrom(string  v){
123         icalparameter_set_delegatedfrom(imp, v);
124 }
125
126 /* RELATED */
127 icalparameter_related ICalParameter::get_related(){
128         return icalparameter_get_related(imp);
129 }
130 void ICalParameter::set_related(icalparameter_related v){
131         icalparameter_set_related(imp, v);
132 }
133
134 /* SENT-BY */
135 string ICalParameter::get_sentby(){
136         return (string)icalparameter_get_sentby(imp);
137 }
138 void ICalParameter::set_sentby(string  v){
139         icalparameter_set_sentby(imp, v);
140 }
141
142 /* LANGUAGE */
143 string ICalParameter::get_language(){
144         return (string)icalparameter_get_language(imp);
145 }
146 void ICalParameter::set_language(string  v){
147         icalparameter_set_language(imp, v);
148 }
149
150 /* RELTYPE */
151 icalparameter_reltype ICalParameter::get_reltype(){
152         return icalparameter_get_reltype(imp);
153 }
154 void ICalParameter::set_reltype(icalparameter_reltype v){
155         icalparameter_set_reltype(imp, v);
156 }
157
158 /* ENCODING */
159 icalparameter_encoding ICalParameter::get_encoding(){
160         return icalparameter_get_encoding(imp);
161 }
162 void ICalParameter::set_encoding(icalparameter_encoding v){
163         icalparameter_set_encoding(imp, v);
164 }
165
166 /* ALTREP */
167 string ICalParameter::get_altrep(){
168         return (string)icalparameter_get_language(imp);
169 }
170 void ICalParameter::set_altrep(string  v){
171         icalparameter_set_altrep(imp, v);
172 }
173
174 /* FMTTYPE */
175 string ICalParameter::get_fmttype(){
176         return (string)icalparameter_get_fmttype(imp);
177 }
178 void ICalParameter::set_fmttype(string  v){
179         icalparameter_set_fmttype(imp, v);
180 }
181
182 /* FBTYPE */
183 icalparameter_fbtype ICalParameter::get_fbtype(){
184         return icalparameter_get_fbtype(imp);
185 }
186 void ICalParameter::set_fbtype(icalparameter_fbtype v){
187         icalparameter_set_fbtype(imp, v);
188 }
189
190 /* RSVP */
191 icalparameter_rsvp ICalParameter::get_rsvp(){
192         return icalparameter_get_rsvp(imp);
193 }
194 void ICalParameter::set_rsvp(icalparameter_rsvp v){
195         icalparameter_set_rsvp(imp, v);
196 }
197
198 /* RANGE */
199 icalparameter_range ICalParameter::get_range(){
200         return icalparameter_get_range(imp);
201 }
202 void ICalParameter::set_range(icalparameter_range v){
203         icalparameter_set_range(imp, v);
204 }
205
206 /* DELEGATED-TO */
207 string ICalParameter::get_delegatedto(){
208         return (string)icalparameter_get_delegatedto(imp);
209 }
210 void ICalParameter::set_delegatedto(string  v){
211         icalparameter_set_delegatedto(imp, v);
212 }
213
214 /* CN */
215 string ICalParameter::get_cn(){
216         return (string)icalparameter_get_cn(imp);
217 }
218 void ICalParameter::set_cn(string  v){
219         icalparameter_set_cn(imp, v);
220 }
221
222 /* ROLE */
223 icalparameter_role ICalParameter::get_role(){
224         return icalparameter_get_role(imp);
225 }
226 void ICalParameter::set_role(icalparameter_role v){
227         icalparameter_set_role(imp, v);
228 }
229
230 /* X-LIC-COMPARETYPE */
231 icalparameter_xliccomparetype ICalParameter::get_xliccomparetype(){
232         return icalparameter_get_xliccomparetype(imp);
233 }
234 void ICalParameter::set_xliccomparetype(icalparameter_xliccomparetype v){
235         icalparameter_set_xliccomparetype(imp, v);
236 }
237
238 /* PARTSTAT */
239 icalparameter_partstat ICalParameter::get_partstat(){
240         return icalparameter_get_partstat(imp);
241 }
242 void ICalParameter::set_partstat(icalparameter_partstat v){
243         icalparameter_set_partstat(imp, v);
244 }
245
246 /* X-LIC-ERRORTYPE */
247 icalparameter_xlicerrortype ICalParameter::get_xlicerrortype(){
248         return icalparameter_get_xlicerrortype(imp);
249 }
250 void ICalParameter::set_xlicerrortype(icalparameter_xlicerrortype v){
251         icalparameter_set_xlicerrortype(imp, v);
252 }
253
254 /* MEMBER */
255 string ICalParameter::get_member(){
256         return (string)icalparameter_get_member(imp);
257 }
258 void ICalParameter::set_member(string  v){
259         icalparameter_set_member(imp, v);
260 }
261
262 /* X */
263 string ICalParameter::get_x(){
264         return (string)icalparameter_get_x(imp);
265 }
266 void ICalParameter::set_x(string  v){
267         icalparameter_set_x(imp, v);
268 }
269
270 /* CUTYPE */
271 icalparameter_cutype ICalParameter::get_cutype(){
272         return icalparameter_get_cutype(imp);
273 }
274 void ICalParameter::set_cutype(icalparameter_cutype v){
275         icalparameter_set_cutype(imp, v);
276 }
277
278 /* TZID */
279 string ICalParameter::get_tzid(){
280         return (string)icalparameter_get_tzid(imp);
281 }
282 void ICalParameter::set_tzid(string  v){
283         icalparameter_set_tzid(imp, v);
284 }
285
286 /* VALUE */
287 icalparameter_value ICalParameter::get_value(){
288         return icalparameter_get_value(imp);
289 }
290 void ICalParameter::set_value(icalparameter_value v){
291         icalparameter_set_value(imp, v);
292 }
293
294 /* DIR */
295 string ICalParameter::get_dir(){
296         return (string)icalparameter_get_dir(imp);
297 }
298 void ICalParameter::set_dir(string  v){
299         icalparameter_set_dir(imp, v);
300 }