

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# DataConverters
<a name="dataconverters"></a>

 ワークフロー実装でリモートアクティビティを呼び出す場合、そのアクティビティに渡す入力とアクティビティの実行結果をシリアル化して無線で送信できるようにする必要があります。フレームワークでは、この目的のために DataConverter クラスを使用します。この抽象クラスを実装して、独自のシリアライザを提供できます。フレームワークには、デフォルトの Jackson シリアライザに基づく実装 (`JsonDataConverter`) が用意されています。詳細については、「[AWS SDK for Java ドキュメント](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/JsonDataConverter.html)」を参照してください。Jackson でシリアル化を行う方法および関連する Jackson 注釈の詳細については、JSON プロセッサのドキュメントを参照してください。使用されるワイヤ形式はコントラクトの一部と見なされます。したがって、`@Activities` 注釈と `@Workflow` 注釈の `DataConverter` プロパティを設定することで、アクティビティインターフェイスとワークフローインターフェイスで `DataConverter` を指定できます。

フレームワークでは、`@Activities` 注釈で指定した `DataConverter` 型のオブジェクトを作成し、アクティビティへの入力をシリアル化して、その結果を逆シリアル化します。同様に、`@Workflow` 注釈で指定した `DataConverter` 型のオブジェクトを使用して、ワークフローに渡すパラメータをシリアル化します。子ワークフローの場合は、その結果を逆シリアル化します。フレームワークでは、入力に加えて、追加のデータ (例外の詳細など) も Amazon SWF に渡します。このデータもワークフローシリアライザを使用してシリアル化します。

フレームワークで `DataConverter` を自動的に作成しない場合は、このインスタンスを独自に指定することもできます。生成されたクライアントには、`DataConverter` を取るコンストラクタオーバーロードがあります。

`DataConverter` 型を指定せず、`DataConverter` オブジェクトも渡さない場合は、デフォルトで `JsonDataConverter` が使用されます。