Azure Cosmos DB Connector 1.0 の例

始める前に

  • Java 8 または 11

  • Anypoint Studio 7.5 以降

  • Mule Runtime Engine (Mule) 4.3.0 以降

  • DataWeave

一部の操作では、既存のドキュメント、ストアドプロシージャー、または権限が必要であり、それぞれのフローで作成できます。

Create Document

この Mule フローは、新しいドキュメントを作成するか、または既存のドキュメントを置換します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Create Document
    コレクションに新しいドキュメントを作成します。

  • Transform Message
    Create Document​ 操作の結果を JSON 形式で出力します。

  • Logger
    Create Document​ 操作からの HTTP 応答を表示します。

Create Document 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>

    <flow name="create-document-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/create-document"/>
        <azure-cosmos-db-connector-mule-4:create-document config-ref="Cosmos_Db_Connector_Config"
                                                          dbIdUriParam="${config.database}"
                                                          collIdUriParam="${config.collection}"
                                                          xMsDocumentdbPartitionkeyHeader="#[write(['Mule_CosmosDB_DemoApp_DocumentId'], 'application/json')]"
                                                          xMsIndexingDirectiveHeader="INCLUDE">
            <azure-cosmos-db-connector-mule-4:create-document-body>
                <![CDATA[#[%dw 2.0
output application/json
---
{
	"id" : "Mule_CosmosDB_DemoApp_DocumentId",
	"firstName" : "John",
	"lastName" : "Smith"
}]]]></azure-cosmos-db-connector-mule-4:create-document-body>
        </azure-cosmos-db-connector-mule-4:create-document>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/create-document​」と入力してアプリケーションをテストします。

Get Document

この Mule フローは、既存のドキュメントを取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Get Document
    パーティションキーとドキュメントキーでドキュメントを取得します。

  • Transform Message
    Get Document​ 操作の結果を JSON 形式で出力します。

  • Logger
    Get Document​ 操作からの HTTP 応答を表示します。

Get Document 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>

		<flow name="get-document-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/get-document"/>
        <azure-cosmos-db-connector-mule-4:get-document config-ref="Cosmos_Db_Connector_Config"
                                                       dbIdUriParam="${config.database}"
                                                       collIdUriParam="${config.collection}"
                                                       xMsDocumentdbPartitionkeyHeader="#[write(['Mule_CosmosDB_DemoApp_DocumentId'], 'application/json')]"
                                                       docIdUriParam="Mule_CosmosDB_DemoApp_DocumentId"
                                                       ifNoneMatchHeader="noneMatch"
                                                       xMsConsistencyLevelHeader="SESSION">
        </azure-cosmos-db-connector-mule-4:get-document>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/get-document​」と入力してアプリケーションをテストします。

Replace Document

この Mule フローは、既存のドキュメントを、指定されたコンテンツを含む新しいドキュメントに置換します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Replace Document
    ドキュメントのコンテンツ全体を置換します。

  • Transform Message
    Replace Document​ 操作の結果を JSON 形式で出力します。

  • Logger
    Replace Document​ 操作からの HTTP 応答を表示します。

Replace Document 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>

		<flow name="replace-document-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/replace-document"/>
        <azure-cosmos-db-connector-mule-4:replace-document config-ref="Cosmos_Db_Connector_Config"
                                                           dbIdUriParam="${config.database}"
                                                           collIdUriParam="${config.collection}"
                                                           xMsDocumentdbPartitionkeyHeader="#[write(['Mule_CosmosDB_DemoApp_DocumentId'], 'application/json')]"
                                                           docIdUriParam="Mule_CosmosDB_DemoApp_DocumentId"
                                                           xMsIndexingDirectiveHeader="INCLUDE">
            <azure-cosmos-db-connector-mule-4:replace-document-body>
                <![CDATA[#[%dw 2.0
output application/json
---
{
	"id" : "Mule_CosmosDB_DemoApp_DocumentId",
	"firstName" : "Jane",
	"lastName" : "Doe"
}]]]></azure-cosmos-db-connector-mule-4:replace-document-body>
        </azure-cosmos-db-connector-mule-4:replace-document>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/replace-document​」と入力してアプリケーションをテストします。

List Documents

この Mule フローは、指定されたクエリに基づいて、コネクタが内部で処理するページネーションをサポートする既存ドキュメントのリストを取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • List Documents
    コレクションのドキュメントのリストを返します。

  • Transform Message
    List Documents​ 操作の結果を JSON 形式で出力します。

  • Logger
    List Documents​ 操作からの HTTP 応答を表示します。

