Hantera konversationsobjekt
Aspose.Email för Java kan användas för att hantera konversationsobjekt på Exchange Server med EWSClient klass. Denna klass använder Exchange Web Services, som endast finns i Exchange Server 2007 och senare. Den här artikeln visar hur man hitta, kopiera, flytta och radera konversationsobjekt på Exchange Server 2010. Microsoft Exchange Server 2010 Service Pack 1 krävs för alla funktioner som ingår i detta avsnitt.
Hitta konversationer
För att hämta konversationsinformation från en specifik mapp på Exchange Server:
- Anslut till Exchange Server med hjälp av IEWSClient‑klassen.
- Anropa IEWSClient.findConversations()-metoden för att hitta alla konversationsobjekt i en mapp.
- Visa konversationsobjektets egenskaper som ID, samtalsämne och flaggstatus.
Följande kodsnutt visar hur du hittar konversationer.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find Conversation Items in the Inbox folder
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
// Show all conversations
for (ExchangeConversation conversation : conversations) {
// Display conversation properties like Id and Topic
System.out.println("Topic: " + conversation.getConversationTopic());
System.out.println("Flag Status: " + conversation.getFlagStatus());
System.out.println();
}
Kopiera konversationer
För att kopiera konversationer från en mapp till en annan:
- Anslut till Exchange Server med hjälp av IEWSClient‑klassen.
- Anropa IEWSClient.copyConversationItems()-metoden för att kopiera konversationsobjektet från källmappen till destinationsmappen.
Följande kodsnutt visar hur du kopierar konversationer.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find those Conversation Items in the Inbox folder which we want to copy
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Copy the conversation item based on some condition
if (conversation.getConversationTopic().contains("test email")) {
client.copyConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
System.out.println("Copied the conversation item to another folder");
}
}
Flytta konversationer
För att flytta konversationer från en mapp till en annan:
- Anslut till Exchange Server med hjälp av IEWSClient‑klassen.
- Anropa IEWSClient.moveConversationItems()-metoden för att flytta en konversation från källmappen till destinationsmappen.
Följande kodsnutt visar hur du flyttar konversationer.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find those Conversation Items in the Inbox folder which we want to move
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Move the conversation item based on some condition
if (conversation.getConversationTopic().contains("test email") == true) {
client.moveConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
System.out.println("Moved the conversation item to another folder");
}
}
Radera konversationer
För att radera konversationer från en mapp:
- Anslut till Exchange Server med hjälp av IEWSClient‑klassen.
- Anropa IEWSClient.deleteConversationItems()-metoden för att radera konversationsobjektet från källmappen.
Följande kodsnutt visar hur du raderar konversationer.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find those Conversation Items in the Inbox folder which we want to delete
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Delete the conversation item based on some condition
if (conversation.getConversationTopic().contains("test email") == true) {
client.deleteConversationItems(conversation.getConversationId());
System.out.println("Deleted the conversation item");
}
}