27.7. ComponentRegistry


上記のさまざまなマネージャーとコンポーネントが作成され、キャッシュで使用するために保存されるレジストリー。他のマネージャーや重要なコンポーネントはすべてレジストリーを介して実行できます。

レジストリー自体は、軽量の依存関係インジェクションフレームワークで、コンポーネントとマネージャーは相互に参照して初期化できるようにします。以下は、DataContainer と Configuration の依存関係を宣言するコンポーネントの例になります。また、DataContainerFactory はその場で DataContainers を構築する機能を宣言します。

---
   @Inject
   public void injectDependencies(DataContainer container, Configuration configuration) {
      this.container = container;
      this.configuration = configuration;
   }
Copy to Clipboard Toggle word wrap
   @DefaultFactoryFor
   public class DataContainerFactory extends AbstractNamedCacheComponentFactory {
---
Copy to Clipboard Toggle word wrap

ComponentRegistry で登録されたコンポーネントにはライフサイクルがある場合があり、@Start または @Stop アノテーションが付けられたメソッドはコンポーネントレジストリーで使用される前後に呼び出されます。

---
   @Start
   public void init() {
      useWriteSkewCheck = configuration.locking().writeSkewCheck();
   }
Copy to Clipboard Toggle word wrap
   @Stop(priority=20)
   public void stop() {
      notifier.removeListener(listener);
      executor.shutdownNow();
   }
---
Copy to Clipboard Toggle word wrap

上記の例では、@Stop へのオプションの priority パラメーターを使用して、他のコンポーネントに関連してコンポーネントが停止している順序を示すために使用されます。これは、Unix Sys-V 形式の順序付けに従います。優先順位の高い方法よりも優先度が高い方法の前に呼び出されます。デフォルトの優先度は 10 です。指定されていない場合は、デフォルトの優先度は 10 です。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る