sun.security.util: refactoring in DisabledAlgorithmConstraints

Port from jdk8u60: the class DisabledAlgorithmConstraints has been
refactored by doing the following changes:
- the class now extends from the abstract class AbstractAlgorithmConstraints
- the method decompose has been moved to the class AlgorithmDecomposer
- the logic for checking an algorithm in the method permits has been moved to
checkAlgorithm in AbstractAlgorithmConstraints
- the method loadDisabledAlgorithmsMap was replaced by loadAlgorithmsMap
in AbstractAlgorithmConstraints, except for populating the field
keySizeConstraints, which now happens in getKeySizeConstraints.

The possible cause of this refactoring was to avoid repeating code
with respect to a newly introduced class LegacyAlgorithmConstraints,
which is not used in Android and was not ported.

This code is exercised by tests.security.cert.X509CertSelectorTest

Bug: 29631070
Test: run cts -m CtsLibcoreTestCases
Change-Id: Icb8413bdce86dd25f61560622e9ff51159fe8368
4 files changed