List Documents 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>

	<flow name="list-documents-flow">
			<http:listener config-ref="HTTP_Listener_config" path="/list-documents"/>
			<azure-cosmos-db-connector-mule-4:list-documents config-ref="Cosmos_Db_Connector_Config"
																											 dbIdUriParam="${config.database}"
																											 collIdUriParam="${config.collection}"
																											 xMsConsistencyLevelHeader="SESSION"
																											 ifNoneMatchHeader="noneMatch">
			</azure-cosmos-db-connector-mule-4:list-documents>
			<ee:transform>
					<ee:message>
							<ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
					</ee:message>
			</ee:transform>
			<logger level="INFO" message="#[payload]"/>
	</flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/list-documents​」と入力してアプリケーションをテストします。

Query Documents

この Mule フローは、指定されたクエリに基づいて、コネクタが内部で処理するページネーションをサポートする既存ドキュメントのリストを取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Query Documents
    ドキュメントを照会します。

  • Transform Message
    Query Documents​ 操作の結果を JSON 形式で出力します。

  • Logger
    Query Documents​ 操作からの HTTP 応答を表示します。

Query Documents 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>

	<flow name="query-documents-flow">
			<http:listener config-ref="HTTP_Listener_config" path="/query-documents"/>
			<azure-cosmos-db-connector-mule-4:query-documents config-ref="Cosmos_Db_Connector_Config"
																												dbIdUriParam="${config.database}"
																												collIdUriParam="${config.collection}"
																												xMsConsistencyLevelHeader="SESSION"
																												xMsDocumentdbQueryEnablecrosspartitionHeader="true">
					<azure-cosmos-db-connector-mule-4:query-documents-body>
							<![CDATA[#[%dw 2.0
output application/json
---
{
"query": "SELECT * FROM Families f WHERE f.id = @id AND f.Address.City = @city",
"parameters": [
	{
		"name": "@id",
		"value": "AndersenFamily"
	},
	{
		"name": "@city",
		"value": "Seattle"
	}
]
}]]]></azure-cosmos-db-connector-mule-4:query-documents-body>
			</azure-cosmos-db-connector-mule-4:query-documents>
			<ee:transform>
					<ee:message>
							<ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
					</ee:message>
			</ee:transform>
			<logger level="INFO" message="#[payload]"/>
	</flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/query-documents​」と入力してアプリケーションをテストします。

Delete Document

この Mule フローは、既存のドキュメントを削除します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Delete Document
    コレクションから既存のドキュメントを削除します。

  • Logger
    Delete Document​ 操作からの HTTP 応答を表示します。

Delete Document 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
		<flow name="delete-document-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/delete-document"/>
        <azure-cosmos-db-connector-mule-4:delete-document config-ref="Cosmos_Db_Connector_Config"
                                                          dbIdUriParam="${config.database}"
                                                          collIdUriParam="${config.collection}"
                                                          xMsDocumentdbPartitionkeyHeader="#[write(['Mule_CosmosDB_DemoApp_DocumentId'], 'application/json')]"
                                                          docIdUriParam="Mule_CosmosDB_DemoApp_DocumentId">
        </azure-cosmos-db-connector-mule-4:delete-document>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/delete-document​」と入力してアプリケーションをテストします。

Create Stored Procedure

この Mule フローは、指定されたコンテンツでストアドプロシージャーを作成します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Transform Message
    HTTP 入力を変換します。

  • Create Stored Procedure
    コレクションに新しいストアドプロシージャーを作成します。

  • Transform Message
    Create Stored Procedure​ 操作の結果を JSON 形式で出力します。

  • Logger
    Create Stored Procedure​ 操作からの HTTP 応答を表示します。

Create Stored Procedure 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
		<flow name="create-stored-procedure-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/create-stored-procedure"/>
        <ee:transform>
            <ee:message>
                <ee:set-payload>
                    <![CDATA[%dw 2.0
                        output application/json
                        ---
                        {
                            "body": "function () {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, World\");\r\n}",
                            "id": "Mule_CosmosDB_DemoApp_StoredProcedureId"
                        } ]]>
                </ee:set-payload>
            </ee:message>
        </ee:transform>
        <azure-cosmos-db-connector-mule-4:create-stored-procedure config-ref="Cosmos_Db_Connector_Config"
                                                                  dbIdUriParam="${config.database}"
                                                                  collIdUriParam="${config.collection}">
        </azure-cosmos-db-connector-mule-4:create-stored-procedure>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/create-stored-procedure​」と入力してアプリケーションをテストします。

