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
This commit is contained in:
Sergio Giro
2016-09-01 18:03:15 +01:00
parent 47784a790b
commit 94adef75af
3 changed files with 27 additions and 0 deletions

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {