Libical API Documentation 4.0 STABLE VERSION [Visit the v3.0 documentation]
Loading...
Searching...
No Matches
icalparameter_cxx.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2001, Critical Path
3 * SPDX-License-Identifier: LGPL-2.1-only OR MPL-2.0
4 */
5
11
12#include "icalparameter_cxx.hpp"
13
14extern "C" {
15#include "icalerror_p.h"
16}
17
18#include <string>
19#include <vector>
20
21using namespace LibICal;
22
27
29 : imp(icalparameter_clone(v.imp))
30{
31 if (imp == NULL) {
32 throw icalerrno;
33 }
34}
35
37{
38 if (this == &v) {
39 return *this;
40 }
41
43 imp = NULL;
44
45 imp = icalparameter_clone(v.imp);
46 if (imp == NULL) {
47 throw icalerrno;
48 }
49
50 return *this;
51}
52
54{
55 imp = NULL;
56}
57
62
67
70{
71 if (imp == NULL) {
72 throw icalerrno;
73 }
74}
75
78{
79 if (imp == NULL) {
80 throw icalerrno;
81 }
82}
83
86{
87 if (imp == NULL) {
88 throw icalerrno;
89 }
90}
91
93{
94 const char *str = icalparameter_as_ical_string(imp);
95
96 if (str == NULL) {
97 throw icalerrno;
98 }
99
100 return str;
101}
102
104{
105 if (imp == NULL) {
106 return false;
107 }
108 return icalparameter_isa_parameter(static_cast<void *>(imp));
109}
110
115
116/* cppcheck-suppress functionStatic */
117bool ICalParameter::isa_parameter(void *param) //NOLINT(readability-convert-member-functions-to-static)
118{
119 return icalparameter_isa_parameter(param);
120}
121
122/* Access the name of an X parameter */
123/* cppcheck-suppress constParameterReference */
124void ICalParameter::set_xname(ICalParameter &param, const std::string &v)
125{
126 icalparameter_set_xname(param, v.c_str());
127}
128
129/* cppcheck-suppress constParameterReference */
131{
132 return static_cast<std::string>(icalparameter_get_xname(param));
133}
134
135/* cppcheck-suppress constParameterReference */
136void ICalParameter::set_xvalue(ICalParameter &param, const std::string &v)
137{
138 icalparameter_set_xvalue(param, v.c_str());
139}
140
141/* cppcheck-suppress constParameterReference */
143{
144 return static_cast<std::string>(icalparameter_get_xvalue(param));
145}
146
147/* Convert enumerations */
149{
150 return static_cast<std::string>(icalparameter_kind_to_string(kind));
151}
152
157
158/* DELEGATED-FROM */
159std::vector<std::string> ICalParameter::get_delegatedfrom() const
160{
161 std::vector<std::string> vals;
162 icalstrarray *c_vals = icalparameter_get_delegatedfrom(imp);
163 if (c_vals != NULL) {
164 for (size_t i = 0; i < icalstrarray_size(c_vals); ++i) {
165 vals.push_back(std::string(icalstrarray_element_at(c_vals, i)));
166 }
167 }
168 return vals;
169}
170
171void ICalParameter::set_delegatedfrom(const std::vector<std::string> &v)
172{
173 icalstrarray *c_vals = icalstrarray_new(v.size());
174 for (size_t i = 0; i < v.size(); i++) {
175 icalstrarray_append(c_vals, v[i].c_str());
176 }
178}
179
180/* RELATED */
185
190
191/* SENT-BY */
192std::string ICalParameter::get_sentby() const
193{
194 return static_cast<std::string>(icalparameter_get_sentby(imp));
195}
196
197void ICalParameter::set_sentby(const std::string &v)
198{
199 icalparameter_set_sentby(imp, v.c_str());
200}
201
202/* LANGUAGE */
204{
205 return static_cast<std::string>(icalparameter_get_language(imp));
206}
207
208void ICalParameter::set_language(const std::string &v)
209{
210 icalparameter_set_language(imp, v.c_str());
211}
212
213/* RELTYPE */
218
223
224/* ENCODING */
229
234
235/* ALTREP */
236std::string ICalParameter::get_altrep() const
237{
238 return static_cast<std::string>(icalparameter_get_language(imp));
239}
240
241void ICalParameter::set_altrep(const std::string &v)
242{
243 icalparameter_set_altrep(imp, v.c_str());
244}
245
246/* FMTTYPE */
247std::string ICalParameter::get_fmttype() const
248{
249 return static_cast<std::string>(icalparameter_get_fmttype(imp));
250}
251
252void ICalParameter::set_fmttype(const std::string &v)
253{
254 icalparameter_set_fmttype(imp, v.c_str());
255}
256
257/* FBTYPE */
262
267
268/* RSVP */
273
278
279/* RANGE */
284
289
290/* DELEGATED-TO */
291std::vector<std::string> ICalParameter::get_delegatedto() const
292{
293 std::vector<std::string> vals;
294 icalstrarray *c_vals = icalparameter_get_delegatedto(imp);
295 if (c_vals != NULL) {
296 for (size_t i = 0; i < icalstrarray_size(c_vals); ++i) {
297 vals.push_back(std::string(icalstrarray_element_at(c_vals, i)));
298 }
299 }
300 return vals;
301}
302
303void ICalParameter::set_delegatedto(const std::vector<std::string> &v)
304{
305 icalstrarray *c_vals = icalstrarray_new(v.size());
306 for (size_t i = 0; i < v.size(); i++) {
307 icalstrarray_append(c_vals, v[i].c_str());
308 }
310}
311
312/* CN */
313std::string ICalParameter::get_cn() const
314{
315 return static_cast<std::string>(icalparameter_get_cn(imp));
316}
317
318void ICalParameter::set_cn(const std::string &v)
319{
320 icalparameter_set_cn(imp, v.c_str());
321}
322
323/* ROLE */
328
333
334/* X-LIC-COMPARETYPE */
339
344
345/* PARTSTAT */
350
355
356/* X-LIC-ERRORTYPE */
361
366
367/* MEMBER */
368std::vector<std::string> ICalParameter::get_member() const
369{
370 std::vector<std::string> vals;
371 icalstrarray *c_vals = icalparameter_get_member(imp);
372 if (c_vals != NULL) {
373 for (size_t i = 0; i < icalstrarray_size(c_vals); ++i) {
374 vals.push_back(std::string(icalstrarray_element_at(c_vals, i)));
375 }
376 }
377 return vals;
378}
379
380void ICalParameter::set_member(const std::vector<std::string> &v)
381{
382 icalstrarray *c_vals = icalstrarray_new(v.size());
383 for (size_t i = 0; i < v.size(); i++) {
384 icalstrarray_append(c_vals, v[i].c_str());
385 }
386 icalparameter_set_member(imp, c_vals);
387}
388
389/* X */
390std::string ICalParameter::get_x() const
391{
392 return static_cast<std::string>(icalparameter_get_x(imp));
393}
394
395void ICalParameter::set_x(const std::string &v)
396{
397 icalparameter_set_x(imp, v.c_str());
398}
399
400/* CUTYPE */
405
410
411/* TZID */
412std::string ICalParameter::get_tzid() const
413{
414 return static_cast<std::string>(icalparameter_get_tzid(imp));
415}
416
417void ICalParameter::set_tzid(const std::string &v)
418{
419 icalparameter_set_tzid(imp, v.c_str());
420}
421
422/* VALUE */
427
432
433/* DIR */
434std::string ICalParameter::get_dir() const
435{
436 return static_cast<std::string>(icalparameter_get_dir(imp));
437}
438
439void ICalParameter::set_dir(const std::string &v)
440{
441 icalparameter_set_dir(imp, v.c_str());
442}
void set_delegatedfrom(const std::vector< std::string > &v)
void set_reltype(const icalparameter_reltype &v)
void set_altrep(const std::string &v)
std::string get_altrep() const
icalparameter_kind isa()
void set_cn(const std::string &v)
void set_member(const std::vector< std::string > &v)
static icalparameter_kind string_to_kind(const std::string &str)
std::string get_tzid() const
icalparameter_value get_value() const
icalparameter_role get_role() const
void set_rsvp(const icalparameter_rsvp &v)
std::string get_dir() const
void set_sentby(const std::string &v)
icalparameter_xlicerrortype get_xlicerrortype() const
void set_fmttype(const std::string &v)
icalparameter_reltype get_reltype() const
icalparameter_related get_related() const
icalparameter_encoding get_encoding() const
icalparameter_xliccomparetype get_xliccomparetype() const
icalparameter_rsvp get_rsvp() const
static std::string get_xname(ICalParameter &param)
static std::string kind_to_string(const icalparameter_kind &kind)
void set_related(const icalparameter_related &v)
icalparameter_range get_range() const
std::vector< std::string > get_delegatedto() const
std::vector< std::string > get_delegatedfrom() const
icalparameter_cutype get_cutype() const
void set_xliccomparetype(const icalparameter_xliccomparetype &v)
icalparameter_fbtype get_fbtype() const
static std::string get_xvalue(ICalParameter &param)
void set_language(const std::string &v)
void set_x(const std::string &v)
void set_tzid(const std::string &v)
void set_delegatedto(const std::vector< std::string > &v)
static void set_xvalue(ICalParameter &param, const std::string &v)
void set_fbtype(const icalparameter_fbtype &v)
std::string get_language() const
void set_range(const icalparameter_range &v)
void set_cutype(const icalparameter_cutype &v)
void set_role(const icalparameter_role &v)
void set_partstat(const icalparameter_partstat &v)
std::vector< std::string > get_member() const
icalparameter_partstat get_partstat() const
void set_value(const icalparameter_value &v)
static void set_xname(ICalParameter &param, const std::string &v)
void set_encoding(const icalparameter_encoding &v)
std::string get_sentby() const
std::string get_fmttype() const
std::string get_x() const
ICalParameter & operator=(const ICalParameter &)
std::string get_cn() const
void set_dir(const std::string &v)
bool isa_parameter(void *param)
void set_xlicerrortype(const icalparameter_xlicerrortype &v)
icalparameter_xliccomparetype icalparameter_get_xliccomparetype(const icalparameter *value)
icalparameter_range icalparameter_get_range(const icalparameter *value)
icalstrarray * icalparameter_get_member(const icalparameter *value)
icalparameter_encoding
icalparameter_xlicerrortype icalparameter_get_xlicerrortype(const icalparameter *value)
void icalparameter_set_altrep(icalparameter *value, const char *v)
void icalparameter_set_dir(icalparameter *value, const char *v)
icalparameter_encoding icalparameter_get_encoding(const icalparameter *value)
icalparameter_kind
@ ICAL_ANY_PARAMETER
void icalparameter_set_cn(icalparameter *value, const char *v)
void icalparameter_set_encoding(icalparameter *value, icalparameter_encoding v)
void icalparameter_set_cutype(icalparameter *value, icalparameter_cutype v)
icalstrarray * icalparameter_get_delegatedfrom(const icalparameter *value)
icalparameter_fbtype icalparameter_get_fbtype(const icalparameter *value)
void icalparameter_set_sentby(icalparameter *value, const char *v)
icalparameter_related
icalparameter_value
void icalparameter_set_partstat(icalparameter *value, icalparameter_partstat v)
void icalparameter_set_related(icalparameter *value, icalparameter_related v)
const char * icalparameter_get_fmttype(const icalparameter *value)
icalparameter_rsvp icalparameter_get_rsvp(const icalparameter *value)
void icalparameter_set_reltype(icalparameter *value, icalparameter_reltype v)
const char * icalparameter_get_sentby(const icalparameter *value)
void icalparameter_set_delegatedfrom(icalparameter *value, icalstrarray *v)
icalparameter_value icalparameter_get_value(const icalparameter *value)
icalparameter_range
void icalparameter_set_language(icalparameter *value, const char *v)
void icalparameter_set_x(icalparameter *value, const char *v)
void icalparameter_set_tzid(icalparameter *value, const char *v)
void icalparameter_set_fmttype(icalparameter *value, const char *v)
const char * icalparameter_get_language(const icalparameter *value)
void icalparameter_set_role(icalparameter *value, icalparameter_role v)
void icalparameter_set_member(icalparameter *value, icalstrarray *v)
icalparameter_fbtype
icalparameter_partstat
icalparameter_cutype icalparameter_get_cutype(const icalparameter *value)
void icalparameter_set_xlicerrortype(icalparameter *value, icalparameter_xlicerrortype v)
icalstrarray * icalparameter_get_delegatedto(const icalparameter *value)
void icalparameter_set_fbtype(icalparameter *value, icalparameter_fbtype v)
icalparameter_reltype icalparameter_get_reltype(const icalparameter *value)
void icalparameter_set_delegatedto(icalparameter *value, icalstrarray *v)
icalparameter_role icalparameter_get_role(const icalparameter *value)
icalparameter_reltype
const char * icalparameter_get_tzid(const icalparameter *value)
struct icalparameter_impl icalparameter
icalparameter_related icalparameter_get_related(const icalparameter *value)
const char * icalparameter_get_cn(const icalparameter *value)
void icalparameter_set_xliccomparetype(icalparameter *value, icalparameter_xliccomparetype v)
icalparameter_xliccomparetype
icalparameter_partstat icalparameter_get_partstat(const icalparameter *value)
const char * icalparameter_get_dir(const icalparameter *value)
void icalparameter_set_rsvp(icalparameter *value, icalparameter_rsvp v)
icalparameter_cutype
void icalparameter_set_value(icalparameter *value, icalparameter_value v)
const char * icalparameter_get_x(const icalparameter *value)
void icalparameter_set_range(icalparameter *value, icalparameter_range v)
icalparameter_xlicerrortype
enum icalrequeststatus kind
Definition icalenums.c:26
const char * str
Definition icalenums.c:29
#define icalerrno
Access the current icalerrno value.
Definition icalerror.h:133
bool icalparameter_isa_parameter(void *parameter)
void icalparameter_free(icalparameter *param)
Frees an icalparameter object.
const char * icalparameter_get_xvalue(const icalparameter *param)
Returns the X-value of param.
icalparameter * icalparameter_new(icalparameter_kind kind)
Creates new icalparameter object.
void icalparameter_set_xname(icalparameter *param, const char *v)
Sets the X-name of param to v.
icalparameter * icalparameter_new_from_string(const char *str)
Creates new icalparameter object from string.
const char * icalparameter_get_xname(const icalparameter *param)
Returns the X-name of param.
icalparameter_kind icalparameter_isa(const icalparameter *parameter)
icalparameter * icalparameter_clone(const icalparameter *old)
Creates new icalparameter as a clone of the given one.
void icalparameter_set_xvalue(icalparameter *param, const char *v)
Sets the X-value of param to v.
char * icalparameter_as_ical_string(icalparameter *param)
Converts icalparameter into a string representation.
icalparameter_kind icalparameter_string_to_kind(const char *string)
Returns the icalparameter_kind for a given string.
const char * icalparameter_kind_to_string(icalparameter_kind kind)
Returns a string representing the given icalparameter_kind.
icalparameter * icalparameter_new_from_value_string(icalparameter_kind kind, const char *value)
Creates new icalparameter of a given kind with a given value.
Definition of C++ Wrapper for icalparameter.c.
const char * icalstrarray_element_at(icalstrarray *array, size_t position)
Accesses a string stored in the array.
void icalstrarray_append(icalstrarray *array, const char *elem)
Appends a string to the array.
size_t icalstrarray_size(const icalstrarray *array)
Indicates the count of strings stored in the array.
#define icalstrarray_new(increment_size)
Creates a new icalstrarray object.