CheckAlertService.java :  » Web-Mail » claros-intouch2-2.2-beta » org » claros » intouch » calendar » services » Java Open Source

Java Open Source » Web Mail » claros intouch2 2.2 beta 
claros intouch2 2.2 beta » org » claros » intouch » calendar » services » CheckAlertService.java
package org.claros.intouch.calendar.services;

import java.io.IOException;
import java.io.PrintWriter;
import java.text.DecimalFormat;
import java.util.Calendar;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.claros.commons.utility.Utility;
import org.claros.intouch.calendar.controllers.CalendarController;
import org.claros.intouch.calendar.models.CalendarObjectWrap;
import org.claros.intouch.common.services.BaseService;

public class CheckAlertService extends BaseService {
  private static final long serialVersionUID = 1443175579513896492L;
  private static DecimalFormat df = new DecimalFormat("00");

  /**
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setHeader("Expires","-1");
    response.setHeader("Pragma","no-cache");
    response.setHeader("Cache-control","no-cache");
    response.setHeader("Content-Type", "text/xml; charset=utf-8");
    PrintWriter out = response.getWriter();

    try {
      out.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
      out.write("<data>");
      out.print("<events>");

      List alerts = CalendarController.getAlertsByUser(getAuthProfile(request));
      if (alerts != null && alerts.size() > 0) {
        CalendarObjectWrap tmp = null;
        Calendar calTmp2 = Calendar.getInstance();
        Calendar calTmp = Calendar.getInstance();
        for (int i=0;i<alerts.size();i++) {
          tmp = (CalendarObjectWrap)alerts.get(i);
          if (tmp.getReminderMethod().intValue() == 1 && (tmp.getRemindedBefore() == null || tmp.getRemindedBefore().equals("false"))) { // is it a popup reminder
            calTmp.setTimeInMillis(tmp.getEndDate().getTime());
            calTmp2.setTimeInMillis(tmp.getOccuringDate().getTime());
            out.print("<event>");
            out.print("<id>" + tmp.getId() + " </id>");
            out.print("<year>" + calTmp2.get(Calendar.YEAR) + " </year>");
            out.print("<month>" + df.format(calTmp2.get(Calendar.MONTH) + 1) + " </month>");
            out.print("<day>" + df.format(calTmp2.get(Calendar.DATE)) + " </day>");
            out.print("<begin>" +  df.format(calTmp2.get(Calendar.HOUR_OF_DAY)) + ":" + df.format(calTmp2.get(Calendar.MINUTE)) + " </begin>");
            out.print("<end>" + df.format(calTmp.get(Calendar.HOUR_OF_DAY)) + ":" + df.format(calTmp.get(Calendar.MINUTE)) + " </end>");
            out.print("<color>" + tmp.getColor() + " </color>");
            out.print("<description>" + Utility.htmlSpecialChars(tmp.getDescription()) + " </description>");
            out.print("<hasReminder>" + (tmp.getReminderDays() != null && tmp.getReminderDays().equals("-1") ? "false" : "true") + " </hasReminder>");
            out.print("<repeatType>" + tmp.getRepeatType() + " </repeatType>");
            out.print("<location>" + tmp.getLocation() + " </location>");
            out.print("<reminderDays>" + tmp.getReminderDays() + " </reminderDays>");
            out.print("<reminderMethod>" + tmp.getReminderMethod() + " </reminderMethod>");
            out.print("<remindedBefore>" + tmp.getRemindedBefore() + " </remindedBefore>");
            out.print("</event>");
          }
        }
      }
      out.print("</events>");
      out.print("<result>0</result>");
      out.write("</data>");
    } catch (Exception e) {
      e.printStackTrace();
      out.print("</events>");
      out.print("<result>1</result>");
      out.write("</data>");
    }

  
  }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.