Execute Stored Procedure

この Mule フローは、既存のストアドプロシージャーを実行します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Transform Message
    HTTP 入力を変換します。

  • Execute Stored Procedure
    ストアドプロシージャーリソースに対して POST を実行することで、ストアドプロシージャーを実行します。

  • Transform Message
    Execute Stored Procedure​ 操作の結果を JSON 形式で出力します。

  • Logger
    Execute Stored Procedure​ 操作からの HTTP 応答を表示します。

Execute Stored Procedure 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
		<flow name="execute-stored-procedure-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/execute-stored-procedure"/>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
                        output application/json
                        ---
                        ["World"]
                        ]]>
                </ee:set-payload>
            </ee:message>
        </ee:transform>
        <azure-cosmos-db-connector-mule-4:execute-stored-procedure config-ref="Cosmos_Db_Connector_Config"
                                                                   dbIdUriParam="${config.database}"
                                                                   collIdUriParam="${config.collection}"
                                                                   sprocIdUriParam="Mule_CosmosDB_DemoApp_StoredProcedureId">
        </azure-cosmos-db-connector-mule-4:execute-stored-procedure>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/execute-stored-procedure​」と入力してアプリケーションをテストします。

Replace Stored Procedure

この Mule フローは、既存のストアドプロシージャーを置換します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Transform Message
    HTTP 入力を変換します。

  • Replace Stored Procedure
    ストアドプロシージャーリソース全体を置換します。

  • Transform Message
    Replace Stored Procedure​ 操作の結果を JSON 形式で出力します。

  • Logger
    Replace Stored Procedure​ 操作からの HTTP 応答を表示します。

Replace Stored Procedure 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="replace-stored-procedure-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/replace-stored-procedure"/>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
                        output application/json
                        ---
                        {
                            "body": "function () {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Goodbye, World\");\r\n}",
                            "id": "Mule_CosmosDB_DemoApp_StoredProcedureId"
                        } ]]>
                </ee:set-payload>
            </ee:message>
        </ee:transform>
        <azure-cosmos-db-connector-mule-4:replace-stored-procedure config-ref="Cosmos_Db_Connector_Config"
                                                                   dbIdUriParam="${config.database}"
                                                                   collIdUriParam="${config.collection}"
                                                                   sprocIdUriParam="Mule_CosmosDB_DemoApp_StoredProcedureId">
        </azure-cosmos-db-connector-mule-4:replace-stored-procedure>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/replace-stored-procedure​」と入力してアプリケーションをテストします。

List Stored Procedures

この Mule フローは、既存のストアドプロシージャーのリストを取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • List Stored Procedures
    コレクション内のストアドプロシージャーのリストを返します。

  • Transform Message
    List Stored Procedures​ 操作の結果を JSON 形式で出力します。

  • Logger
    List Stored Procedures​ 操作からの HTTP 応答を表示します。

List Stored Procedures 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="list-stored-procedures-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/list-stored-procedures"/>
        <azure-cosmos-db-connector-mule-4:list-stored-procedures config-ref="Cosmos_Db_Connector_Config"
                                                                 dbIdUriParam="${config.database}"
                                                                 collIdUriParam="${config.collection}">
        </azure-cosmos-db-connector-mule-4:list-stored-procedures>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/list-stored-procedures​」と入力してアプリケーションをテストします。

Delete Stored Procedure

この Mule フローは、既存のストアドプロシージャーを削除します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Delete Stored Procedure
    コレクションから既存のストアドプロシージャーを削除します。

  • Logger
    Delete Stored Procedure​ 操作からの HTTP 応答を表示します。

Delete Stored Procedure 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="delete-stored-procedure-flow">
           <http:listener config-ref="HTTP_Listener_config" path="/delete-stored-procedure"/>
           <azure-cosmos-db-connector-mule-4:delete-stored-procedure config-ref="Cosmos_Db_Connector_Config"
                                                                     dbIdUriParam="${config.database}"
                                                                     collIdUriParam="${config.collection}"
                                                                     sprocIdUriParam="Mule_CosmosDB_DemoApp_StoredProcedureId">
           </azure-cosmos-db-connector-mule-4:delete-stored-procedure>
           <logger level="INFO" message="#[payload]"/>
       </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/delete-stored-procedure​」と入力してアプリケーションをテストします。

Create Permission

