Atualizar uma entrada de calendário sem notificação

Você pode atualizar uma entrada de calendário em um aparelho BlackBerry sem enviar notificações aos participantes da entrada.

  1. Importe as classes e interfaces necessárias.
    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 uma lista de entradas de calendário como um objeto BlackBerryEventList.
    BlackBerryEventList eventList = null;
    try 
    { 
       eventList = (BlackBerryEventList) 
          PIM.getInstance().openPIMList(PIM.EVENT_LIST, PIM.READ_WRITE); 
    }
    catch (PIMException e) 
    {
       // Handle exception
    }
  3. Recupere um objeto BlackBerryEvent da lista de entradas.
    Enumeration events = eventList.items();
    BlackBerryEvent event = (BlackBerryEvent) events.nextElement();
  4. Modifique a entrada.
    if (eventList.isSupportedField(Event.SUMMARY)) 
    {
       event.addString(Event.NOTE, Event.ATTR_NONE, "Remember to bring food");
    }
  5. Invoque BlackBerryPIMItem.commit() e especifique o sinalizador BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES para salvar suas alterações.
    if(event.isModified()) 
    {
       try
       {
          int result;
          result = 
           ((BlackBerryPIMItem) event).commit(BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES);
       }
       catch (PIMException e) 
       {
          // Handle exception
       }
    }

    Se você especificar BlackBerryEvent.DO_NOT_NOTIFY_ATTENDEES ao confirmar as alterações em uma entrada de calendário, nenhuma notificação será enviada, a não ser que a entrada de calendário seja uma nova reunião ou participantes da reunião tenham sido adicionados desde a última atualização (os participantes da reunião devem ser notificados sobre a reunião para aceitar o convite). Se a notificação foi enviada, BlackBerryPIMItem.commit() retornará BlackBerryEvent.MEETING_RECORD_NOT_FOUND ou BlackBerryEvent.INVITEE_LIST_CHANGED.

Exemplo 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
}

Estas informações foram úteis? Gostaríamos de receber seus comentários.