עבודה עם תיקיות באמצעות Microsoft Graph
Contents
[
Hide
]
Aspose.Email for Java מאפשרת לבצע מגוון פעולות על תיקיות ב‑Microsoft Graph, כגון רישום, יצירה, עדכון, העתקה, הזזה ומחיקה של תיקיות. להלן דוגמאות לתרחישים נפוצים.
רשימת תיקיות
הדוגמה הבאה מאחזרת את כל התיקיות ומדפיסה את שמות התצוגה שלהן יחד עם המאפיינים שלהן:
GraphFolderInfoCollection folders = client.listFolders();
for (GraphFolderInfo folderInfo : folders) {
System.out.println(folderInfo.getDisplayName());
for (KeyValuePair<Long, MapiProperty> prop : folderInfo.getProperties()) {
System.out.println(prop.getValue().getDescriptor().toString() + " " + prop.getValue().getString());
}
}
רשימת תתי‑תיקיות מתיקיית Inbox
ניתן גם לרשום תתי‑תיקיות תחת תיקייה ספציפית, כגון Inbox:
GraphFolderInfoCollection inboxFolders = client.listFolders(GraphKnownFolders.Inbox);
יצירת תיקיות
ניתן ליצור תיקיות ברמת השורש וגם תתי‑תיקיות.
צור תיקיית שורש
GraphFolderInfo newFolder = client.createFolder("TEST_FOLDER");
צור תתי‑תיקיות
קוד הדוגמה הבא מציג כיצד ליצור תת‑תיקייה תחת תיקיית Inbox:
GraphFolderInfo inboxTestSubFolder1 = client.createFolder(GraphKnownFolders.Inbox, "TEST_SUBFOLDER_1");
GraphFolderInfo inboxTestSubFolder2 = client.createFolder(newFolder.getItemId(), "TEST_SUBFOLDER_2");
קבל תיקייה
קוד הדוגמה הבא מדגים כיצד לאחזר תיקייה ספציפית, כגון פריטים נשלחים:
GraphFolderInfo sentItemsFolder = client.getFolder(GraphKnownFolders.SentItems);
עדכון תיקייה
ניתן לעדכן מאפייני תיקייה, למשל, שם התצוגה שלה:
GraphFolderInfo originalFolder = client.createFolder("TEST_FOLDER");
originalFolder.setDisplayName("NEW_TEST_FOLDER");
GraphFolderInfo updatedFolder = client.updateFolder(originalFolder);
העתקת תיקייה והקבצים שלה
הדוגמה הבאה מציגה כיצד להעתיק תיקייה יחד עם תתי‑תיקיות והודעות:
GraphFolderInfo parentFolder = client.createFolder("PARENT_FOLDER");
GraphFolderInfo testFolder = client.createFolder("TEST_FOLDER");
GraphFolderInfo testSubFolder = client.createFolder(testFolder.getItemId(), "TEST_SUBFOLDER");
MapiMessage message = new MapiMessage();
message.setSubject("Test subject");
message.setBody("Test body");
message.setProperty(KnownPropertyList.DISPLAY_TO, "to@host.com");
message.setProperty(KnownPropertyList.SENDER_NAME, "from");
message.setProperty(KnownPropertyList.SENT_REPRESENTING_EMAIL_ADDRESS, "from@host.com");
MapiMessage createdMessage = client.createMessage(testSubFolder.getItemId(), message);
GraphFolderInfo folderCopy = client.copyFolder(parentFolder.getItemId(), testFolder.getItemId());
GraphFolderInfoCollection folderColl = client.listFolders(parentFolder.getItemId());
// TEST_FOLDER
System.out.println(folderColl.get(0).getDisplayName());
folderColl = client.listFolders(folderColl.get(0).getItemId());
// TEST_SUBFOLDER
System.out.println(folderColl.get(0).getDisplayName());
GraphMessageInfoCollection listMessages = client.listMessages(folderColl.get(0).getItemId());
// Test subject
System.out.println(listMessages.get(0).getSubject());
הזזת תיקייה ותוכן שלה
ניתן גם להעביר תיקייה עם כל תוכנה למיקום אחר:
GraphFolderInfo folder = client.moveFolder(parentFolder.getItemId(), testFolder.getItemId());
מחיקת תיקייה
השתמש בקוד הבא כדי למחוק תיקייה לצמיתות:
client.delete(testFolder.getItemId());