File: e-folder-exchange.h

package info (click to toggle)
evolution-data-server 1.6.3-5etch3
  • links: PTS
  • area: main
  • in suites: etch
  • size: 59,384 kB
  • ctags: 43,218
  • sloc: ansic: 319,315; tcl: 30,499; xml: 19,166; sh: 18,776; perl: 11,529; cpp: 8,259; java: 7,653; makefile: 6,448; awk: 1,338; yacc: 1,103; sed: 772; cs: 505; lex: 134; asm: 14
file content (158 lines) | stat: -rw-r--r-- 5,271 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
/* Copyright (C) 2001-2004 Novell, Inc. */

#ifndef __E_FOLDER_EXCHANGE_H__
#define __E_FOLDER_EXCHANGE_H__

#include "e-folder.h"
#include "exchange-types.h"
#include "e2k-context.h"

#ifdef __cplusplus
extern "C" {
#pragma }
#endif /* __cplusplus */

#define E_TYPE_FOLDER_EXCHANGE            (e_folder_exchange_get_type ())
#define E_FOLDER_EXCHANGE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_FOLDER_EXCHANGE, EFolderExchange))
#define E_FOLDER_EXCHANGE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_FOLDER_EXCHANGE, EFolderExchangeClass))
#define E_IS_FOLDER_EXCHANGE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_FOLDER_EXCHANGE))
#define E_IS_FOLDER_EXCHANGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_FOLDER_EXCHANGE))

struct _EFolderExchange {
	EFolder parent;

	EFolderExchangePrivate *priv;
};

struct _EFolderExchangeClass {
	EFolderClass parent_class;

};

GType       e_folder_exchange_get_type      (void);

EFolder    *e_folder_exchange_new           (ExchangeHierarchy     *hier,
					     const char            *name,
					     const char            *type,
					     const char            *outlook_class,
					     const char            *phys_uri,
					     const char            *int_uri);

EFolder    *e_folder_exchange_new_from_file (ExchangeHierarchy     *hier,
					     const char            *filename);
gboolean    e_folder_exchange_save_to_file  (EFolder               *folder,
					     const char            *filename);


const char *e_folder_exchange_get_internal_uri     (EFolder    *folder);
void        e_folder_exchange_set_internal_uri     (EFolder    *folder,
						    const char *internal_uri);

const char *e_folder_exchange_get_path             (EFolder    *folder);

const char *e_folder_exchange_get_permanent_uri    (EFolder    *folder);
void        e_folder_exchange_set_permanent_uri    (EFolder    *folder,
						    const char *permanent_uri);

long long int 	e_folder_exchange_get_folder_size (EFolder *folder);
void 		e_folder_exchange_set_folder_size (EFolder *folder, long long int folder_size);

gboolean    e_folder_exchange_get_has_subfolders   (EFolder    *folder);
void        e_folder_exchange_set_has_subfolders   (EFolder    *folder,
						    gboolean   has_subfolders);

const char *e_folder_exchange_get_outlook_class    (EFolder    *folder);

char       *e_folder_exchange_get_storage_file     (EFolder    *folder,
						    const char *filename);

ExchangeHierarchy *e_folder_exchange_get_hierarchy (EFolder    *folder);


/* E2kContext wrappers */
E2kHTTPStatus  e_folder_exchange_propfind          (EFolder *folder,
						    E2kOperation *op,
						    const char **props,
						    int nprops,
						    E2kResult **results,
						    int *nresults);
E2kResultIter *e_folder_exchange_bpropfind_start   (EFolder *folder,
						    E2kOperation *op,
						    const char **hrefs,
						    int nhrefs,
						    const char **props,
						    int nprops);

E2kResultIter *e_folder_exchange_search_start      (EFolder *folder,
						    E2kOperation *op,
						    const char **props,
						    int nprops,
						    E2kRestriction *rn,
						    const char *orderby,
						    gboolean ascending);

void           e_folder_exchange_subscribe         (EFolder *folder,
						    E2kContextChangeType,
						    int min_interval,
						    E2kContextChangeCallback,
						    gpointer user_data);
void           e_folder_exchange_unsubscribe       (EFolder *folder);


E2kResultIter *e_folder_exchange_transfer_start    (EFolder *source,
						    E2kOperation *op,
						    EFolder *dest,
						    GPtrArray *source_hrefs,
						    gboolean delete_originals);

E2kHTTPStatus  e_folder_exchange_put_new           (EFolder *folder,
						    E2kOperation *op,
						    const char *object_name,
						    E2kContextTestCallback,
						    gpointer user_data,
						    const char *content_type,
						    const char *body,
						    int length,
						    char **location,
						    char **repl_uid);

E2kHTTPStatus  e_folder_exchange_proppatch_new     (EFolder *folder,
						    E2kOperation *op,
						    const char *object_name,
						    E2kContextTestCallback,
						    gpointer user_data,
						    E2kProperties *props,
						    char **location,
						    char **repl_uid);

E2kResultIter *e_folder_exchange_bproppatch_start  (EFolder *folder,
						    E2kOperation *op,
						    const char **hrefs,
						    int nhrefs,
						    E2kProperties *props,
						    gboolean create);

E2kResultIter *e_folder_exchange_bdelete_start     (EFolder *folder,
						    E2kOperation *op,
						    const char **hrefs,
						    int nhrefs);

E2kHTTPStatus  e_folder_exchange_mkcol             (EFolder *folder,
						    E2kOperation *op,
						    E2kProperties *props,
						    char **permanent_url);
E2kHTTPStatus  e_folder_exchange_delete            (EFolder *folder,
						    E2kOperation *op);
E2kHTTPStatus  e_folder_exchange_transfer_dir      (EFolder *source,
						    E2kOperation *op,
						    EFolder *dest,
						    gboolean delete_original,
						    char **permanent_url);


#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif /* __E_FOLDER_EXCHANGE_H__ */