ایجاد و حذف پوشه ها در MS Exchange Server در جاوا

Microsoft Exchange Server ایمیل‌ها را در پوشه‌های مختلف مانند صندوق ورودی، صندوق خروجی و غیره نگه می‌دارد. در موارد خاص، ممکن است لازم باشد پوشه های سفارشی را در Exchange Server به صورت برنامه ریزی شده ایجاد کنید. برای انجام این کار، این مقاله نحوه ایجاد یا حذف پوشه ها یا زیرپوشه ها با EWS در MS Exchange Server در جاوا را پوشش می دهد.

Java API برای ایجاد پوشه ها در MS Exchange Server

برای کار با پوشه‌ها در MS Exchange Server با استفاده از EWS، از Aspose.Email for Java استفاده می‌کنیم. این یک API قدرتمند برای کار با خدمات Exchange Server از داخل برنامه های جاوا است. می توانید API را دانلود یا با استفاده از تنظیمات Maven زیر نصب کنید.

مخزن:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

وابستگی:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>22.2</version>
    <classifier>jdk16</classifier>
</dependency>

یک پوشه در MS Exchange Server در جاوا ایجاد کنید

مراحل زیر برای ایجاد یک پوشه در MS Exchange Server در جاوا آمده است.

  • به MS Exchange Server متصل شوید و شی مشتری EWS را در IEWSClient دریافت کنید.
  • نام پوشه ریشه و پوشه ای که می خواهید ایجاد کنید را مشخص کنید.
  • پوشه را با استفاده از روش IEWSClient.createFolder(String, String) ایجاد کنید.

نمونه کد زیر نحوه ایجاد یک پوشه در MS Exchange Server با EWS در جاوا را نشان می دهد.

// با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd",
		"domain");

// دریافت URI صندوق ورودی (برای ایجاد پوشه در صندوق ورودی)
String inbox = client.getMailboxInfo().getInboxUri();

// نام پوشه را مشخص کنید
String folderName1 = "EMAILNET-35054";

try {
	// پرونده بساز
	client.setUseSlashAsFolderSeparator(true);
	client.createFolder(inbox, folderName1);
} catch (Exception e) {
	// کاری بکنید
}

یک زیر پوشه در MS Exchange Server در جاوا ایجاد کنید

برای ایجاد یک زیرپوشه، ابتدا باید بررسی کنید که آیا پوشه والد وجود دارد یا خیر. اگر این کار را کرد، به سادگی زیر پوشه را ایجاد کنید، در غیر این صورت ابتدا پوشه والد را ایجاد کنید. مراحل زیر نحوه ایجاد یک زیرپوشه در MS Exchange Server در جاوا را نشان می دهد.

  • به MS Exchange Server متصل شوید و شی مشتری EWS را در IEWSClient دریافت کنید.
  • نام پوشه ریشه و زیر پوشه را مشخص کنید.
  • بررسی کنید که آیا پوشه والد با استفاده از روش IEWSClient.folderExists(String, String) وجود دارد. اگر نشد، یکی بسازید.
  • زیر پوشه را با استفاده از روش IEWSClient.createFolder(String, String) ایجاد کنید.

نمونه کد زیر نحوه ایجاد یک زیرپوشه در MS Exchange Server در جاوا را نشان می دهد.

// با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// دریافت URI صندوق ورودی (برای ایجاد پوشه در صندوق ورودی)
String inbox = client.getMailboxInfo().getInboxUri();

// نام پوشه را مشخص کنید
String folderName1 = "EMAILNET-35054";

// نام زیر پوشه را مشخص کنید
String subFolderName = "2015";
String folderName2 = folderName1 + "/" + subFolderName;

try
{			
    // پرونده بساز
    client.setUseSlashAsFolderSeparator(true);
    if (!client.folderExists(inbox, folderName1))
    {
        // پرونده بساز
        client.createFolder(inbox, folderName1);
    }

    // زیر پوشه ایجاد کنید
    client.createFolder(inbox, folderName2);
}
catch(Exception e)
{
    // کاری بکنید
}

یک پوشه را در MS Exchange Server در جاوا حذف کنید

مراحل زیر برای حذف یک پوشه در MS Exchange Server در جاوا آمده است.

نمونه کد زیر نحوه حذف یک پوشه در MS Exchange Server در جاوا را نشان می دهد.

// با دادن اعتبارنامه، نمونه ای از کلاس EWSClient ایجاد کنید
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// دریافت URI صندوق ورودی (برای ایجاد پوشه در صندوق ورودی)
String inbox = client.getMailboxInfo().getInboxUri();

// نام پوشه را مشخص کنید
String folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{			
	ExchangeFolderInfo[] referenceToRootFolderInfo = { rootFolderInfo };
	
	// بررسی کنید که آیا پوشه وجود دارد
	boolean outRefCondition0 = client.folderExists(inbox, folderName1, /* out */ referenceToRootFolderInfo);
	rootFolderInfo = referenceToRootFolderInfo[0];

	if (outRefCondition0) {		        
	// پوشه را حذف کنید
	client.deleteFolder(rootFolderInfo.getUri(), true);
	}
}
catch(Exception e)
{
    // کاری بکنید
}

مجوز API رایگان دریافت کنید

می توانید برای استفاده از Aspose.Email برای جاوا بدون محدودیت ارزیابی، مجوز موقت رایگان دریافت کنید.

نتیجه

در این مقاله نحوه کار با پوشه ها در Microsoft Exchange Server با EWS در جاوا را یاد گرفتید. نحوه ایجاد و حذف یک پوشه خاص در MS Exchange Server به صورت برنامه نویسی در جاوا را مشاهده کرده اید. علاوه بر این، می‌توانید در مورد Aspose.Email برای جاوا از مستندات اطلاعات بیشتری کسب کنید. در صورتی که سؤالی دارید، می توانید آنها را به [فروم 14 ما ارسال کنید.

همچنین ببینید