Actualizar una entrada del calendario sin ninguna notificación

Puede actualizar entradas del calendario de un dispositivo BlackBerry sin enviar notificaciones a los participantes de la entrada.

  1. Importe las clases y las interfaces necesarias.
    import java.util.*;
    import javax.microedition.pim.*;
    import net.rim.blackberry.api.pdap.BlackBerryEvent;
    import net.rim.blackberry.api.pdap.BlackBerryEventList;
    import net.rim.blackberry.api.pdap.BlackBerryPIMItem;
  2. Invoque PIM.openPIMList() para abrir una lista de entradas del calendario como un objeto BlackBerryEventList.
    BlackBerryEventList eventList = null;
    try 
    { 
       eventList = (BlackBerryEventList) 
          PIM.getInstance().openPIMList(PIM.EVENT_LIST, PIM.READ_WRITE); 
    }
    catch (PIMException e) 
    {
       // Handle exception
    }
  3. Recupere un objeto BlackBerryEvent de la lista de entradas.
    Enumeration events = eventList.items();
    BlackBerryEvent event = (BlackBerryEvent) events.nextElement();
  4. Modifique la entrada.
    if (eventList.isSupportedField(Event.SUMMARY)) 
    {
       event.addString(Event.NOTE, Event.ATTR_NONE, "Remember to bring food");
    }
  5. Invoque BlackBerryPIMItem.commit() y especifique la marca BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES para guardar los cambios.
    if(event.isModified()) 
    {
       try
       {
          int result;
          result = 
           ((BlackBerryPIMItem) event).commit(BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES);
       }
       catch (PIMException e) 
       {
          // Handle exception
       }
    }

    Si especifica BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES al confirmar los cambios de una entrada del calendario, la notificación no se envía a menos que la entrada del calendario sea una reunión nueva o se hayan agregado nuevos participantes de la reunión desde la última actualización (los participantes de la reunión deben ser notificados acerca de la reunión para poder aceptar la invitación a la misma). Si la notificación se ha enviado, BlackBerryPIMItem.commit() devuelve BlackBerryEvent.MEETING_RECORD_NOT_FOUND o BlackBerryEvent.INVITEE_LIST_CHANGED.

Ejemplo de código

BlackBerryEventList eventList = null;
try 
{ 
   eventList = (BlackBerryEventList) 
      PIM.getInstance().openPIMList(PIM.EVENT_LIST, PIM.READ_WRITE); 
   Enumeration events = eventList.items();
   BlackBerryEvent event = (BlackBerryEvent) events.nextElement();
   if (eventList.isSupportedField(Event.SUMMARY)) 
   {
      event.addString(Event.NOTE, Event.ATTR_NONE, "Remember to bring food");
   }
   if(event.isModified()) 
   {
      int result;
      result = 
         ((BlackBerryPIMItem) event).commit(BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES);
   }
}
catch (PIMException e) 
{
   // Handle exception
}

¿Le ha resultado útil esta información? Envíenos sus comentarios.