私たちのアプリケーションには、apiを実装するいくつかのモジュールがある状況があります。これらのモジュールのそれぞれは、適切に構成されたデータディレクトリパスに依存する依存関係を持っています。これらのモジュールは、このパスが設定されるまで構築されるべきではありません。ナンシールート/モジュールを動的に登録および登録解除する
また、上記のパスの設定を含む、設定の設定と検証を実装するモジュールもあります。
私たちは何とか設定が確認できるようになるまでデータモジュールを「無効にしたい」と思います。設定は、たとえば、起動時にデータディレクトリが存在し、有効であることを確認することによって確認されます。さらに、ユーザーがconfigモジュールを介して変更を保存すると、その確認が再び行われます。要約すると、ユーザーはデータディレクトリを設定し、データモジュールはすべて有効になります。ユーザーが無効なデータディレクトリを設定した場合(または起動していて、既存のディレクトリが無効な場合)、モジュールはすべて無効になります。
pipelines.BeforeRequest
にハンドラを登録しようとしましたが、役に立たなかった。ナンシーがRouteCache
の移植の一部として私たちのモジュールをインスタンス化しているとき、実際にはずっと早く失敗しています。設定されていることが確認できるまで、このインスタンス化を防ぐ必要があります。
「条件が真であるときにはこのモジュールのセットを使用し、条件が偽であればこの他のセットを使用する必要があります」と思われます。ナンシーではどうやってこのようなことをするのですか?