Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 94adef75 authored by Sergio Giro's avatar Sergio Giro
Browse files

java.security.Provider: port to jdk8u60 (second part)

- Add overridings for HashMap operations

Provider is a subclass of HashMap. When operations are on
Strings, they must be processed as part of the
algorithm->implementation mapping of the provider, and
so these methods must be overriden accordingly.

Newly overridden Methods added are:

compute, computeIfAbsent, computeIfPresent, getOrDefault,
merge, putIfAbsent, replace, replaceAll.

- Check that classes and constructors are public when
creating instances of services.

- Cosmetic changes like use of {@code} instead of <code>

Bug: 29631070
Test: make droid docs; vogar ProviderTest
Change-Id: I0238f4a48f31ddc50a3f18c27515023940d9ba02
parent 47784a79
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -55181,16 +55181,25 @@ package java.security {
  public abstract class Provider extends java.util.Properties {
    ctor protected Provider(java.lang.String, double, java.lang.String);
    method public synchronized java.lang.Object compute(java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function<? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized void forEach(java.util.function.BiConsumer<? super java.lang.Object, ? super java.lang.Object>);
    method public java.lang.String getInfo();
    method public java.lang.String getName();
    method public synchronized java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
    method public synchronized java.security.Provider.Service getService(java.lang.String, java.lang.String);
    method public synchronized java.util.Set<java.security.Provider.Service> getServices();
    method public double getVersion();
    method public synchronized java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object put(java.lang.Object, java.lang.Object);
    method public synchronized void putAll(java.util.Map<?, ?>);
    method public synchronized java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
    method protected synchronized void putService(java.security.Provider.Service);
    method protected synchronized void removeService(java.security.Provider.Service);
    method public synchronized boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
    method public synchronized java.lang.Object replace(java.lang.Object, java.lang.Object);
    method public synchronized void replaceAll(java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
  }
  public static class Provider.Service {
+9 −0
Original line number Diff line number Diff line
@@ -58537,16 +58537,25 @@ package java.security {
  public abstract class Provider extends java.util.Properties {
    ctor protected Provider(java.lang.String, double, java.lang.String);
    method public synchronized java.lang.Object compute(java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function<? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized void forEach(java.util.function.BiConsumer<? super java.lang.Object, ? super java.lang.Object>);
    method public java.lang.String getInfo();
    method public java.lang.String getName();
    method public synchronized java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
    method public synchronized java.security.Provider.Service getService(java.lang.String, java.lang.String);
    method public synchronized java.util.Set<java.security.Provider.Service> getServices();
    method public double getVersion();
    method public synchronized java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object put(java.lang.Object, java.lang.Object);
    method public synchronized void putAll(java.util.Map<?, ?>);
    method public synchronized java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
    method protected synchronized void putService(java.security.Provider.Service);
    method protected synchronized void removeService(java.security.Provider.Service);
    method public synchronized boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
    method public synchronized java.lang.Object replace(java.lang.Object, java.lang.Object);
    method public synchronized void replaceAll(java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
  }
  public static class Provider.Service {
+9 −0
Original line number Diff line number Diff line
@@ -55261,16 +55261,25 @@ package java.security {
  public abstract class Provider extends java.util.Properties {
    ctor protected Provider(java.lang.String, double, java.lang.String);
    method public synchronized java.lang.Object compute(java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function<? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized void forEach(java.util.function.BiConsumer<? super java.lang.Object, ? super java.lang.Object>);
    method public java.lang.String getInfo();
    method public java.lang.String getName();
    method public synchronized java.lang.Object getOrDefault(java.lang.Object, java.lang.Object);
    method public synchronized java.security.Provider.Service getService(java.lang.String, java.lang.String);
    method public synchronized java.util.Set<java.security.Provider.Service> getServices();
    method public double getVersion();
    method public synchronized java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
    method public synchronized java.lang.Object put(java.lang.Object, java.lang.Object);
    method public synchronized void putAll(java.util.Map<?, ?>);
    method public synchronized java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object);
    method protected synchronized void putService(java.security.Provider.Service);
    method protected synchronized void removeService(java.security.Provider.Service);
    method public synchronized boolean replace(java.lang.Object, java.lang.Object, java.lang.Object);
    method public synchronized java.lang.Object replace(java.lang.Object, java.lang.Object);
    method public synchronized void replaceAll(java.util.function.BiFunction<? super java.lang.Object, ? super java.lang.Object, ? extends java.lang.Object>);
  }
  public static class Provider.Service {