この Mule フローは、リソースにアクセスするためのユーザー権限を作成します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Create Permission
    データベースに新しい権限を作成します。

  • Transform Message
    Create Permission​ 操作の結果を JSON 形式で出力します。

  • Logger
    Create Permission​ 操作からの HTTP 応答を表示します。

Create Permission 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="create-permission-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/create-permission"/>
        <azure-cosmos-db-connector-mule-4:create-permission config-ref="Cosmos_Db_Connector_Config"
                                                            dbIdUriParam="${config.database}"
                                                            username="${config.username}"
                                                            xMsDocumentdbExpirySeconds="18000">
            <azure-cosmos-db-connector-mule-4:create-permission-body><![CDATA[#[%dw 2.0
output application/json
---
{
	"id": "Mule_CosmosDB_DemoApp_ResourceToken_PermissionId",
    "permissionMode": "All",
    "resource": "dbs/" ++ "${config.database}" ++ "/colls/" ++ "${config.collection}"
}]]]></azure-cosmos-db-connector-mule-4:create-permission-body>
        </azure-cosmos-db-connector-mule-4:create-permission>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/create-permission​」と入力してアプリケーションをテストします。

Get Permission

この Mule フローは、既存の権限を取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Get Permission
    データベースから権限を取得します。

  • Transform Message
    Get Permission​ 操作の結果を JSON 形式で出力します。

  • Logger
    Get Permission​ 操作からの HTTP 応答を表示します。

Get Permission 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="get-permission-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/get-permission"/>
        <azure-cosmos-db-connector-mule-4:get-permission config-ref="Cosmos_Db_Connector_Config"
                                                         dbIdUriParam="${config.database}"
                                                         username="${config.username}"
                                                         permissionId="Mule_CosmosDB_DemoApp_ResourceToken_PermissionId"
                                                         xMsDocumentdbExpirySeconds="1800">
        </azure-cosmos-db-connector-mule-4:get-permission>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/get-permission​」と入力してアプリケーションをテストします。

Replace Permission

この Mule フローは、ユーザーがリソースにアクセスするための既存の権限を別の権限に置換します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Replace Permission
    データベースの権限を置換します。

  • Transform Message
    Replace Permission​ 操作の結果を JSON 形式で出力します。

  • Logger
    Replace Permission​ 操作からの HTTP 応答を表示します。

Replace Permission 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="replace-permission-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/replace-permission"/>
        <azure-cosmos-db-connector-mule-4:replace-permission config-ref="Cosmos_Db_Connector_Config"
                                                             dbIdUriParam="${config.database}"
                                                             username="${config.username}"
                                                             permissionId="Mule_CosmosDB_DemoApp_ResourceToken_PermissionId"
                                                             xMsDocumentdbExpirySeconds="1800">
            <azure-cosmos-db-connector-mule-4:replace-permission-body><![CDATA[#[%dw 2.0
output application/json
---
{
	"id": "Mule_CosmosDB_DemoApp_ResourceToken_PermissionId",
    "permissionMode": "Read",
    "resource": "dbs/" ++ "${config.database}" ++ "/colls/" ++ "${config.collection}"
}]]]></azure-cosmos-db-connector-mule-4:replace-permission-body>
        </azure-cosmos-db-connector-mule-4:replace-permission>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/replace-permission​」と入力してアプリケーションをテストします。

List Permissions

この Mule フローは、既存の権限のリストを取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • List Permissions
    ユーザーの権限をデータベースから取得してリストとして表示します。

  • Transform Message
    List Permissions​ 操作の結果を JSON 形式で出力します。

  • Logger
    List Permissions​ 操作からの HTTP 応答を表示します。

List Permissions 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="list-permissions-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/list-permissions"/>
        <azure-cosmos-db-connector-mule-4:list-permissions config-ref="Cosmos_Db_Connector_Config"
                                                           dbIdUriParam="${config.database}"
                                                           username="${config.username}">
        </azure-cosmos-db-connector-mule-4:list-permissions>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/list-permissions​」と入力してアプリケーションをテストします。

Delete Permission

この Mule フローは、既存の権限を削除します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Delete Permission
    データベースから権限を削除します。

  • Logger
    Delete Permission​ 操作からの HTTP 応答を表示します。

Delete Permission 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="delete-permission-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/delete-permission"/>
        <azure-cosmos-db-connector-mule-4:delete-permission config-ref="Cosmos_Db_Connector_Config"
                                                            dbIdUriParam="${config.database}"
                                                            username="${config.username}"
                                                            permissionId="Mule_CosmosDB_DemoApp_ResourceToken_PermissionId">
        </azure-cosmos-db-connector-mule-4:delete-permission>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/delete-permission​」と入力してアプリケーションをテストします。

