This is my LmcApptSummariesRequest source code:
package com.zimbra.cs.client.soap;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import com.zimbra.common.service.ServiceException;
import com.zimbra.common.soap.MailConstants;
import com.zimbra.common.soap.SoapParseException;
import com.zimbra.common.soap.DomUtil;
import com.zimbra.common.util.Log;
import com.zimbra.common.util.LogFactory;
import com.zimbra.cs.client.*;
public class LmcApptSummariesRequest extends LmcSoapRequest {
private final static Log log = LogFactory.getLog(LmcApptSummariesRequest.class);
String idFolder;
Date inizioRicerca;
Date fineRicerca;
protected Element getRequestXML() {
Element request = DocumentHelper.createElement(MailConstants.GET_APP T_SUMMARIES_REQUEST);
inizioRicerca=new Date();
fineRicerca=new Date();
long inizio=inizioRicerca.getTime();
long fine=fineRicerca.getTime()+8400000;
// add all the attributes of the SearchRequest element
addAttrNotNull(request, com.zimbra.common.soap.MailConstants.A_CAL_START_T IME, String.valueOf(inizio));
addAttrNotNull(request, com.zimbra.common.soap.MailConstants.A_CAL_END_TIM E, String.valueOf(fine));
addAttrNotNull(request, com.zimbra.common.soap.MailConstants.A_FOLDER, idFolder);
log.debug("Ricerca da " + inizioRicerca + " e " + fineRicerca + " per idFolder=" + idFolder);
log.debug("Richiesta :" + DomUtil.toString(request, false));
return request;
}
protected void parseResponse(LmcApptSummariesResponse response, Element responseXML)
throws ServiceException, LmcSoapClientException {
log.debug("Reponse :" + DomUtil.toString(responseXML, false));
// Ciclo sugli elementi trovati
Collection<Appointment> appuntamentiTrovati = new ArrayList<Appointment>();
for (Iterator<Element> it = responseXML.elementIterator(MailConstants.E_APPOIN TMENT); it.hasNext()

{
Element e = (Element) it.next();
System.err.println("sono dentro");
Appointment app = ResponseParser.parseAppointment(e);
appuntamentiTrovati.add(app);
}
response.setAppuntamentiTrovati(appuntamentiTrovat i);
}
protected LmcSoapResponse parseResponseXML(Element responseXML)
throws ServiceException, LmcSoapClientException {
LmcApptSummariesResponse response = new LmcApptSummariesResponse();
parseResponse(response, responseXML);
return response;
}
public String getIdFolder() {
return idFolder;
}
public void setIdFolder(String idFolder) {
this.idFolder = idFolder;
}
public Date getInizioRicerca() {
return inizioRicerca;
}
public void setInizioRicerca(Date inizioRicerca) {
this.inizioRicerca = inizioRicerca;
}
public Date getFineRicerca() {
return fineRicerca;
}
public void setFineRicerca(Date fineRicerca) {
this.fineRicerca = fineRicerca;
}
}
This code works, but i dont't understand how startTime, endTime, and IdFolder works, because results are not in the time range i expected.
Are dates required in a different format?