Acompanhar o Progresso da Conversão de Documentos

Acompanhar o Progresso da Conversão de Documentos

Aspose.Email fornece a possibilidade de acompanhar o progresso da conversão de documentos. Para isso, a API fornece SaveOptions.CustomProgressHandler, que representa o método que lida com os eventos de progresso. Os tipos de eventos de progresso são representados pela enumeração ProgressEventType. A enumeração ProgressEventType possui os seguintes membros.

  • MimeStructureCreated: Este evento informa que a estrutura mime foi criada.
  • MimePartSaved: Este evento informa que o salvamento de uma parte mime foi concluído.
  • SavedToStream: Este evento informa que todas as partes mime foram salvas no fluxo.

O seguinte código de exemplo demonstra o uso de SaveOptions.CustomProgressHandler e a enumeração ProgressEventType para acompanhar o progresso da conversão de documentos.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the resource directory.
String dataDir = Utils.getSharedDataDir(TrackDocumentConversionProgress.class) + "email/";
String fileName = dataDir + "test.eml";
MailMessage msg = MailMessage.load(fileName);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
EmlSaveOptions opt = new EmlSaveOptions(MailMessageSaveType.getEmlFormat());
opt.setCustomProgressHandler( new ConversionProgressEventHandler() {
public void invoke(ProgressEventHandlerInfo info) {
showEmlConversionProgress(info);
}
});
msg.save(bos, opt);

O seguinte é o código da classe personalizada utilizada no exemplo de código dado acima.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
private static void showEmlConversionProgress(ProgressEventHandlerInfo info)
{
int total;
int saved;
switch (info.getEventType()) {
case ProgressEventType.MimeStructureCreated:
total = info.getTotalMimePartCount();
saved = info.getSavedMimePartCount();
System.out.println("MimeStructureCreated - TotalMimePartCount: " + total);
System.out.println("MimeStructureCreated - SavedMimePartCount: " + saved);
break;
case ProgressEventType.MimePartSaved:
total = info.getTotalMimePartCount();
saved = info.getSavedMimePartCount();
System.out.println("MimePartSaved - TotalMimePartCount: " + total);
System.out.println("MimePartSaved - SavedMimePartCount: " + saved);
break;
case ProgressEventType.SavedToStream:
total = info.getTotalMimePartCount();
saved = info.getSavedMimePartCount();
System.out.println("SavedToStream - TotalMimePartCount: " + total);
System.out.println("SavedToStream - SavedMimePartCount: " + saved);
break;
}
}