List Documents Resource Token

この Mule フローは、コネクタが内部で処理するページネーションをサポートする既存ドキュメントのリストを取得し、リソーストークン認証による有効期間の短いトークンを使用します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Flow Reference
    リソーストークンを取得します。

  • List Documents
    コレクションのドキュメントのリストを返します。

  • Transform Message
    List Documents​ 操作の結果を JSON 形式で出力します。

  • Flow Reference
    権限をクリアします。

  • Logger
    List Documents​ 操作からの HTTP 応答を表示します。

List Documents Resource Token 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="list-documents-resource-token-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/list-documents-resource-token"/>
        <flow-ref name="obtain-resource-token"/>
        <azure-cosmos-db-connector-mule-4:list-documents config-ref="Cosmos_Db_Connector_Config_Resource_Token"
                                                         dbIdUriParam="${config.database}"
                                                         collIdUriParam="${config.collection}"
                                                         xMsConsistencyLevelHeader="SESSION"
                                                         ifNoneMatchHeader="noneMatch">
        </azure-cosmos-db-connector-mule-4:list-documents>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <flow-ref name="clear-permissions"/>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/list-documents-resource-token​」と入力してアプリケーションをテストします。

List Stored Procedures Resource Token

この Mule フローは、リソーストークン認証、による有効期間の短いトークンを使用して、既存のストアドプロシージャーのリストを取得します。

この例では、次の操作を使用します。

  • HTTP Listener
    HTTP 要求からデータを受け取ります。

  • Flow Reference
    リソーストークンを取得します。

  • List Stored Procedures
    コレクション内のストアドプロシージャーのリストを返します。

  • Transform Message
    List Stored Procedures​ 操作の結果を JSON 形式で出力します。

  • Flow Reference
    権限をクリアします。

  • Logger
    List Stored Procedures​ 操作からの HTTP 応答を表示します。

List Stored Procedures 操作の Studio フロー

この例の XML

この例のフローをすばやく Mule アプリケーションに読み込むには、次のコードを Studio XML エディターに貼り付けます。

<?xml version="1.0" encoding="UTF-8"?>
<mule
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:azure-cosmos-db-connector-mule-4="http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4"
        xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:http="http://www.mulesoft.org/schema/mule/http"
        xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4 http://www.mulesoft.org/schema/mule/azure-cosmos-db-connector-mule-4/current/mule-azure-cosmos-db-connector-mule-4.xsd">

    <configuration-properties file="mule-app.properties"/>

    <http:listener-config name="HTTP_Listener_config">
        <http:listener-connection host="0.0.0.0" port="8081"/>
    </http:listener-config>
    <azure-cosmos-db-connector-mule-4:key-token-config name="Cosmos_Db_Connector_Config">
        <azure-cosmos-db-connector-mule-4:key-token-auth-connection key="${config.myKey}"
                                                                       version="${config.version}"
                                                                       baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:key-token-config>
    <azure-cosmos-db-connector-mule-4:resource-token-config name="Cosmos_Db_Connector_Config_Resource_Token">
        <azure-cosmos-db-connector-mule-4:resource-token-auth-connection resourceToken="#[vars.resourceToken]"
                                                                         version="${config.version}"
                                                                         baseUri="${config.baseUri}"/>
    </azure-cosmos-db-connector-mule-4:resource-token-config>
    <flow name="list-stored-procedures-resource-token-flow">
        <http:listener config-ref="HTTP_Listener_config" path="/list-stored-procedures-resource-token"/>
        <flow-ref name="obtain-resource-token"/>
        <azure-cosmos-db-connector-mule-4:list-stored-procedures config-ref="Cosmos_Db_Connector_Config_Resource_Token"
                                                                 dbIdUriParam="${config.database}"
                                                                 collIdUriParam="${config.collection}">
        </azure-cosmos-db-connector-mule-4:list-stored-procedures>
        <ee:transform>
            <ee:message>
                <ee:set-payload><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <flow-ref name="clear-permissions"/>
        <logger level="INFO" message="#[payload]"/>
    </flow>
</mule>

この例の実行手順

  1. コネクタが設定されていることを確認します。

  2. プロジェクトを保存します。

  3. Web ブラウザーから「​http://localhost:8081/list-stored-procedures-resource-token​」と入力してアプリケーションをテストします。