初心者向けに、コントローラー コマンドとタスク コマンドの違いをどのように説明しますか? それぞれの目的は何ですか?2 種類のコマンドを使用する例として、どのようなものがありますか?
3 に答える
次のドキュメントを参照してください: http://pic.dhe.ibm.com/infocenter/wchelp/v6r0m0/index.jsp?topic=%2Fcom.ibm.commerce.developer.doc%2Fconcepts%2Fcsdcommand_framework.htm
基本的に、タスクはより大きなプロセスのステップです。コントローラーは通常、プロセス全体を完了するために必要なタスクを呼び出します。同じタスクを必要とする 2 つのプロセス (コマンド コントローラー) がある場合、それぞれがタスクを呼び出し、各コントローラーでそのタスクの動作を複製する必要はありません。
ピーナッツ バター サンドイッチとハム サンドイッチを 2 つのコマンド コントローラーとして作成することを考えてみてください。お皿を持ってきて、お皿にパンを乗せて、サンドイッチの上にスライスしたパンをのせてシェア。ハムを取得する、または PB を取得するタスクは、適切なコマンド コントローラーでのみ使用されます。
コントローラ コマンド
- アクションの完全なビジネス ロジックを保持します。独立したリクエストとして実行することはできませんが、別のコマンドから呼び出す必要があります。リソース レベルのアクセス制御ポリシーを定義して実行する必要があります。
例 - UserRegistrationAddCmd は、ユーザーを登録するために使用されます。
タスク コマンド
- アクションに関連するロジックの一部を保持します。特定のタスクを実行します。独立したリクエストとして実行できます。これは、すでにポリシーが定義されているコントローラー コマンドから実行されるため、アクセス制御は必要ありません。
Ex- UpdateCredentialsCmd は UserRegistrationAddCmd から呼び出され、ユーザーの資格情報を暗号化および更新します。