クラスProvider

すべての実装されたインタフェース:
Serializable, Cloneable, Map<Object,Object>
直系の既知のサブクラス:
AuthProvider

public abstract class Provider extends Properties
このクラスは、Java Security APIの「プロバイダ」を表します。プロバイダとは、Javaセキュリティの全体または一部を実装するものです。 プロバイダが実装するのは次のようなサービスです。
  • アルゴリズム(DSA、RSA、SHA-256など)。
  • キーの生成、変換、および管理機能(アルゴリズム固有キーなど)

プロバイダ実装によっては、セキュリティ・トークンとの通信エラーなどの、処理中に復旧できない内部エラーが発生する可能性があります。 そのようなエラーを通知するにはProviderExceptionを使用してください。

プロバイダは、その下に収まる実装の選択肢を持つプラガブル・アーキテクチャを使用する任意のセキュリティ・サービスをJavaに実装するために使用できることに注意してください。

サービス・タイプProviderはセキュリティ・フレームワーク用に予約されています。 このタイプのサービスをアプリケーションから追加、削除、または変更することはできません。 各Providerオブジェクト内には次の属性が自動的に格納されます。

Providerオブジェクトに自動的に格納される属性
Provider.id name String.valueOf(provider.getName())
Provider.id version String.valueOf(provider.getVersionStr())
Provider.id info String.valueOf(provider.getInfo())
Provider.id className provider.getClass().getName()

各プロバイダには、名前とバージョン文字列があります。 プロバイダは、通常、リソース・ディレクトリMETA-INF/services内のjava.security.Providerという名前のファイルで自身を識別します。 セキュリティ・プロバイダは、application class loaderを使用してServiceLoaderメカニズムを介して検索されます。

プロバイダは、自動的にインストールされ、実行時にSecurity.getProviders()メソッドを介して使用可能になるように構成できます。 セキュリティ・プロバイダを構成およびインストールするメカニズムは、実装に固有です。

