1 /*
2 * DavMail POP/IMAP/SMTP/CalDav/LDAP Exchange Gateway
3 * Copyright (C) 2010 Mickael Guessant
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 */
19 package davmail.exchange.ews;
20
21 import davmail.Settings;
22 import org.apache.http.entity.AbstractHttpEntity;
23
24 /**
25 * Create Item method.
26 */
27 public class CreateItemMethod extends EWSMethod {
28 /**
29 * Create exchange item.
30 *
31 * @param messageDisposition save or send option
32 * @param savedItemFolderId saved item folder id
33 * @param item item content
34 */
35 public CreateItemMethod(MessageDisposition messageDisposition, FolderId savedItemFolderId, EWSMethod.Item item) {
36 super("Item", "CreateItem");
37 this.savedItemFolderId = savedItemFolderId;
38 this.item = item;
39 addMethodOption(messageDisposition);
40 ((AbstractHttpEntity)getEntity()).setChunked(Settings.getBooleanProperty("davmail.enableChunkedRequest", false));
41 }
42
43 /**
44 * Create exchange item.
45 *
46 * @param messageDisposition save or send option
47 * @param sendMeetingInvitations send invitation option
48 * @param savedItemFolderId saved item folder id
49 * @param item item content
50 */
51 public CreateItemMethod(MessageDisposition messageDisposition, SendMeetingInvitations sendMeetingInvitations, FolderId savedItemFolderId, EWSMethod.Item item) {
52 super("Item", "CreateItem");
53 this.savedItemFolderId = savedItemFolderId;
54 this.item = item;
55 addMethodOption(messageDisposition);
56 addMethodOption(sendMeetingInvitations);
57 }
58
59 }