1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portlet.calendar.service.http;
21  
22  import com.liferay.portal.kernel.json.JSONArray;
23  import com.liferay.portal.kernel.json.JSONFactoryUtil;
24  import com.liferay.portal.kernel.json.JSONObject;
25  import com.liferay.portal.kernel.util.StringPool;
26  
27  import com.liferay.portlet.calendar.model.CalEvent;
28  
29  import java.util.Date;
30  import java.util.List;
31  
32  /**
33   * <a href="CalEventJSONSerializer.java.html"><b><i>View Source</i></b></a>
34   *
35   * <p>
36   * ServiceBuilder generated this class. Modifications in this class will be
37   * overwritten the next time is generated.
38   * </p>
39   *
40   * <p>
41   * This class is used by
42   * <code>com.liferay.portlet.calendar.service.http.CalEventServiceJSON</code>
43   * to translate objects.
44   * </p>
45   *
46   * @author Brian Wing Shun Chan
47   *
48   * @see com.liferay.portlet.calendar.service.http.CalEventServiceJSON
49   *
50   */
51  public class CalEventJSONSerializer {
52      public static JSONObject toJSONObject(CalEvent model) {
53          JSONObject jsonObj = JSONFactoryUtil.createJSONObject();
54  
55          jsonObj.put("uuid", model.getUuid());
56          jsonObj.put("eventId", model.getEventId());
57          jsonObj.put("groupId", model.getGroupId());
58          jsonObj.put("companyId", model.getCompanyId());
59          jsonObj.put("userId", model.getUserId());
60          jsonObj.put("userName", model.getUserName());
61  
62          Date createDate = model.getCreateDate();
63  
64          String createDateJSON = StringPool.BLANK;
65  
66          if (createDate != null) {
67              createDateJSON = String.valueOf(createDate.getTime());
68          }
69  
70          jsonObj.put("createDate", createDateJSON);
71  
72          Date modifiedDate = model.getModifiedDate();
73  
74          String modifiedDateJSON = StringPool.BLANK;
75  
76          if (modifiedDate != null) {
77              modifiedDateJSON = String.valueOf(modifiedDate.getTime());
78          }
79  
80          jsonObj.put("modifiedDate", modifiedDateJSON);
81          jsonObj.put("title", model.getTitle());
82          jsonObj.put("description", model.getDescription());
83  
84          Date startDate = model.getStartDate();
85  
86          String startDateJSON = StringPool.BLANK;
87  
88          if (startDate != null) {
89              startDateJSON = String.valueOf(startDate.getTime());
90          }
91  
92          jsonObj.put("startDate", startDateJSON);
93  
94          Date endDate = model.getEndDate();
95  
96          String endDateJSON = StringPool.BLANK;
97  
98          if (endDate != null) {
99              endDateJSON = String.valueOf(endDate.getTime());
100         }
101 
102         jsonObj.put("endDate", endDateJSON);
103         jsonObj.put("durationHour", model.getDurationHour());
104         jsonObj.put("durationMinute", model.getDurationMinute());
105         jsonObj.put("allDay", model.getAllDay());
106         jsonObj.put("timeZoneSensitive", model.getTimeZoneSensitive());
107         jsonObj.put("type", model.getType());
108         jsonObj.put("repeating", model.getRepeating());
109         jsonObj.put("recurrence", model.getRecurrence());
110         jsonObj.put("remindBy", model.getRemindBy());
111         jsonObj.put("firstReminder", model.getFirstReminder());
112         jsonObj.put("secondReminder", model.getSecondReminder());
113 
114         return jsonObj;
115     }
116 
117     public static JSONArray toJSONArray(
118         com.liferay.portlet.calendar.model.CalEvent[] models) {
119         JSONArray jsonArray = JSONFactoryUtil.createJSONArray();
120 
121         for (CalEvent model : models) {
122             jsonArray.put(toJSONObject(model));
123         }
124 
125         return jsonArray;
126     }
127 
128     public static JSONArray toJSONArray(
129         com.liferay.portlet.calendar.model.CalEvent[][] models) {
130         JSONArray jsonArray = JSONFactoryUtil.createJSONArray();
131 
132         for (CalEvent[] model : models) {
133             jsonArray.put(toJSONArray(model));
134         }
135 
136         return jsonArray;
137     }
138 
139     public static JSONArray toJSONArray(
140         List<com.liferay.portlet.calendar.model.CalEvent> models) {
141         JSONArray jsonArray = JSONFactoryUtil.createJSONArray();
142 
143         for (CalEvent model : models) {
144             jsonArray.put(toJSONObject(model));
145         }
146 
147         return jsonArray;
148     }
149 }