Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

クラウド・ストレージの受信アダプタ

受信アダプタにより、ビジネス・サービスはクラウドからデータを取得し、相互運用プロダクション内で処理することができます。このアダプタは、クラウド・ストレージからデータを取得し、InboundInputOpens in a new tab オブジェクトに配置します。これは、ビジネス・サービスがデータを処理するために使用するオブジェクトです。

受信アダプタの ObjectScript クラスは EnsLib.CloudStorage.InboundAdapterOpens in a new tab です。

クラウド・ストレージに接続するために使用されるプロパティに加え、受信アダプタには、取得する BLOB や、アダプタによって取得された後でクラウド BLOB を削除するかどうかを決定するプロパティも含まれます。

BLOB の取得

受信アダプタには、クラウド・ストレージから取得する BLOB を決定する 2 つのプロパティ、Blob Name Prefix および Blob Name Pattern が含まれています。これらのプロパティがどのように連携するのかを理解するには、例を確認するのが最も簡単です。次の BLOB を含む AWS S3 バケットについて考えます。

foo/bar/baz
foo/bar/bash
foo/bar/bang
foo/boo

AWS では BLOB 名に / を使用して仮想階層を作成します。これはファイル・システムがファイルをディレクトリに編成する方法に似ています。このスキーム内で、Blob Name Prefix はディレクトリ名のように機能します。例えば、foo/ ではすべての BLOB が選択され、foo/bar/ では最初の 3 つの BLOB が選択されます。これらの選択は、AWS サーバ側で行われます。

クライアントがサーバから BLOB のリストを取得すると、そのリストをさらにフィルタ処理するために Blob Name Pattern が使用されます。例えば、BlobNamePrefix="/foo/bar/" かつ BlobNamePattern="*ba?" の場合、アダプタは最初の BLOB のみを取得します。このフィルタ処理は、クライアント側で行われます。Blob Name Pattern プロパティは *? のワイルドカードをサポートしています。

Blob Name PrefixBlob Name Pattern によって設定された条件に合う BLOB が複数存在する場合、アダプタは各 BLOB をそれぞれビジネス・サービスの別の InboundInput オブジェクトに転送します。

ビジネス・サービスの作成

受信アダプタを使用するためのカスタム・ビジネス・サービスを開発する際、ユーザは、最初の引数として EnsLib.CloudStorage.InboundInputOpens in a new tab オブジェクトを受け入れるように onProcessInput オブジェクトを定義する必要があります。受信アダプタは、クラウド・ストレージのデータをこのオブジェクト・タイプに配置します。ビジネス・サービスで InboundInput オブジェクトを操作する際には、その 3 つのプロパティ、Name (クラウド・ストレージ BLOB の名前)、Meta (クラウド・ストレージ BLOB に関連付けられたメタデータ)、および Content (クラウド・ストレージからのデータを含むストリーム) にアクセスできます。

カスタムのビジネス・サービスの開発に不慣れな場合、詳細は "ビジネス・サービスの定義" を参照してください。

FeedbackOpens in a new tab