実装上のノート:
JDK実装では、Javaインストール・ディレクトリ内のconf/security/java.securityファイルを使用して、セキュリティ・プロバイダの静的登録をサポートしています。 これらのプロバイダは、JDKランタイムによって自動的にインストールされます。特定のタイプのプロバイダ(暗号化サービス・プロバイダ)がどのように動作し、インストールされているかについては、「Java暗号化アーキテクチャ・リファレンス・ガイド(JCA)リファレンス・ガイド」の「プロバイダ・クラス」を参照してください。
導入されたバージョン:
1.1
関連項目:
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型
    クラス
    説明
    static class 
    特定のセキュリティ・サービスを記述したものです。
  • フィールドのサマリー

    クラスプロパティで宣言されたフィールド

    defaults
    修飾子と型
    フィールド
    説明
    protected Properties
    プロパティ・リストにないキーのデフォルト値を持つプロパティ・リストです。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    Provider(String name, double version, String info)
    非推奨。
    代わりにProvider(String, String, String)を使用してください。
    protected
    Provider(String name, String versionStr, String info)
    指定された名前、バージョン文字列および情報でProviderを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    このProviderをクリアして、Providerによって実装された機能の検索に使用されるプロパティが含まれないようにします。
    compute(Object key, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
    指定されたキーと現在マップされている値に対するマッピングの計算を試みます(現在のマッピングが存在しない場合はnull)。
    computeIfAbsent(Object key, Function<? super Object, ? extends Object> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    computeIfPresent(Object key, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
    指定されたキーの値が存在していてnull以外の場合、キーと現在マップされている値から新しいマッピングの計算を試みます。
    configure(String configArg)
    指定された構成引数をこのProviderインスタンスに適用し、構成されたProviderを返します。
    このProviderに含まれるプロパティ・エントリの変更不可能なSetビューを返します。
    void
    forEach(BiConsumer<? super Object, ? super Object> action)
    このマップのすべてのエントリの処理が完了するかアクションから例外がスローされるまで、各エントリに対して指定されたアクションを実行します。
    Providerおよびそのサービスの人間が読める説明を返します。
    このProviderの名前を返します。
    getOrDefault(Object key, Object defaultValue)
    指定されたキーがマップされている値を返します。このマップにそのキーのマッピングが含まれていない場合はdefaultValueを返します。
    getService(String type, String algorithm)
    指定されたタイプの指定されたアルゴリズムまたは別名に対するこのProviderの実装を記述したサービスを取得します。
    このProviderでサポートされているすべてのサービスの変更不可能なセットを取得します。
    double
    非推奨。
    代わりにgetVersionStr()を使用してください。
    このProviderのバージョン文字列を返します。
    boolean
    このProviderインスタンスが構成されているかどうかを確認します。
    このProviderに含まれるプロパティ・キーの変更不可のSetビューを返します。
    void
    load(InputStream inStream)
    入力ストリームからキーと要素が対になったプロパティ・リストを読み込みます。
    merge(Object key, Object value, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
    指定されたキーがまだ値に関連付けられていないか、nullに関連付けられている場合は、指定された値に関連付けられます。
    put(Object key, Object value)
    keyプロパティが、指定されたvalueを持つように設定します。
    void
    putAll(Map<?,?> t)
    指定したマップからこのProviderにすべてのマッピングをコピーします。
    putIfAbsent(Object key, Object value)
    指定されたキーがまだ値に関連付けられていない(または、nullにマップされている)場合は、それを指定された値に関連付けてnullを返します。それ以外の場合は、現在の値を返します。
    protected void
    サービスを追加します。
    keyプロパティとそれに対応するvalueを削除します。
    boolean
    remove(Object key, Object value)
    指定された値に指定されたキーが現在マッピングされている場合にのみ、そのキーのエントリを削除します。
    protected void
    以前にputService()を使用して追加されたサービスを削除します。
    replace(Object key, Object value)
    指定されたキーがなんらかの値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。
    boolean
    replace(Object key, Object oldValue, Object newValue)
    指定されたキーが指定された値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。
    void
    replaceAll(BiFunction<? super Object, ? super Object, ? extends Object> function)
    すべてのエントリが処理されるか、または関数が例外をスローするまで、エントリ・セット・イテレータによってエントリが返される順に、各エントリの値を、そのエントリで指定された関数を呼び出した結果で置換します。
    このProviderの名前とバージョン文字列を含む文字列を返します。
    このProviderに含まれるプロパティ値の変更不可の収集ビューを返します。

    クラスプロパティで宣言されたメソッド

    getProperty, getProperty, list, list, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, storeToXML, stringPropertyNames
    修飾子と型
    メソッド
    説明
    指定されたキーを持つプロパティを、プロパティ・リストから探します。
    getProperty(String key, String defaultValue)
    指定されたキーを持つプロパティを、プロパティ・リストから探します。
    void
    指定された出力ストリームに、プロパティ・リストを出力します。
    void
    指定された出力ストリームに、プロパティ・リストを出力します。
    void
    load(Reader reader)
    プロパティ・リスト(キーと要素のペア)を入力文字ストリームから単純な行指向形式で読み込みます。
    void
    指定された入力ストリーム上のXMLドキュメントにより表されるすべてのプロパティを、このプロパティ表にロードします。
    メイン・プロパティ・リストに同じ名前のキーが見つからない場合は、デフォルトのプロパティ・リストにある個別のキーを含む、このプロパティ・リストにあるすべてのキーの列挙を返します。
    void
    save(OutputStream out, String comments)
    非推奨。
    プロパティ・リストの保存中にI/Oエラーが発生した場合、このメソッドはIOExceptionをスローしません。
    setProperty(String key, String value)
    Hashtableメソッドputをコールします。
    void
    store(OutputStream out, String comments)
    このProperties表内のプロパティ・リスト(キーと要素のペア)を、load(InputStream)メソッドを使用してProperties表にロードするのに適した形式で出力ストリームに書き込みます。
    void
    store(Writer writer, String comments)
    このProperties表内のプロパティ・リスト(キーと要素のペア)を、load(Reader)メソッドを使用するのに適した形式で出力文字ストリームに書き込みます。
    void
    この表に含まれるすべてのプロパティを表すXMLドキュメントを発行します。
    void
    storeToXML(OutputStream os, String comment, String encoding)
    この表に含まれるすべてのプロパティを表すXMLドキュメントを、指定されたエンコーディングを使用して発行します。
    void
    storeToXML(OutputStream os, String comment, Charset charset)
    この表に含まれるすべてのプロパティを表すXMLドキュメントを、指定されたエンコーディングを使用して発行します。
    キーとそれに対応する値が文字列であるこのプロパティ・リストから変更不可能なキー・セットを返します。メイン・プロパティ・リストから同じ名前のキーがまだ見つからない場合は、デフォルト・プロパティ・リストに個別のキーを含めます。

    クラス Hashtableで宣言されたメソッド

    clone, contains, containsKey, containsValue, elements, equals, get, hashCode, isEmpty, keys, rehash, size
    修飾子と型
    メソッド
    説明
    ハッシュ表のコピーを作成します。
    boolean
    指定された値にマップされているキーが、ハッシュ表にあるかどうかを判定します。
    boolean
    指定されたオブジェクトが、ハッシュ表のキーかどうかを判定します。
    boolean
    このハッシュ表が1つまたは複数のキーをこの値にマッピングする場合にtrueを返します。
    ハッシュ表にある値のリストを返します。
    boolean
    Mapインタフェースでの定義に従って、指定されたObjectとこのMapを比較して等しいかどうかを判定します。
    get(Object key)
    指定されたキーがマップされている値を返します。そのキーのマッピングがこのマップに含まれていない場合はnullを返します。
    int
    Mapインタフェースの定義に従って、このMapのハッシュ・コード値を返します。
    boolean
    値にマップされているキーが、ハッシュ表にあるかどうかを判定します。
    ハッシュ表にあるキーのリストを返します。
    protected void
    ハッシュ表の容量を増やし、それを内部的に再編成して、エントリを調整してアクセスをより効率的にします。
    int
    ハッシュ表にあるキーの数を返します。

    クラスオブジェクトで宣言されたメソッド

    finalize, getClass, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • Provider

      @Deprecated(since="9") protected Provider(String name, double version, String info)
      非推奨。
      代わりにProvider(String, String, String)を使用してください。
      指定された名前、バージョン番号および情報を使用してProviderを構築します。 このコンストラクタの呼出しは、name名、Double.toString(version)およびinfoを指定してProvider(String, String, String)をコールすることと同等です。
      パラメータ:
      name - プロバイダの名前。
      version - プロバイダのバージョン番号。
      info - プロバイダとそのサービスの記述。
    • Provider

      protected Provider(String name, String versionStr, String info)
      指定された名前、バージョン文字列および情報でProviderを構築します。

      バージョン文字列には、オプションで、バージョン番号の後に「+」、「-」のいずれかの文字で区切られたその他の情報が含まれます。 バージョン番号の形式は次のとおりです:

          ^[0-9]+(\.[0-9]+)*
      

      バージョン番号をdoubleで返すために、3つ以上のコンポーネント(前述のように'.'で区切ります)がある場合、最初の2つのコンポーネントのみが保持されます。 結果の文字列がDouble.valueOf(String)に渡され、バージョン番号(getVersion())が生成されます。

      変換に失敗した場合は、値0が使用されます。

      パラメータ:
      name - プロバイダの名前。
      versionStr - プロバイダのバージョン文字列。
      info - プロバイダとそのサービスの記述。
      導入されたバージョン:
      9
  • メソッドの詳細

    • configure

      public Provider configure(String configArg)
      指定された構成引数をこのProviderインスタンスに適用し、構成されたProviderを返します。 このProviderをインプレースで構成できない場合は、新しいProviderが作成されて返されます。 したがって、コール元は常に返されたProviderを使用する必要があります。
      実装要件:
      デフォルト実装はUnsupportedOperationExceptionをスローします。 サブクラスは、構成引数がサポートされている場合にのみ、このメソッドをオーバーライドする必要があります。
      パラメータ:
      configArg - このプロバイダを構成するための構成情報。
      戻り値:
      指定された構成引数で構成されたProvider
      スロー:
      UnsupportedOperationException - 構成引数がサポートされていない場合。
      NullPointerException - 指定された構成引数がnullの場合。
      InvalidParameterException - 指定された構成引数が無効である場合。
      導入されたバージョン:
      9
    • isConfigured

      public boolean isConfigured()
      このProviderインスタンスが構成されているかどうかを確認します。
      実装要件:
      デフォルトの実装ではtrueを返します。 サブクラスは、Providerが構築後に明示的なconfigureコールを必要とする場合、このメソッドをオーバーライドする必要があります。
      戻り値:
      これ以上の構成が必要ない場合はtrue、それ以外の場合はfalse
      導入されたバージョン:
      9
    • getName

      public String getName()
      このProviderの名前を返します。
      戻り値:
      このProviderの名前。
    • getVersion

      @Deprecated(since="9") public double getVersion()
      非推奨。
      代わりにgetVersionStr()を使用してください。
      このProviderのバージョン番号を返します。
      戻り値:
      このProviderのバージョン番号。
    • getVersionStr

      public String getVersionStr()
      このProviderのバージョン文字列を返します。
      戻り値:
      このProviderのバージョン文字列。
      導入されたバージョン:
      9
    • getInfo

      public String getInfo()
      Providerおよびそのサービスの人間が読める説明を返します。 関連するリンクを持つHTMLページを返すこともあります。
      戻り値:
      Providerおよびそのサービスの説明。
    • toString

      public String toString()
      このProviderの名前とバージョン文字列を含む文字列を返します。
      オーバーライド:
      クラスHashtable<Object,Object>toString
      戻り値:
      このProviderの名前とバージョン文字列を含む文字列。
    • clear

      public void clear()
      このProviderをクリアして、Providerによって実装された機能の検索に使用されるプロパティが含まれないようにします。
      定義:
      インタフェースMap<Object,Object>内のclear
      オーバーライド:
      クラスHashtable<Object,Object>clear
      導入されたバージョン:
      1.2
    • load

      public void load(InputStream inStream) throws IOException
      入力ストリームからキーと要素が対になったプロパティ・リストを読み込みます。
      オーバーライド:
      load、クラスProperties
      パラメータ:
      inStream - 入力ストリーム。
      スロー:
      IOException - 入力ストリームからの読込み中にエラーが発生した場合。
      関連項目:
    • putAll

      public void putAll(Map<?,?> t)
      指定したマップからこのProviderにすべてのマッピングをコピーします。 これらのマッピングは、このProviderが指定したマップに現在存在するキーに対して持っていたすべてのプロパティを置換します。
      定義:
      インタフェースMap<Object,Object>内のputAll
      オーバーライド:
      クラスHashtable<Object,Object>putAll
      パラメータ:
      t - このマップに格納されるマッピング
      導入されたバージョン:
      1.2
    • entrySet

      public Set<Map.Entry<Object,Object>> entrySet()
      このProviderに含まれるプロパティ・エントリの変更不可能なSetビューを返します。
      定義:
      インタフェースMap<Object,Object>内のentrySet
      オーバーライド:
      クラスHashtable<Object,Object>entrySet
      戻り値:
      マップ内に保持されているマッピングのセット・ビュー
      導入されたバージョン:
      1.2
      関連項目:
    • keySet

      public Set<Object> keySet()
      このProviderに含まれるプロパティ・キーの変更不可のSetビューを返します。
      定義:
      インタフェースMap<Object,Object>内のkeySet
      オーバーライド:
      クラスHashtable<Object,Object>keySet
      戻り値:
      マップに含まれているキーのセット・ビュー
      導入されたバージョン:
      1.2
    • values

      public Collection<Object> values()
      このProviderに含まれるプロパティ値の変更不可の収集ビューを返します。
      定義:
      インタフェースMap<Object,Object>内のvalues
      オーバーライド:
      クラスHashtable<Object,Object>values
      戻り値:
      マップ内に含まれている値のコレクション・ビュー
      導入されたバージョン:
      1.2
    • put

      public Object put(Object key, Object value)
      keyプロパティが、指定されたvalueを持つように設定します。
      定義:
      インタフェースMap<Object,Object>内のput
      オーバーライド:
      クラスHashtable<Object,Object>put
      パラメータ:
      key - ハッシュ表キー
      value - 値
      戻り値:
      ハッシュ表の指定されたキーの前の値。それがない場合はnull
      導入されたバージョン:
      1.2
      関連項目:
    • putIfAbsent

      public Object putIfAbsent(Object key, Object value)
      指定されたキーがまだ値に関連付けられていない(または、nullにマップされている)場合は、それを指定された値に関連付けてnullを返します。それ以外の場合は、現在の値を返します。
      パラメータ:
      key - 指定された値が関連付けられるキー
      value - 指定されたキーに関連付けられる値
      戻り値:
      指定されたキーに関連付けられた以前の値。キーのマッピングがなかった場合はnull (また、実装がnull値をサポートしている場合、戻り値nullは、以前にマップでキーとnullが関連付けられていたことを示す場合もある。)
      導入されたバージョン:
      1.8
    • remove

      public Object remove(Object key)
      keyプロパティとそれに対応するvalueを削除します。
      定義:
      インタフェースMap<Object,Object>内のremove
      オーバーライド:
      クラスHashtable<Object,Object>remove
      パラメータ:
      key - 削除するキー
      戻り値:
      ハッシュ表でそのキーにマップされている値。マップされている値がない場合はnull
      導入されたバージョン:
      1.2
    • remove

      public boolean remove(Object key, Object value)
      指定された値に指定されたキーが現在マッピングされている場合にのみ、そのキーのエントリを削除します。
      パラメータ:
      key - 指定された値が関連付けられるキー
      value - 指定されたキーに関連付けられていると予想される値
      戻り値:
      値が削除された場合はtrue
      導入されたバージョン:
      1.8
    • replace

      public boolean replace(Object key, Object oldValue, Object newValue)
      指定されたキーが指定された値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。
      パラメータ:
      key - 指定された値が関連付けられるキー
      oldValue - 指定されたキーに関連付けられていると予想される値
      newValue - 指定されたキーに関連付けられる値
      戻り値:
      値が置換された場合はtrue
      導入されたバージョン:
      1.8
    • replace

      public Object replace(Object key, Object value)
      指定されたキーがなんらかの値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。
      パラメータ:
      key - 指定された値が関連付けられるキー
      value - 指定されたキーに関連付けられる値
      戻り値:
      指定されたキーに関連付けられた以前の値。キーのマッピングがなかった場合はnull (また、実装がnull値をサポートしている場合、戻り値nullは、以前にマップでキーとnullが関連付けられていたことを示す場合もある。)
      導入されたバージョン:
      1.8
    • replaceAll

      public void replaceAll(BiFunction<? super Object, ? super Object, ? extends Object> function)
      すべてのエントリが処理されるか、または関数が例外をスローするまで、エントリ・セット・イテレータによってエントリが返される順に、各エントリの値を、そのエントリで指定された関数を呼び出した結果で置換します。
      パラメータ:
      function - 各エントリに適用する関数
      導入されたバージョン:
      1.8
    • compute

      public Object compute(Object key, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
      指定されたキーと現在マップされている値に対するマッピングの計算を試みます(現在のマッピングが存在しない場合はnull)。
      定義:
      インタフェースMap<Object,Object>内のcompute
      オーバーライド:
      クラスHashtable<Object,Object>compute
      パラメータ:
      key - 指定された値が関連付けられるキー
      remappingFunction - 値をコンピュートするための再マップ関数
      戻り値:
      指定されたキーに関連付けられる新しい値。存在しない場合はnull
      導入されたバージョン:
      1.8
    • computeIfAbsent

      public Object computeIfAbsent(Object key, Function<? super Object, ? extends Object> mappingFunction)
      指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
      定義:
      インタフェースMap<Object,Object>内のcomputeIfAbsent
      オーバーライド:
      クラスHashtable<Object,Object>computeIfAbsent
      パラメータ:
      key - 指定された値が関連付けられるキー
      mappingFunction - 値をコンピュートするマッピング関数
      戻り値:
      指定されたキーに関連付けられている現在の(既存の、または計算された)値。計算された値がnullである場合はnull
      導入されたバージョン:
      1.8
    • computeIfPresent

      public Object computeIfPresent(Object key, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
      指定されたキーの値が存在していてnull以外の場合、キーと現在マップされている値から新しいマッピングの計算を試みます。
      定義:
      インタフェースMap<Object,Object>内のcomputeIfPresent
      オーバーライド:
      クラスHashtable<Object,Object>computeIfPresent
      パラメータ:
      key - 指定された値が関連付けられるキー
      remappingFunction - 値をコンピュートするための再マップ関数
      戻り値:
      指定されたキーに関連付けられる新しい値。存在しない場合はnull
      導入されたバージョン:
      1.8
    • merge

      public Object merge(Object key, Object value, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
      指定されたキーがまだ値に関連付けられていないか、nullに関連付けられている場合は、指定された値に関連付けられます。 それ以外の場合は、指定した再マッピング関数の結果で値を置換するか、結果がnullの場合は削除します。 このメソッドは、1つのキーに対する複数のマップされた値を結合するときに使用できます。
      定義:
      インタフェースMap<Object,Object>内のmerge
      オーバーライド:
      クラスHashtable<Object,Object>merge
      パラメータ:
      key - 結果値が関連付けられるキー
      value - キーに関連付けられた既存の値にマージされるnull以外の値。既存の値がない場合、またはキーにnull値が関連付けられている場合は、キーに関連付けられるnull以外の値
      remappingFunction - 存在する場合に値を再計算するための再マッピング関数
      戻り値:
      指定されたキーに関連付けられた新しい値。キーに値が関連付けられなかった場合はnull
      導入されたバージョン:
      1.8
    • getOrDefault

      public Object getOrDefault(Object key, Object defaultValue)
      インタフェースからコピーされた説明: Map
      指定されたキーがマップされている値を返します。このマップにそのキーのマッピングが含まれていない場合はdefaultValueを返します。
      パラメータ:
      key - 関連付けられた値が返されるキー
      defaultValue - キーのデフォルト・マッピング
      戻り値:
      指定されたキーがマップされている値。このマップにそのキーのマッピングが含まれていない場合はdefaultValue
      導入されたバージョン:
      1.8
    • forEach

      public void forEach(BiConsumer<? super Object, ? super Object> action)
      インタフェースからコピーされた説明: Map
      このマップのすべてのエントリの処理が完了するかアクションから例外がスローされるまで、各エントリに対して指定されたアクションを実行します。 実装クラスで指定されない場合は、エントリ・セットの反復の順序でアクションが実行されます(反復順序が指定されている場合)。 アクションによってスローされた例外は、呼出し側に中継されます。
      パラメータ:
      action - 各エントリに対して実行されるアクション
      導入されたバージョン:
      1.8
    • getService

      public Provider.Service getService(String type, String algorithm)
      指定されたタイプの指定されたアルゴリズムまたは別名に対するこのProviderの実装を記述したサービスを取得します。 このような実装が存在しない場合、このメソッドはnullを返します。 条件に一致するサービスとして、putService()を使用してこのプロバイダに追加されたものと、put()経由で追加されたものの2つが見つかった場合、putService()経由で追加されたサービスが返されます。
      パラメータ:
      type - 要求されるserviceのタイプ(MessageDigestなど)
      algorithm - リクエストされたサービスの大/小文字を区別しないアルゴリズム名(または代替別名) (たとえば、SHA-1)
      戻り値:
      このプロバイダの一致するサービスを記述するサービス、またはそのようなサービスが存在しない場合はnull
      スロー:
      NullPointerException - タイプまたはアルゴリズムがnullの場合
      導入されたバージョン:
      1.5
    • getServices

      public Set<Provider.Service> getServices()
      このProviderでサポートされているすべてのサービスの変更不可能なセットを取得します。
      戻り値:
      このProviderでサポートされているすべてのサービスの変更不可能なセット
      導入されたバージョン:
      1.5
    • putService

      protected void putService(Provider.Service s)
      サービスを追加します。 同じアルゴリズム名の同じタイプのサービスが存在し、putService()を使用して追加された場合、新しいサービスで置き換えられます。 また、このメソッドは、このサービスに関する情報を、「Java暗号化アーキテクチャ(JCA)リファレンス・ガイド」で説明されている形式でプロバイダのハッシュ表の値に配置します。
      パラメータ:
      s - 追加するサービス
      スロー:
      NullPointerException - sがnullの場合
      導入されたバージョン:
      1.5
    • removeService

      protected void removeService(Provider.Service s)
      以前にputService()を使用して追加されたサービスを削除します。 指定されたサービスは、このProviderから削除されます。 これはgetService()を呼び出しても返されなくなり、このプロバイダのHashtableからその情報が削除されます。
      パラメータ:
      s - 削除されるサービス
      スロー:
      NullPointerException - sがnullの場合
      導入されたバージョン:
      1.5