ターゲット指定可能コマンドは TargetableCommand インターフェースを拡張します。これはクライアントがコマンドを特定のサーバーに送信することを可能にします。 TargetableCommand インターフェース (および TargetableCommandImpl クラス) は、 クライアントがターゲットを指定する方法として、setCommandTarget メソッドと setCommandTargetName メソッドの 2 つの方法を提供します。
setCommandTarget メソッドは、クライアントがコマンド上に直接ターゲット・オブジェクトを設定することを可能にします。 setCommandTargetName メソッドは、クライアントが名前によってサーバーを参照することを可能にします。この方法はクライアントがサーバー・オブジェクトを直接認識していない場合に役に立ちます。 ターゲット指定可能コマンドはまた、対応する getCommandTarget メソッドおよび getCommandTargetName メソッドを持ちます。
コマンド・パッケージは、 コマンドのターゲットを識別できる必要があります。 ターゲットを指定する方法は複数あり、 アプリケーションごとに要件が異なる場合があるため、 コマンド・パッケージは選択アルゴリズムを指定しません。 その代わりに、TargetPolicy に 1 つのメソッド getCommandTarget とデフォルトの実装を提供します。これにより、適切であれば、アプリケーションがコマンドのターゲットを判別するためのカスタム・アルゴリズムを工夫することが可能になります。