View Javadoc
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  }