クラス PolicyConfigurationFactory
使用方法: このクラスを継承し、ラップされている実装をコンストラクターにプッシュし、getWrapped() を使用してラップされているインスタンスにアクセスします。
- 作成者:
- Ron Monzillo, Gary Ellison, Harpreet Singh
- 関連事項:
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターコンストラクター説明折り返しが不要な場合のデフォルトコンストラクターこのファクトリが装飾されている場合、装飾を行う実装は、ラップされている実装をこのコンストラクターにプッシュする必要があります。方法の概要
修飾子と型メソッド説明static PolicyConfigurationFactoryget()この静的メソッドは、システムプロパティを使用して、プロバイダー固有のファクトリ実装クラスを(public コンストラクターを介して)検索してインスタンス化します。abstract PolicyConfigurationこのメソッドは、プロバイダー内で識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するプロバイダー固有のクラスのインスタンスを取得するために使用されます。abstract PolicyConfigurationgetPolicyConfiguration(StringSE contextID) このメソッドは、プロバイダー内で識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するプロバイダー固有のクラスのインスタンスを取得するために使用されます。abstract PolicyConfigurationgetPolicyConfiguration(StringSE contextID, boolean remove) このメソッドは、プロバイダー内で識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するプロバイダー固有のクラスのインスタンスを取得するために使用されます。static PolicyConfigurationFactoryこの静的メソッドは、システムプロパティを使用して、プロバイダー固有のファクトリ実装クラスを(public コンストラクターを介して)検索してインスタンス化します。このファクトリが装飾されている場合、装飾を行う実装はこのメソッドをオーバーライドして、ラップされている実装へのアクセスを提供できます。abstract booleanこのメソッドは、ファクトリに関連付けられたポリシープロバイダー内に、識別されたポリシーコンテキストが状態 "inService" で存在するかどうかを判断します。static voidsetPolicyConfigurationFactory(PolicyConfigurationFactory policyConfigurationFactory) システム全体の PolicyFactory 実装を設定します。
フィールドの詳細
FACTORY_NAME
- 関連事項:
コンストラクターの詳細
PolicyConfigurationFactory
public PolicyConfigurationFactory()折り返しが不要な場合のデフォルトコンストラクターPolicyConfigurationFactory
このファクトリが装飾されている場合、装飾を行う実装は、ラップされている実装をこのコンストラクターにプッシュする必要があります。getWrapped()は、ラップされている実装を返します。- パラメーター:
wrapped- ラップされる実装。
メソッドの詳細
getPolicyConfigurationFactory
public static PolicyConfigurationFactory getPolicyConfigurationFactory() throws ClassNotFoundExceptionSE, PolicyContextExceptionこの静的メソッドは、システムプロパティを使用して、プロバイダー固有のファクトリ実装クラスを(public コンストラクターを介して)検索してインスタンス化します。プロバイダー固有のファクトリ実装クラスの名前は、システムプロパティの値から取得されます。
jakarta.security.jacc.PolicyConfigurationFactory.provider.- 戻り値:
- プロバイダー固有の PolicyConfigurationFactory 実装クラスのシングルトンインスタンス。
- 例外:
ClassNotFoundExceptionSE- システムプロパティの値が設定されていないなどの理由で、システムプロパティで指定されたクラスが見つからなかった場合。PolicyContextException- 実装が getPolicyConfigurationFactory メソッドシグネチャーで考慮されていないチェック例外をスローした場合。実装クラスによってスローされた例外は、スローされた PolicyContextException にカプセル化されます(構築中)。
setPolicyConfigurationFactory
public static void setPolicyConfigurationFactory(PolicyConfigurationFactory policyConfigurationFactory) システム全体の PolicyFactory 実装を設定します。以前に実装が設定されていた場合は、置き換えられます。
- パラメーター:
policyConfigurationFactory- null の可能性がある PolicyConfigurationFactory インスタンス。
get
この静的メソッドは、システムプロパティを使用して、プロバイダー固有のファクトリ実装クラスを(public コンストラクターを介して)検索してインスタンス化します。プロバイダー固有のファクトリ実装クラスの名前は、システムプロパティの値から取得されます。
jakarta.security.jacc.PolicyConfigurationFactory.provider.このメソッドは、宣言された例外のいずれかが IllegalStateException にキャプチャーされるという違いを除いて、論理的には
getPolicyConfigurationFactory()と同等です。- 戻り値:
- プロバイダー固有の PolicyConfigurationFactory 実装クラスのシングルトンインスタンス。
- 例外:
IllegalStateExceptionSE- 少なくともgetPolicyConfigurationFactory()が ClassNotFoundException または PolicyContextException をスローしたときにスローされます。その場合、IllegalStateException には原因としてこれらの例外の 1 つが含まれます。
getWrapped
このファクトリが装飾されている場合、装飾を行う実装はこのメソッドをオーバーライドして、ラップされている実装へのアクセスを提供できます。getPolicyConfiguration
public abstract PolicyConfiguration getPolicyConfiguration(StringSE contextID, boolean remove) throws PolicyContextException このメソッドは、プロバイダー内で識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するプロバイダー固有のクラスのインスタンスを取得するために使用されます。PolicyConfiguration インターフェースのメソッドは、識別されたポリシーコンテキストのポリシーステートメントを定義するために使用されます。呼び出し時に、識別されたポリシーコンテキストがプロバイダー内に存在しない場合は、ポリシーコンテキストがプロバイダー内に作成され、コンテキストの PolicyConfiguration インターフェースを実装するオブジェクトが返されます。識別されたコンテキストの状態が「削除済み」または "inService" の場合、呼び出しの結果として「オープン」状態に移行します。ポリシーコンテキストのライフサイクル内の状態は、PolicyConfiguration インターフェースによって定義されます。
ポリシーコンテキスト識別子の特定の値について、このメソッドは常に PolicyConfiguration の同じインスタンスを返す必要があり、特定のポリシーコンテキスト識別子を持つ PolicyConfiguration の実際のインスタンスが最大で 1 つ存在する必要があります(プロセスコンテキスト中)。
特定のポリシーコンテキストに対して最大で 1 つの PolicyConfiguration オブジェクトが存在するという不変条件を保持するには、このメソッドがスレッドセーフである必要がある場合があります。
- パラメーター:
contextID- PolicyConfiguration インターフェースが返されるポリシーコンテキストを識別する文字列。このパラメーターに渡される値は null であってはなりません。remove- PolicyConfiguration オブジェクトが返される前に、既存のポリシーコンテキストのポリシーステートメントとリンケージを削除するかどうかを確立するブール値。このパラメーターに渡された値が true の場合、既存のポリシーコンテキストのポリシーステートメントとリンケージは削除されます。値が false の場合、削除されません。- 戻り値:
- ポリシープロバイダーに一致し、識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するオブジェクト。
- 例外:
PolicyContextException- 実装が、getPolicyConfiguration メソッドシグネチャーで考慮されていないチェック例外をスローした場合。実装クラスによってスローされた例外は、スローされた PolicyContextException に (構築中に) カプセル化されます。
getPolicyConfiguration
このメソッドは、プロバイダー内で識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するプロバイダー固有のクラスのインスタンスを取得するために使用されます。PolicyConfiguration インターフェースのメソッドは、識別されたポリシーコンテキストのポリシーステートメントを定義するために使用されます。呼び出し時に、識別されたポリシーコンテキストがプロバイダーに存在しない場合、ポリシーコンテキストはプロバイダーに作成されず、null が返されます。いかなる種類の状態遷移も許可されず、
PolicyConfigurationインスタンスはそのまま返されます。ポリシーコンテキスト識別子の特定の値に対して、このメソッドは常に PolicyConfiguration の同じインスタンスを返す必要があり、(プロセスコンテキスト中に) 特定のポリシーコンテキスト識別子を持つ PolicyConfiguration の実際のインスタンスが多くても 1 つ存在する必要があります。
- パラメーター:
contextID- PolicyConfiguration インターフェースが返されるポリシーコンテキストを識別する文字列。このパラメーターに渡される値は null であってはなりません。- 戻り値:
- ポリシープロバイダに一致し、識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するオブジェクト、またはそのようなオブジェクトが存在しない場合は null。
getPolicyConfiguration
このメソッドは、プロバイダー内の識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するプロバイダー固有のクラスのインスタンスを取得するために使用されます。ポリシーコンテキストは、アクセサーが呼び出されるスレッドに関連付けられたポリシーコンテキスト識別子の値によって識別されます。PolicyConfiguration インターフェースのメソッドは、識別されたポリシーコンテキストのポリシーステートメントを定義するために使用されます。呼び出し時に、識別されたポリシーコンテキストがプロバイダーに存在しない場合、ポリシーコンテキストはプロバイダーに作成されず、null が返されます。いかなる種類の状態遷移も許可されず、
PolicyConfigurationインスタンスはそのまま返されます。ポリシーコンテキスト識別子の所定の決定された値に対して、このメソッドは常に PolicyConfiguration の同じインスタンスを返す必要があり、(プロセスコンテキスト中に) 特定のポリシーコンテキスト識別子を持つ PolicyConfiguration の実際のインスタンスは多くても 1 つ存在する必要があります。
このメソッドは、値が null でない限り、
PolicyContext.getContextID()から返された値を入力としてgetPolicyConfiguration(String)を呼び出すことと論理的に同じである必要があります。その場合、null を返す必要があります。- 戻り値:
- ポリシープロバイダに一致し、識別されたポリシーコンテキストに対応する PolicyConfiguration インターフェースを実装するオブジェクト、またはそのようなオブジェクトが存在しない場合は null。
inService
このメソッドは、ファクトリに関連付けられたポリシープロバイダー内に、識別されたポリシーコンテキストが状態 "inService" で存在するかどうかを判断します。- パラメーター:
contextID- ポリシーコンテキストを識別する文字列- 戻り値:
- 識別されたポリシーコンテキストがプロバイダー内に存在し、その状態が "inService" の場合は true、それ以外の場合は false。
- 例外:
PolicyContextException- 実装が、inService メソッドシグネチャーで考慮されていないチェック例外をスローした場合。実装クラスによってスローされた例外は、スローされた PolicyContextException に (構築中に) カプセル化されます。