コマンドを登録するプラグインを作成する
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
プラグインを使用して、Content Hub CLIで使用するコマンドを登録できます。この例では、echoというコマンドを作成し、それを登録するためのプラグインを作成します。echoコマンドは、引数として渡される文字列値を出力します。
このチュートリアルでは、次の方法について説明します。
次の例では .NET CLIを使用していますが、好みの統合開発環境 (IDE) でも同じ結果を得ることができます。
プロジェクトの作成
プロジェクトを作成するには:
-
クラスライブラリを作成するには、次のコマンドを実行します。
-
コアCLI機能への参照を追加するには、次のコマンドを実行します。
Sitecore.CH.Cli.Coreプラグインインフラストラクチャへのアクセス、ファイルシステムアクセスに関する便利なユーティリティ、設定管理、およびコンソール出力を提供します。また、WebクライアントSDKへの依存関係も追加されます。
プラグインを作成する
アプリケーションの起動時に、CLIはプラグインの検索パスをスキャンして、から継承するタイプを探しますSitecore.CH.Cli.Core.Abstractions.Infrastructure.IPlugin。
プラグインを作成するには:
-
ファイルClass1.csの名前をPlugin.csに変更し、次のコードを追加します
このクラスには、次のメソッドが含まれています。
-
ConfigureServices - 依存関係の挿入のために、共有サービス コレクションにカスタム サービスを登録できます。コマンド ハンドラーは、コンストラクターでこれらのサービスを解決できます。詳細については、「 依存関係の挿入 - .NET 」を参照してください。
-
RegisterCommands - このプラグインの一部として配信される新しいコマンドを登録し、CLIを通じて利用できるようにします。
コマンドを作成して登録する
この例では、echoというコマンドを作成します。これを行うには、次の2つの方法があります。
-
コマンド宣言とコマンド処理を別々に使用してください。これは、コマンド ハンドラーの実装の単体テストをより適切で簡単に行うことができるため、推奨されるアプローチです。
-
オプションとコマンド処理を同じクラスで指定する
コマンドを作成して登録するには:
基本コンストラクターに渡される値echoは、後でコマンドを使用可能にするための名前です。
引数は関数に渡されます。 IHostには、以前に登録されたサービスを解決するサービス プロバイダーへの参照が含まれています。基本コンストラクターに渡される値echoは、後でコマンドを使用できるようになる名前です。
新しいコマンドは、既存のグループに追加することも、そのグループ専用に作成された新しいグループに追加することもできます。標準では、次のようないくつかのコマンドグループを使用できます。
-
delivery
-
serialization
-
tenant
-
EchoCommand.csというファイルを作成し、次のコードに示すように、別のコマンド宣言とコマンド処理を追加します。
-
または、次のコードに示すように、引数とオプションに別のクラスを使用します。
-
次のコードに示すように、同じクラスでオプションとコマンド処理を指定します。
-
プラグイン・クラスとコマンドを接続するには、次のようにRegisterCommandsメソッドを更新するPlugin.csファイルを変更します。
これらをコンパイルして 検出可能なプラグイン検索パスにコピーすると、walkthroughコマンド・グループとechoコマンドがCLIに含まれます。これで、いくつかのコマンドを実行して、すべてが正しく設定されていることを確認できます。
次のコマンドは、walkthroughコマンド グループから開始し、新しいechoコマンドが追加されたことを確認します。
echoコマンドは、次のように実行できます。