JavaでMicrosoftGraphAPIを使用してフォルダを作成および更新する

Microsoftは、Office365およびMicrosoftCloudサービスと対話および操作するためのGraphAPIを提供しています。これにより、フォルダの作成と管理、メッセージへのアクセス、カテゴリの管理、およびその他のサービスをプログラムで使用できます。この記事では、MicrosoftGraphAPIを使用してJavaでフォルダーを作成および更新する方法を学習します。

フォルダを管理するためのJavaMicrosoftGraph API

Microsoft Graph APIを使用してフォルダーを作成および更新するには、Aspose.Email for Javaを使用します。 APIを使用すると、MicrosoftGraphAPIを使用してOffice365サービスをシームレスに操作することが非常に簡単になります。 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.3</version>
    <classifier>jdk16</classifier>
</dependency>

JavaでMicrosoftGraphAPIを使用してフォルダを作成する

Graph APIと通信するには、最初にITokenProviderインターフェースを実装してリクエストを認証する必要があります。以下は、ITokenProviderの基本的な実装です。

ITokenProvider tokenProvider = new ITokenProvider() {
    Date expirationDate = null;

    @Override
    public void dispose() {
    }

    @Override
    public OAuthToken getAccessToken(boolean ignoreExistingToken) {
        // oAuthアクセストークンを取得します。
        // ignoreExistingTokenがtrueの場合、サーバーに新しいトークンを要求します。それ以外の場合、動作はトークンが存在するかどうかによって異なります。
        // トークンが存在し、その有効期限が切れていない場合は、現在のトークンを返します。それ以外の場合は、サーバーに新しいトークンを要求します。
        return null;
    }

    @Override
    public OAuthToken getAccessToken() {
        // oAuthアクセストークンを取得します。
        // トークンが存在し、その有効期限が切れていない場合は、現在のトークンを返します。それ以外の場合は、サーバーに新しいトークンを要求します。
        return new OAuthToken("token", expirationDate);
    }
};

以下は、JavaでMicrosoftGraphAPIを使用してフォルダーを作成する手順です。

次のコードサンプルは、JavaでMicrosoftGraphAPIを使用してフォルダーを作成する方法を示しています。

// グラフクライアントを取得する
IGraphClient client = GraphClient.getClient(tokenProvider);

// フォルダーを作る
GraphFolderInfo newFolder = client.createFolder("TEST_FOLDER");

JavaでMicrosoftGraphAPIを使用してサブフォルダーを作成する

同様の方法でサブフォルダを作成することもできます。唯一の違いは、createFolderメソッドの最初の引数としてルートフォルダーのパスを指定する必要があることです。次のコードサンプルは、JavaでMicrosoftGraphAPIを使用してサブフォルダーを作成する方法を示しています。

// グラフクライアントを取得する
IGraphClient client = GraphClient.getClient(tokenProvider);

// 受信トレイ内にフォルダを作成する
GraphFolderInfo newFolder = client.createFolder(GraphKnownFolders.Inbox, "TEST_SUBFOLDER_1");

// 新しく作成したフォルダ内にサブフォルダを作成します
GraphFolderInfo inboxTestSubFolder2 = client.createFolder(newFolder.getItemId(), "TEST_SUBFOLDER_2");

JavaでMicrosoftGraphAPIを使用してフォルダを更新する

Microsoft Graph APIを使用して、既存のフォルダーをフェッチおよび更新することもできます。このためには、フォルダのリストを取得し、必要なフォルダをフィルタリングする必要があります。以下は、Aspose.EmailforJavaを使用してフォルダーを更新する手順です。

  • まず、GraphClient.getClient(ITokenProvider)メソッドを使用してMicrosoftGraphクライアントのインスタンスを取得します。
  • 次に、IGraphClient.listFolders()メソッドを使用してすべてのフォルダーのリストを取得します。
  • その後、リスト内のすべてのGraphFolderInfoオブジェクトをループして、必要なオブジェクトをフェッチします。
  • 次に、GraphFolderInfoオブジェクトを使用して、フォルダーのプロパティを更新します。
  • 最後に、IGraphClient.updateFolder(GraphFolderInfo)メソッドを使用してフォルダーを更新します。

次のコードサンプルは、JavaでMicrosoftGraphAPIを使用してフォルダーを更新する方法を示しています。

// グラフクライアントを取得する
IGraphClient client = GraphClient.getClient(tokenProvider);

// フォルダのリストを取得する
GraphFolderInfoCollection folders = client.listFolders();

// フォルダをループする
for (GraphFolderInfo folderInfo : folders) {
    if(folderInfo.getDisplayName()=="TEST_FOLDER")
    {
    	folderInfo.setDisplayName("NEW_TEST_FOLDER");
    	
    	// フォルダを更新
    	GraphFolderInfo updatedFolder = client.updateFolder(folderInfo);
    }   
}

無料のAPIライセンスを取得する

無料の一時ライセンスを取得して、評価の制限なしにAspose.EmailforJavaを使用できます。

結論

この記事では、Javaアプリケーション内からMicrosoftGraphAPIを使用してフォルダーを操作する方法を学習しました。特に、JavaでMicrosoftGraphAPIを使用してフォルダー/サブフォルダーを作成または更新する方法を見てきました。さらに、ドキュメントを使用して、Aspose.EmailforJavaの他の機能を調べることができます。また、ご不明な点がございましたら、フォーラムに投稿してください。

関連項目