- java.lang.Object
- 
- java.security.Provider.Service
 
- 
- 含まれているクラス:
- Provider
 
 public static class Provider.Service extends Object 特定のセキュリティ・サービスを記述したものです。 このクラスには、特定のサービスのプロパティがカプセル化されるほか、そのサービスの新しい実装インスタンスを取得するためのファクトリ・メソッドが含まれます。各サービスは、そのサービスを提供するプロバイダ、タイプ、アルゴリズム名、およびそのサービスを実装するクラス名を含みます。 また、オプションでこのサービス(別名)および属性に対する代替アルゴリズム名の一覧が含まれます。この一覧は、名前と値のStringペアのマップです。 このクラスに定義されている supportsParameter()とnewInstance()メソッドは、Javaセキュリティ・フレームワークが条件に合致するサービスを検索してインスタンス化する際に使用されます。 これらのメソッドに対する有効な引数は、サービスのタイプごとに異なります。 Java SEで定義されたサービス・タイプについては、有効な値については「Java暗号化アーキテクチャ(JCA)リファレンス・ガイド」を参照してください。 Java SEの外部のコンポーネントでは、その他のサービス・タイプおよびその動作を定義することができます。このクラスのインスタンスは不変です。 - 導入されたバージョン:
- 1.5
 
- 
- 
メソッドのサマリー修飾子と型 メソッド 説明 StringgetAlgorithm()このサービスのアルゴリズム名を返します。StringgetAttribute(String name)指定された属性の値を返します。その属性がこのServiceで設定されていない場合はnullを返します。StringgetClassName()このサービスを実装するクラスの名前を返します。ProvidergetProvider()このサービスのProviderを返します。StringgetType()このサービスのタイプを取得します。ObjectnewInstance(Object constructorParameter)このサービスが記述する実装の新しいインスタンスを返します。booleansupportsParameter(Object parameter)このServiceが指定されたパラメータを使用できるかどうかを判定します。StringtoString()このサービスのString表現を返します。
 
- 
- 
- 
コンストラクタの詳細- 
Servicepublic Service(Provider provider, String type, String algorithm, String className, List<String> aliases, Map<String,String> attributes) 新しいサービスを構築します。- パラメータ:
- provider- このサービスを提供するプロバイダ
- type- このサービスのタイプ
- algorithm- アルゴリズム名
- className- このサービスを実装するクラスの名前
- aliases- 別名のリスト。アルゴリズムの別名が存在しない場合はnull
- attributes- 属性マップ。この実装に属性が含まれていない場合はnull
- 例外:
- NullPointerException- プロバイダ、タイプ、アルゴリズム、またはclassNameがnullの場合
 
 
- 
 - 
メソッドの詳細- 
getTypepublic final String getType() このサービスのタイプを取得します。 たとえば、MessageDigestです。- 戻り値:
- このサービスのタイプ
 
 - 
getAlgorithmpublic final String getAlgorithm() このサービスのアルゴリズム名を返します。 たとえば、SHA-1です。- 戻り値:
- このサービスのアルゴリズム
 
 - 
getProviderpublic final Provider getProvider() このサービスのProviderを返します。- 戻り値:
- このサービスのProvider
 
 - 
getClassNamepublic final String getClassName() このサービスを実装するクラスの名前を返します。- 戻り値:
- このサービスを実装するクラスの名前
 
 - 
getAttributepublic final String getAttribute(String name) 指定された属性の値を返します。その属性がこのServiceで設定されていない場合はnullを返します。- パラメータ:
- name- 要求された属性の名前
- 戻り値:
- 指定された属性の値。その属性が存在しない場合はnull
- 例外:
- NullPointerException- nameがnullである場合
 
 - 
newInstancepublic Object newInstance(Object constructorParameter) throws NoSuchAlgorithmException このサービスが記述する実装の新しいインスタンスを返します。 セキュリティ・プロバイダ・フレームワークは、このメソッドを使って実装の構築を行います。 通常の場合、アプリケーションからこのメソッドを呼び出す必要はありません。デフォルト実装は、リフレクションを使ってこのサービス・タイプに対する標準のコンストラクタを呼び出します。 セキュリティ・プロバイダは、このメソッドをオーバーライドすることで、インスタンス化を別の方法で実装できます。 さまざまなタイプのサービスに有効なconstructorParameterの詳細と値については、「Java暗号化アーキテクチャ(JCA)リファレンス・ガイド」を参照してください。 - パラメータ:
- constructorParameter- コンストラクタに渡す値。このサービス・タイプがconstructorParameterを使用しない場合はnull。
- 戻り値:
- このサービスの新しい実装
- 例外:
- InvalidParameterException- constructorParameterの値がこのサービス・タイプに対して無効である場合。
- NoSuchAlgorithmException- なんらかの理由でインスタンス化が失敗した場合。
 
 - 
supportsParameterpublic boolean supportsParameter(Object parameter) このServiceが指定されたパラメータを使用できるかどうかを判定します。 このサービスがそのパラメータを使用できない場合はfalseを返します。 このサービスがそのパラメータを使用できる場合、高速な判定が実行不可能である場合、あるいは状態が不明である場合にはtrueを返します。セキュリティ・プロバイダ・フレームワークは、一部のサービス・タイプでこのメソッドを使用することで、条件に合致しない実装を処理対象からすばやく除外します。 通常の場合、アプリケーションからこのメソッドを呼び出す必要はありません。 さまざまなタイプのサービスに有効なパラメータの詳細と値については、このクラスのトップと「Java暗号化アーキテクチャ(JCA)リファレンス・ガイド」を参照してください。 セキュリティ・プロバイダは、このメソッドをオーバーライドすることで独自の判定ロジックを実装できます。 - パラメータ:
- parameter- 判定対象のパラメータ
- 戻り値:
- このサービスが指定されたパラメータを使用できない場合はfalse; パラメータを使用する可能性がある場合はtrue
- 例外:
- InvalidParameterException- パラメータの値がこのサービス・タイプに対して無効である場合、またはこのメソッドがこのサービス・タイプで使用できない場合
 
 
- 
 
-