Mercurial > hg > icedtea7
view patches/boot/ecj-diamond.patch @ 2916:0e1ff6b44292 icedtea-2.7.0pre12
Bump to icedtea-2.7.0pre12.
Upstream changes:
- S4717864: setFont() does not update Fonts of Menus already on screen
- S6474807: (smartcardio) CardTerminal.connect() throws CardException instead of CardNotPresentException
- S6518907: cleanup IA64 specific code in Hotspot
- S6869327: Add new C2 flag to keep safepoints in counted loops.
- S7102489: RFE: cleanup jlong typedef on __APPLE__and _LLP64 systems.
- S7112912: Message "Error occurred during initialization of VM" on boxes with lots of RAM
- S7124213: [macosx] pack() does ignore size of a component; doesn't on the other platforms
- S7124219: [macosx] Unable to draw images to fullscreen
- S7124552: [macosx] NullPointerException in getBufferStrategy()
- S7148275: [macosx] setIconImages() not working correctly (distorted icon when minimized)
- S7150092: NTLM authentication fail if user specified a different realm
- S7154841: [macosx] Popups appear behind taskbar
- S7155957: closed/java/awt/MenuBar/MenuBarStress1/MenuBarStress1.java hangs on win 64 bit with jdk8
- S7160627: [macosx] TextArea has wrong initial size
- S7167293: FtpURLConnection connection leak on FileNotFoundException
- S7168851: [macosx] Netbeans crashes in CImage.nativeCreateNSImageFromArray
- S7197203: sun/misc/URLClassPath/ClassnameCharTest.sh failed, compile error
- S8000351: Tenuring threshold should be unsigned
- S8005255: [macosx] Cleanup warnings in sun.lwawt
- S8006088: Incompatible heap size flags accepted by VM
- S8007295: Reduce number of warnings in awt classes
- S8010722: assert: failed: heap size is too big for compressed oops
- S8011059: [macosx] Support automatic @2x images loading on Mac OS X
- S8011123: serialVersionUID of java.awt.dnd.InvalidDnDOperationException changed in JDK8-b82
- S8014058: Regression tests for 8006088
- S8014489: tests/gc/arguments/Test(Serial|CMS|Parallel|G1)HeapSizeFlags jtreg tests invoke wrong class
- S8016302: Change type of the number of GC workers to unsigned int (2)
- S8024662: gc/arguments/TestUseCompressedOopsErgo.java does not compile.
- S8024669: Native OOME when allocating after changes to maximum heap supporting Coops sizing on sparcv9
- S8024926: [macosx] AquaIcon HiDPI support
- S8025974: l10n for policytool
- S8027025: [macosx] getLocationOnScreen returns 0 if parent invisible
- S8028212: Custom cursor HiDPI support
- S8028471: PPC64 (part 215): opto: Extend ImplicitNullCheck optimization.
- S8031573: [macosx] Checkmarks of JCheckBoxMenuItems aren't rendered in high resolution on Retina
- S8033534: [macosx] Get MultiResolution image from native system
- S8033786: White flashing when opening Dialogs and Menus using Nimbus with dark background
- S8035568: [macosx] Cursor management unification
- S8041734: JFrame in full screen mode leaves empty workspace after close
- S8043723: max_heap_for_compressed_oops() declared with size_t, but defined with uintx
- S8059803: Update use of GetVersionEx to get correct Windows version in hs_err files
- S8066504: GetVersionEx in java.base/windows/native/libjava/java_props_md.c might not get correct Windows version 0
- S8076455: IME Composition Window is displayed on incorrect position
- S8078668: jar usage string mentions unsupported option '-n'
- S8079595: Resizing dialog which is JWindow parent makes JVM crash
- S8080729: [macosx] java 7 and 8 JDialogs on multiscreen jump to parent frame on focus
- S8130769: The new menu can't be shown on the menubar after clicking the "Add" button.
- S8133357: 8u65 l10n resource file translation update
- S8146602: jdk/test/sun/misc/URLClassPath/ClassnameCharTest.java test fails with NullPointerException
- S8147842: IME Composition Window is displayed at incorrect location
- S8147910: Cache initial active_processor_count
- S8150490: Update OS detection code to recognize Windows Server 2016
- S8161147: jvm crashes when -XX:+UseCountedLoopSafepoints is enabled
- S8161195: Regression: closed/javax/swing/text/FlowView/LayoutTest.java
- S8161993: G1 crashes if active_processor_count changes during startup
- S8162603: Unrecognized VM option 'UseCountedLoopSafepoints'
- S8162876: [TEST_BUG] sun/net/www/protocol/http/HttpInputStream.java fails intermittently
- S8163520: Reuse cache entries
- S8163528: Better library loading
- S8164533: sun/security/ssl/SSLSocketImpl/CloseSocket.java failed with "Error while cleaning up threads after test"
- S8165626: Improved window framing
- S8167110: Windows peering issue
- S8167179: Make XSL generated namespace prefixes local to transformation process
- S8169011: Resizing XML parse trees
- S8169465: Deadlock in com.sun.jndi.ldap.pool.Connections
- S8169589: [macosx] Activating a JDialog puts to back another dialog
- S8170222: Better transfers of files
- S8170307: Stack size option -Xss is ignored
- S8170316: (tz) Support tzdata2016j
- S8170814: Reuse cache entries (part II)
- S8170888: [linux] Experimental support for cgroup memory limits in container (ie Docker) environments
- S8171121: Enhancing jar checking
- S8171388: Update JNDI Thread contexts
- S8171533: Better email transfer
- S8171949: [macosx] AWT_ZoomFrame Automated tests fail with error: The bitwise mask Frame.ICONIFIED is not setwhen the frame is in ICONIFIED state
- S8171952: [macosx] AWT_Modality/Automated/ModalExclusion/NoExclusion/ModelessDialog test fails as DummyButton on Dialog did not gain focus when clicked.
- S8172299: Improve class processing
- S8173783: IllegalArgumentException: jdk.tls.namedGroups
- S8173931: 8u131 L10n resource file update
- S8174844: Incorrect GPL header causes RE script to miss swap to commercial header for licensee source bundle
- S8174985: NTLM authentication doesn't work with IIS if NTLM cache is disabled
- S8175087: [bsd] Fix build after "8024900: PPC64: Enable new build on AIX (jdk part)"
- S8175163: [bsd] Fix build after "8005629: javac warnings compiling java.awt.EventDispatchThread..."
- S8176044: (tz) Support tzdata2017a
ChangeLog:
2017-07-14 Andrew John Hughes <gnu_andrew@member.fsf.org>
Bump to icedtea-2.7.0pre12.
* Makefile.am:
(JDK_UPDATE_VERSION): Bump to 141.
(BUILD_VERSION): Reset to b02.
(CORBA_CHANGESET): Update to icedtea-2.7.0pre12.
(JAXP_CHANGESET): Likewise.
(JAXWS_CHANGESET): Likewise.
(JDK_CHANGESET): Likewise.
(LANGTOOLS_CHANGESET): Likewise.
(OPENJDK_CHANGESET): Likewise.
(CORBA_SHA256SUM): Likewise.
(JAXP_SHA256SUM): Likewise.
(JAXWS_SHA256SUM): Likewise.
(JDK_SHA256SUM): Likewise.
(LANGTOOLS_SHA256SUM): Likewise.
(OPENJDK_SHA256SUM): Likewise.
* NEWS: Updated.
* configure.ac: Bump to 2.7.0pre12.
* hotspot.map.in: Update to icedtea-2.7.0pre12.
* patches/boot/ecj-diamond.patch:
Add cases in java.awt.Cursor,
java.awt.datatransfer.Clipboard,
java.awt.EventQueue, java.awt.MenuBar,
java.awt.Menu, java.awt.RenderingHints,
sun.net.www.protocol.http.NegotiateAuthentication,
com.sun.jndi.ldap.pool.Connections and
com.sun.jndi.ldap.pool.Pool.
* patches/boot/ecj-trywithresources.patch:
Add case in sun.awt.SunToolkit.
author | Andrew John Hughes <gnu_andrew@member.fsf.org> |
---|---|
date | Tue, 18 Jul 2017 03:13:49 +0100 |
parents | 9f216f601efb |
children | e9659e584b7c |
line wrap: on
line source
diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java --- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2017-04-18 02:46:24.000000000 +0100 +++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2017-04-26 16:05:48.555252606 +0100 @@ -58,7 +58,7 @@ private CorbaConnection conn; private static Object iorMapLock = new Object(); - private static Hashtable<IOR,CodeBase> iorMap = new Hashtable<>(); + private static Hashtable<IOR,CodeBase> iorMap = new Hashtable<IOR,CodeBase>(); public static synchronized void cleanCache( ORB orb ) { synchronized (iorMapLock) { diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java --- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java 2017-04-18 02:46:24.000000000 +0100 +++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java 2017-04-26 16:05:48.555252606 +0100 @@ -50,7 +50,7 @@ */ private class HookPutFields extends ObjectOutputStream.PutField { - private Map<String,Object> fields = new HashMap<>(); + private Map<String,Object> fields = new HashMap<String,Object>(); /** * Put the value of the named boolean field into the persistent field. diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java --- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2017-04-18 02:46:24.000000000 +0100 +++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2017-04-26 16:05:48.555252606 +0100 @@ -1315,7 +1315,7 @@ protected void shutdownServants(boolean wait_for_completion) { Set<ObjectAdapterFactory> oaset; synchronized (this) { - oaset = new HashSet<>(requestDispatcherRegistry.getObjectAdapterFactories()); + oaset = new HashSet<ObjectAdapterFactory>(requestDispatcherRegistry.getObjectAdapterFactories()); } for (ObjectAdapterFactory oaf : oaset) diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java --- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2017-04-18 02:46:24.000000000 +0100 +++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2017-04-26 16:05:48.555252606 +0100 @@ -108,7 +108,7 @@ private ThreadGroup threadGroup; Object workersLock = new Object(); - List<WorkerThread> workers = new ArrayList<>(); + List<WorkerThread> workers = new ArrayList<WorkerThread>(); /** * This constructor is used to create an unbounded threadpool @@ -154,7 +154,7 @@ // Copy to avoid concurrent modification problems. List<WorkerThread> copy = null; synchronized (workersLock) { - copy = new ArrayList<>(workers); + copy = new ArrayList<WorkerThread>(workers); } for (WorkerThread wt : copy) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/lib/ExsltSets.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/lib/ExsltSets.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/lib/ExsltSets.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/lib/ExsltSets.java 2017-04-26 16:05:48.555252606 +0100 @@ -192,7 +192,7 @@ NodeSet dist = new NodeSet(); dist.setShouldCacheNodes(true); - Map<String, Node> stringTable = new HashMap<>(); + Map<String, Node> stringTable = new HashMap<String, Node>(); for (int i = 0; i < nl.getLength(); i++) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xslt/EnvironmentCheck.java 2017-04-26 16:05:48.555252606 +0100 @@ -220,7 +220,7 @@ public Map<String, Object> getEnvironmentHash() { // Setup a hash to store various environment information in - Map<String, Object> hash = new HashMap<>(); + Map<String, Object> hash = new HashMap<String, Object>(); // Call various worker methods to fill in the hash // These are explicitly separate for maintenance and so @@ -523,7 +523,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); // Grab java version for later use try @@ -551,7 +551,7 @@ h.put("java.class.path", cp); - List<Map> classpathJars = checkPathForJars(cp, jarNames); + List<Map<String,String>> classpathJars = checkPathForJars(cp, jarNames); if (null != classpathJars) { h.put(FOUNDCLASSES + "java.class.path", classpathJars); @@ -613,14 +613,14 @@ * @see #appendFoundJars(Node, Document, Map, String ) * @see #getApparentVersion(String, long) */ - protected List<Map> checkPathForJars(String cp, String[] jars) + protected List<Map<String, String>> checkPathForJars(String cp, String[] jars) { if ((null == cp) || (null == jars) || (0 == cp.length()) || (0 == jars.length)) return null; - List<Map> v = new ArrayList<>(); + List<Map<String, String>> v = new ArrayList<Map<String, String>>(); StringTokenizer st = new StringTokenizer(cp, File.pathSeparator); while (st.hasMoreTokens()) @@ -641,7 +641,7 @@ // If any requested jarName exists, report on // the details of that .jar file try { - Map<String, String> h = new HashMap<>(2); + Map<String, String> h = new HashMap<String, String>(2); // Note "-" char is looked for in appendFoundJars h.put(jars[i] + "-path", f.getAbsolutePath()); @@ -660,7 +660,7 @@ /* no-op, don't add it */ } } else { - Map<String, String> h = new HashMap<>(2); + Map<String, String> h = new HashMap<String, String>(2); // Note "-" char is looked for in appendFoundJars h.put(jars[i] + "-path", WARNING + " Classpath entry: " + filename + " does not exist"); @@ -737,7 +737,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); Class clazz = null; @@ -768,7 +768,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); try { @@ -854,7 +854,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); try { @@ -915,7 +915,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); try { @@ -945,7 +945,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); final String DOM_CLASS = "org.w3c.dom.Document"; final String DOM_LEVEL3_METHOD = "getDoctype"; // no parameter @@ -980,7 +980,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); final String DOM_LEVEL2_CLASS = "org.w3c.dom.Document"; final String DOM_LEVEL2_METHOD = "createElementNS"; // String, String @@ -1056,7 +1056,7 @@ { if (null == h) - h = new HashMap<>(); + h = new HashMap<String, Object>(); final String SAX_VERSION1_CLASS = "org.xml.sax.Parser"; final String SAX_VERSION1_METHOD = "parse"; // String @@ -1146,7 +1146,7 @@ */ static { - Map<Long, String> jarVersions = new HashMap<>(); + Map<Long, String> jarVersions = new HashMap<Long, String>(); jarVersions.put(new Long(857192), "xalan.jar from xalan-j_1_1"); jarVersions.put(new Long(440237), "xalan.jar from xalan-j_1_2"); jarVersions.put(new Long(436094), "xalan.jar from xalan-j_1_2_1"); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/CastExpr.java 2017-04-26 16:05:48.555252606 +0100 @@ -51,7 +51,7 @@ /** * Legal conversions between internal types. */ - private static final MultiHashtable<Type, Type> InternalTypeMap = new MultiHashtable<>(); + private static final MultiHashtable<Type, Type> InternalTypeMap = new MultiHashtable<Type, Type>(); static { // Possible type conversions between internal types diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java 2017-04-26 16:05:48.555252606 +0100 @@ -139,7 +139,7 @@ private boolean _isStatic = false; // Legal conversions between internal and Java types. - private static final MultiHashtable<Type, JavaType> _internal2Java = new MultiHashtable<>(); + private static final MultiHashtable<Type, JavaType> _internal2Java = new MultiHashtable<Type, JavaType>(); // Legal conversions between Java and internal types. private static final Map<Class<?>, Type> JAVA2INTERNAL; @@ -254,9 +254,9 @@ _internal2Java.makeUnmodifiable(); - Map<Class<?>, Type> java2Internal = new HashMap<>(); - Map<String, String> extensionNamespaceTable = new HashMap<>(); - Map<String, String> extensionFunctionTable = new HashMap<>(); + Map<Class<?>, Type> java2Internal = new HashMap<Class<?>, Type>(); + Map<String, String> extensionNamespaceTable = new HashMap<String, String>(); + Map<String, String> extensionFunctionTable = new HashMap<String, String>(); // Possible conversions between Java and internal types java2Internal.put(Boolean.TYPE, Type.Boolean); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralElement.java 2017-04-26 16:05:48.555252606 +0100 @@ -107,7 +107,7 @@ // Check if we have any declared namespaces if (_accessedPrefixes == null) { - _accessedPrefixes = new Hashtable<>(); + _accessedPrefixes = new Hashtable<String, String>(); } else { if (!declared) { @@ -169,7 +169,7 @@ */ public void addAttribute(SyntaxTreeNode attribute) { if (_attributeElements == null) { - _attributeElements = new ArrayList<>(2); + _attributeElements = new ArrayList<SyntaxTreeNode>(2); } _attributeElements.add(attribute); } @@ -179,7 +179,7 @@ */ public void setFirstAttribute(SyntaxTreeNode attribute) { if (_attributeElements == null) { - _attributeElements = new ArrayList<>(2); + _attributeElements = new ArrayList<SyntaxTreeNode>(2); } _attributeElements.add(0, attribute); } @@ -205,7 +205,7 @@ * to _ANY_ namespace URI. Used by literal result elements to determine */ public Set<Map.Entry<String, String>> getNamespaceScope(SyntaxTreeNode node) { - Map<String, String> all = new HashMap<>(); + Map<String, String> all = new HashMap<String, String>(); while (node != null) { Map<String, String> mapping = node.getPrefixMapping(); @@ -445,7 +445,7 @@ } else if (node instanceof XslAttribute) { if (attrsTable == null) { - attrsTable = new HashMap<>(); + attrsTable = new HashMap<String, SyntaxTreeNode>(); for (int k = 0; k < i; k++) { SyntaxTreeNode n = _attributeElements.get(k); if (n instanceof LiteralAttribute) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Mode.java 2017-04-26 16:05:48.559252540 +0100 @@ -129,22 +129,22 @@ /** * A mapping between templates and test sequences. */ - private Map<Template, Object> _neededTemplates = new HashMap<>(); + private Map<Template, Object> _neededTemplates = new HashMap<Template, Object>(); /** * A mapping between named templates and Mode objects. */ - private Map<Template, Mode> _namedTemplates = new HashMap<>(); + private Map<Template, Mode> _namedTemplates = new HashMap<Template, Mode>(); /** * A mapping between templates and instruction handles. */ - private Map<Template, InstructionHandle> _templateIHs = new HashMap<>(); + private Map<Template, InstructionHandle> _templateIHs = new HashMap<Template, InstructionHandle>(); /** * A mapping between templates and instruction lists. */ - private Map<Template, InstructionList> _templateILs = new HashMap<>(); + private Map<Template, InstructionList> _templateILs = new HashMap<Template, InstructionList>(); /** * A reference to the pattern matching the root node. @@ -196,7 +196,7 @@ public String functionName(int min, int max) { if (_importLevels == null) { - _importLevels = new HashMap<>(); + _importLevels = new HashMap<Integer,Integer>(); } _importLevels.put(max, min); return _methodName + '_' + max; @@ -1074,10 +1074,10 @@ final Vector names = xsltc.getNamesIndex(); // Clear some datastructures - _namedTemplates = new HashMap<>(); - _neededTemplates = new HashMap<>(); - _templateIHs = new HashMap<>(); - _templateILs = new HashMap<>(); + _namedTemplates = new HashMap<Template, Mode>(); + _neededTemplates = new HashMap<Template, Object>(); + _templateIHs = new HashMap<Template, InstructionHandle>(); + _templateILs = new HashMap<Template, InstructionList>(); _patternGroups = new Vector[32]; _rootPattern = null; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java 2017-04-26 16:05:48.559252540 +0100 @@ -81,7 +81,7 @@ private Map<String, String> _instructionClasses; // Maps instructions to classes private Map<String, String[]> _instructionAttrs; // reqd and opt attrs private Map<String, QName> _qNames; - private Map<String, Map> _namespaces; + private Map<String, Map<String, QName>> _namespaces; private QName _useAttributeSets; private QName _excludeResultPrefixes; private QName _extensionElementPrefixes; @@ -107,11 +107,11 @@ } public void init() { - _qNames = new HashMap<>(512); - _namespaces = new HashMap<>(); - _instructionClasses = new HashMap<>(); - _instructionAttrs = new HashMap<>(); - _variableScope = new HashMap<>(); + _qNames = new HashMap<String, QName>(512); + _namespaces = new HashMap<String, Map<String, QName>>(); + _instructionClasses = new HashMap<String, String>(); + _instructionAttrs = new HashMap<String, String[]>(); + _variableScope = new HashMap<String, Object>(); _template = null; _errors = new Vector(); _warnings = new Vector(); @@ -322,7 +322,7 @@ if (space == null) { final QName name = new QName(namespace, prefix, localname); - _namespaces.put(namespace, space = new HashMap<>()); + _namespaces.put(namespace, space = new HashMap<String, QName>()); space.put(lexicalQName, name); return name; } @@ -1275,7 +1275,7 @@ */ public void startPrefixMapping(String prefix, String uri) { if (_prefixMapping == null) { - _prefixMapping = new HashMap<>(); + _prefixMapping = new HashMap<String, String>(); } _prefixMapping.put(prefix, uri); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet.java 2017-04-26 16:05:48.559252540 +0100 @@ -121,7 +121,7 @@ /** * Mapping between mode names and Mode instances. */ - private final Map<String, Mode> _modes = new HashMap<>(); + private final Map<String, Mode> _modes = new HashMap<String, Mode>(); /** * A reference to the default Mode object. @@ -131,7 +131,7 @@ /** * Mapping between extension URIs and their prefixes. */ - private final Map<String, String> _extensions = new HashMap<>(); + private final Map<String, String> _extensions = new HashMap<String, String>(); /** * Reference to the stylesheet from which this stylesheet was @@ -164,7 +164,7 @@ /** * Mapping between key names and Key objects (needed by Key/IdPattern). */ - private Map<String, Key> _keys = new HashMap<>(); + private Map<String, Key> _keys = new HashMap<String, Key>(); /** * A reference to the SourceLoader set by the user (a URIResolver diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable.java 2017-04-26 16:05:48.559252540 +0100 @@ -38,8 +38,8 @@ final class SymbolTable { // These maps are used for all stylesheets - private final Map<String, Stylesheet> _stylesheets = new HashMap<>(); - private final Map<String, Vector> _primops = new HashMap<>(); + private final Map<String, Stylesheet> _stylesheets = new HashMap<String, Stylesheet>(); + private final Map<String, Vector> _primops = new HashMap<String, Vector>(); // These maps are used for some stylesheets private Map<String, VariableBase> _variables = null; @@ -57,7 +57,7 @@ } public void addDecimalFormatting(QName name, DecimalFormatting symbols) { - if (_decimalFormats == null) _decimalFormats = new HashMap<>(); + if (_decimalFormats == null) _decimalFormats = new HashMap<String, DecimalFormatting>(); _decimalFormats.put(name.getStringRep(), symbols); } @@ -67,7 +67,7 @@ } public void addKey(QName name, Key key) { - if (_keys == null) _keys = new HashMap<>(); + if (_keys == null) _keys = new HashMap<String, Key>(); _keys.put(name.getStringRep(), key); } @@ -81,7 +81,7 @@ public Template addTemplate(Template template) { final QName name = template.getName(); - if (_templates == null) _templates = new HashMap<>(); + if (_templates == null) _templates = new HashMap<String, Template>(); return _templates.put(name.getStringRep(), template); } @@ -91,13 +91,13 @@ } public Variable addVariable(Variable variable) { - if (_variables == null) _variables = new HashMap<>(); + if (_variables == null) _variables = new HashMap<String, VariableBase>(); final String name = variable.getName().getStringRep(); return (Variable)_variables.put(name, variable); } public Param addParam(Param parameter) { - if (_variables == null) _variables = new HashMap<>(); + if (_variables == null) _variables = new HashMap<String, VariableBase>(); final String name = parameter.getName().getStringRep(); return (Param)_variables.put(name, parameter); } @@ -123,7 +123,7 @@ } public AttributeSet addAttributeSet(AttributeSet atts) { - if (_attributeSets == null) _attributeSets = new HashMap<>(); + if (_attributeSets == null) _attributeSets = new HashMap<String, AttributeSet>(); return _attributeSets.put(atts.getName().getStringRep(), atts); } @@ -181,7 +181,7 @@ * Adds an alias for a namespace prefix */ public void addPrefixAlias(String prefix, String alias) { - if (_aliases == null) _aliases = new HashMap<>(); + if (_aliases == null) _aliases = new HashMap<String, String>(); _aliases.put(prefix,alias); } @@ -202,7 +202,7 @@ if (uri == null) return; // Create a new map of exlcuded URIs if none exists - if (_excludedURI == null) _excludedURI = new HashMap<>(); + if (_excludedURI == null) _excludedURI = new HashMap<String, Integer>(); // Register the namespace URI Integer refcnt = _excludedURI.get(uri); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode.java 2017-04-26 16:05:48.559252540 +0100 @@ -70,7 +70,7 @@ protected SyntaxTreeNode _parent; // Parent node private Stylesheet _stylesheet; // Stylesheet ancestor node private Template _template; // Template ancestor node - private final List<SyntaxTreeNode> _contents = new ArrayList<>(2); // Child nodes + private final List<SyntaxTreeNode> _contents = new ArrayList<SyntaxTreeNode>(2); // Child nodes // Element description data protected QName _qname; // The element QName @@ -243,7 +243,7 @@ */ protected void addPrefixMapping(String prefix, String uri) { if (_prefixMapping == null) - _prefixMapping = new HashMap<>(); + _prefixMapping = new HashMap<String, String>(); _prefixMapping.put(prefix, uri); } @@ -435,7 +435,7 @@ final QName varOrParamName = updateScope(parser, child); if (varOrParamName != null) { if (locals == null) { - locals = new ArrayList<>(2); + locals = new ArrayList<QName>(2); } locals.add(varOrParamName); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator.java 2017-04-26 16:05:48.559252540 +0100 @@ -127,7 +127,7 @@ * times. Note that patterns whose kernels are "*", "node()" * and "@*" can between shared by test sequences. */ - private Map<Pattern, InstructionList> _preCompiled = new HashMap<>(); + private Map<Pattern, InstructionList> _preCompiled = new HashMap<Pattern, InstructionList>(); public MethodGenerator(int access_flags, Type return_type, diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MultiHashtable.java 2017-04-26 16:05:48.559252540 +0100 @@ -37,7 +37,7 @@ public final class MultiHashtable<K,V> { static final long serialVersionUID = -6151608290510033572L; - private final Map<K, Set<V>> map = new HashMap<>(); + private final Map<K, Set<V>> map = new HashMap<K, Set<V>>(); private boolean modifiable = true; /** @@ -52,7 +52,7 @@ if (modifiable) { Set<V> set = map.get(key); if (set == null) { - set = new HashSet<>(); + set = new HashSet<V>(); map.put(key, set); } set.add(value); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java 2017-04-26 16:05:48.559252540 +0100 @@ -170,7 +170,7 @@ _parser = new Parser(this, useServicesMechanism); _featureManager = featureManager; _extensionClassLoader = null; - _externalExtensionFunctions = new HashMap<>(); + _externalExtensionFunctions = new HashMap<String, Class>(); } /** @@ -316,13 +316,13 @@ */ private void reset() { _nextGType = DTM.NTYPES; - _elements = new HashMap<>(); - _attributes = new HashMap<>(); - _namespaces = new HashMap<>(); + _elements = new HashMap<String, Integer>(); + _attributes = new HashMap<String, Integer>(); + _namespaces = new HashMap<String, Integer>(); _namespaces.put("",new Integer(_nextNSType)); _namesIndex = new Vector(128); _namespaceIndex = new Vector(32); - _namespacePrefixes = new HashMap<>(); + _namespacePrefixes = new HashMap<String, Integer>(); _stylesheet = null; _parser.init(); //_variableSerial = 1; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DocumentCache.java 2017-04-26 16:05:48.559252540 +0100 @@ -169,7 +169,7 @@ _count = 0; _current = 0; _size = size; - _references = new HashMap<>(_size+2); + _references = new HashMap<String, CachedDocument>(_size+2); _URIs = new String[_size]; try { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/DOMWSFilter.java 2017-04-26 16:05:48.559252540 +0100 @@ -60,7 +60,7 @@ */ public DOMWSFilter(AbstractTranslet translet) { m_translet = translet; - m_mappings = new HashMap<>(); + m_mappings = new HashMap<DTM, short[]>(); if (translet instanceof StripFilter) { m_filter = (StripFilter) translet; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/KeyIndex.java 2017-04-26 16:05:48.559252540 +0100 @@ -59,7 +59,7 @@ /** * A mapping from a document node to the mapping between values and nodesets */ - private Map<Integer, Map> _rootToIndexMap = new HashMap<>(); + private Map<Integer, Map<String, IntegerArray>> _rootToIndexMap = new HashMap<Integer, Map<String,IntegerArray>>(); /** * The node set associated to the current value passed @@ -93,7 +93,7 @@ public void add(String value, int node, int rootNode) { if (_currentDocumentNode != rootNode) { _currentDocumentNode = rootNode; - _index = new HashMap<>(); + _index = new HashMap<String, IntegerArray>(); _rootToIndexMap.put(rootNode, _index); } @@ -180,7 +180,7 @@ Map<String, IntegerArray> index = _rootToIndexMap.get(root); if (index == null) { - index = new HashMap<>(); + index = new HashMap<String, IntegerArray>(); _rootToIndexMap.put(root, index); } else { nodes = index.get(id); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/MultiDOM.java 2017-04-26 16:05:48.559252540 +0100 @@ -56,7 +56,7 @@ private int _free; private int _size; - private Map<String, Integer> _documents = new HashMap<>(); + private Map<String, Integer> _documents = new HashMap<String, Integer>(); private final class AxisIterator extends DTMAxisIteratorBase { // constitutive data diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/dom/SAXImpl.java 2017-04-26 16:05:48.559252540 +0100 @@ -114,7 +114,7 @@ private int _namesSize = -1; // Namespace related stuff - private Map<Integer, Integer> _nsIndex = new HashMap<>(); + private Map<Integer, Integer> _nsIndex = new HashMap<Integer, Integer>(); // The initial size of the text buffer private int _size = 0; @@ -747,7 +747,7 @@ else { _document = node.getOwnerDocument(); } - _node2Ids = new HashMap<>(); + _node2Ids = new HashMap<Node, Integer>(); } } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java 2017-04-26 16:05:48.559252540 +0100 @@ -279,7 +279,7 @@ */ public void addDecimalFormat(String name, DecimalFormatSymbols symbols) { // Instanciate map for formatting symbols if needed - if (_formatSymbols == null) _formatSymbols = new HashMap<>(); + if (_formatSymbols == null) _formatSymbols = new HashMap<String, DecimalFormat>(); // The name cannot be null - use empty string instead if (name == null) name = EMPTYSTRING; @@ -468,7 +468,7 @@ * @return a KeyIndex. */ private KeyIndex buildKeyIndexHelper(String name) { - if (_keyIndexes == null) _keyIndexes = new HashMap<>(); + if (_keyIndexes == null) _keyIndexes = new HashMap<String, KeyIndex>(); KeyIndex index = _keyIndexes.get(name); if (index == null) { @@ -712,7 +712,7 @@ private Map<String, Class<?>> _auxClasses = null; public void addAuxiliaryClass(Class auxClass) { - if (_auxClasses == null) _auxClasses = new HashMap<>(); + if (_auxClasses == null) _auxClasses = new HashMap<String, Class<?>>(); _auxClasses.put(auxClass.getName(), auxClass); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2SAX.java 2017-04-26 16:05:48.559252540 +0100 @@ -58,7 +58,7 @@ private ContentHandler _sax = null; private LexicalHandler _lex = null; private SAXImpl _saxImpl = null; - private Map<String, Stack> _nsPrefixes = new HashMap<>(); + private Map<String, Stack> _nsPrefixes = new HashMap<String, Stack>(); public DOM2SAX(Node root) { _dom = root; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java 2017-04-26 16:05:48.559252540 +0100 @@ -407,7 +407,7 @@ _class = new Class[classCount]; if (classCount > 1) { - _auxClasses = new HashMap<>(); + _auxClasses = new HashMap<String, Class<?>>(); } for (int i = 0; i < classCount; i++) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java 2017-04-26 16:05:48.559252540 +0100 @@ -1189,7 +1189,7 @@ if (_isIdentity) { if (_parameters == null) { - _parameters = new HashMap<>(); + _parameters = new HashMap<String, Object>(); } _parameters.put(name, value); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/CoreDocumentImpl.java 2017-04-26 16:05:48.559252540 +0100 @@ -393,7 +393,7 @@ if (identifiers != null) { // Build a reverse mapping from element to identifier. - reversedIdentifiers = new HashMap<>(identifiers.size()); + reversedIdentifiers = new HashMap<Node, String>(identifiers.size()); for (String elementId : identifiers.keySet()) { reversedIdentifiers.put(identifiers.get(elementId), elementId); } @@ -1504,7 +1504,7 @@ // Node numbers are negative, from -1 to -n int num; if (nodeTable == null) { - nodeTable = new HashMap<>(); + nodeTable = new HashMap<Node, Integer>(); num = --nodeCounter; nodeTable.put(node, new Integer(num)); } else { @@ -1609,7 +1609,7 @@ String elementId = reversedIdentifiers.get(source); if (elementId != null) { if (identifiers == null) { - identifiers = new HashMap<>(); + identifiers = new HashMap<String, Node>(); } identifiers.put(elementId, newElement); @@ -2032,7 +2032,7 @@ } if (identifiers == null) { - identifiers = new HashMap<>(); + identifiers = new HashMap<String, Node>(); } identifiers.put(idName, element); @@ -2360,13 +2360,13 @@ } else { Map<String, UserDataRecord> t; if (nodeUserData == null) { - nodeUserData = new HashMap<>(); - t = new HashMap<>(); + nodeUserData = new HashMap<Node, Map<String,UserDataRecord>>(); + t = new HashMap<String, UserDataRecord>(); nodeUserData.put(n, t); } else { t = nodeUserData.get(n); if (t == null) { - t = new HashMap<>(); + t = new HashMap<String, UserDataRecord>(); nodeUserData.put(n, t); } } @@ -2434,7 +2434,7 @@ */ void setUserDataTable(Node n, Map<String, UserDataRecord> data) { if (nodeUserData == null) { - nodeUserData = new HashMap<>(); + nodeUserData = new HashMap<Node, Map<String,UserDataRecord>>(); } if (data != null) { @@ -2788,15 +2788,15 @@ // Convert Maps to Hashtables Hashtable<Node, Hashtable<String, UserDataRecord>> nud = null; if (nodeUserData != null) { - nud = new Hashtable<>(); + nud = new Hashtable<Node, Hashtable<String, UserDataRecord>>(); for (Map.Entry<Node, Map<String, UserDataRecord>> e : nodeUserData.entrySet()) { //e.getValue() will not be null since an entry is always put with a non-null value - nud.put(e.getKey(), new Hashtable<>(e.getValue())); + nud.put(e.getKey(), new Hashtable<String, UserDataRecord>(e.getValue())); } } - Hashtable<String, Node> ids = (identifiers == null)? null : new Hashtable<>(identifiers); - Hashtable<Node, Integer> nt = (nodeTable == null)? null : new Hashtable<>(nodeTable); + Hashtable<String, Node> ids = (identifiers == null)? null : new Hashtable<String, Node>(identifiers); + Hashtable<Node, Integer> nt = (nodeTable == null)? null : new Hashtable<Node, Integer>(nodeTable); // Write serialized fields ObjectOutputStream.PutField pf = out.putFields(); @@ -2858,13 +2858,13 @@ //convert Hashtables back to HashMaps if (nud != null) { - nodeUserData = new HashMap<>(); + nodeUserData = new HashMap<Node, Map<String, UserDataRecord>>(); for (Map.Entry<Node, Hashtable<String, UserDataRecord>> e : nud.entrySet()) { - nodeUserData.put(e.getKey(), new HashMap<>(e.getValue())); + nodeUserData.put(e.getKey(), new HashMap<String, UserDataRecord>(e.getValue())); } } - if (ids != null) identifiers = new HashMap<>(ids); - if (nt != null) nodeTable = new HashMap<>(nt); + if (ids != null) identifiers = new HashMap<String, Node>(ids); + if (nt != null) nodeTable = new HashMap<Node, Integer>(nt); } } // class CoreDocumentImpl diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/DeferredDocumentImpl.java 2017-04-26 16:05:48.563252476 +0100 @@ -2059,7 +2059,7 @@ // create Map if (identifiers == null) { - identifiers = new HashMap<>(); + identifiers = new HashMap<String, Node>(); } // save ID and its associated element diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java 2017-04-26 16:05:48.563252476 +0100 @@ -249,7 +249,7 @@ filter, entityReferenceExpansion); if (iterators == null) { - iterators = new ArrayList<>(); + iterators = new ArrayList<NodeIterator>(); } iterators.add(iterator); @@ -320,7 +320,7 @@ public Range createRange() { if (ranges == null) { - ranges = new ArrayList<>(); + ranges = new ArrayList<Range>(); } Range range = new RangeImpl(this); @@ -460,7 +460,7 @@ */ private void setEventListeners(NodeImpl n, List<LEntry> listeners) { if (eventListeners == null) { - eventListeners = new HashMap<>(); + eventListeners = new HashMap<NodeImpl, List<LEntry>>(); } if (listeners == null) { eventListeners.remove(n); @@ -551,7 +551,7 @@ List<LEntry> nodeListeners = getEventListeners(node); if(nodeListeners == null) { - nodeListeners = new ArrayList<>(); + nodeListeners = new ArrayList<LEntry>(); setEventListeners(node, nodeListeners); } nodeListeners.add(new LEntry(type, listener, useCapture)); @@ -626,7 +626,7 @@ if (nodeListeners == null) { return; } - setEventListeners(tgt, new ArrayList<>(nodeListeners)); + setEventListeners(tgt, new ArrayList<LEntry>(nodeListeners)); } /** @@ -716,7 +716,7 @@ // is issued to the Element rather than the Attr // and causes a _second_ DOMSubtreeModified in the Element's // tree. - List<Node> pv = new ArrayList<>(10); + List<Node> pv = new ArrayList<Node>(10); Node p = node; Node n = p.getParentNode(); while (n != null) { @@ -1334,14 +1334,14 @@ */ private void writeObject(ObjectOutputStream out) throws IOException { // Convert Maps to Hashtables, Lists to Vectors - Vector<NodeIterator> it = (iterators == null)? null : new Vector<>(iterators); - Vector<Range> r = (ranges == null)? null : new Vector<>(ranges); + Vector<NodeIterator> it = (iterators == null)? null : new Vector<NodeIterator>(iterators); + Vector<Range> r = (ranges == null)? null : new Vector<Range>(ranges); Hashtable<NodeImpl, Vector<LEntry>> el = null; if (eventListeners != null) { - el = new Hashtable<>(); + el = new Hashtable<NodeImpl, Vector<LEntry>>(); for (Map.Entry<NodeImpl, List<LEntry>> e : eventListeners.entrySet()) { - el.put(e.getKey(), new Vector<>(e.getValue())); + el.put(e.getKey(), new Vector<LEntry>(e.getValue())); } } @@ -1367,12 +1367,12 @@ mutationEvents = gf.get("mutationEvents", false); //convert Hashtables back to HashMaps and Vectors to Lists - if (it != null) iterators = new ArrayList<>(it); - if (r != null) ranges = new ArrayList<>(r); + if (it != null) iterators = new ArrayList<NodeIterator>(it); + if (r != null) ranges = new ArrayList<Range>(r); if (el != null) { - eventListeners = new HashMap<>(); + eventListeners = new HashMap<NodeImpl, List<LEntry>>(); for (Map.Entry<NodeImpl, Vector<LEntry>> e : el.entrySet()) { - eventListeners.put(e.getKey(), new ArrayList<>(e.getValue())); + eventListeners.put(e.getKey(), new ArrayList<LEntry>(e.getValue())); } } } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/DocumentTypeImpl.java 2017-04-26 16:05:48.563252476 +0100 @@ -478,7 +478,7 @@ public Object setUserData(String key, Object data, UserDataHandler handler) { if(userData == null) - userData = new HashMap<>(); + userData = new HashMap<String, UserDataRecord>(); if (data == null) { if (userData != null) { UserDataRecord udr = userData.remove(key); @@ -519,7 +519,7 @@ */ private void writeObject(ObjectOutputStream out) throws IOException { // Convert the HashMap to Hashtable - Hashtable<String, UserDataRecord> ud = (userData == null)? null : new Hashtable<>(userData); + Hashtable<String, UserDataRecord> ud = (userData == null)? null : new Hashtable<String, UserDataRecord>(userData); // Write serialized fields ObjectOutputStream.PutField pf = out.putFields(); @@ -553,6 +553,6 @@ (Hashtable<String, UserDataRecord>)gf.get("userData", null); //convert the Hashtable back to HashMap - if (ud != null) userData = new HashMap<>(ud); + if (ud != null) userData = new HashMap<String, UserDataRecord>(ud); } } // class DocumentTypeImpl diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/LCount.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/LCount.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/dom/LCount.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/dom/LCount.java 2017-04-26 16:05:48.563252476 +0100 @@ -37,7 +37,7 @@ class LCount { - static final java.util.Map<String, LCount> lCounts=new java.util.concurrent.ConcurrentHashMap<>(); + static final java.util.Map<String, LCount> lCounts=new java.util.concurrent.ConcurrentHashMap<String, LCount>(); public int captures=0,bubbles=0,defaults, total=0; static LCount lookup(String evtName) diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket.java 2017-04-26 16:05:48.563252476 +0100 @@ -62,7 +62,7 @@ /** Default constructor. */ public DTDGrammarBucket() { - fGrammars = new HashMap<>(); + fGrammars = new HashMap<XMLDTDDescription, DTDGrammar>(); } // <init>() // diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar.java 2017-04-26 16:05:48.563252476 +0100 @@ -210,13 +210,13 @@ // other information /** Element index mapping table. */ - private final Map<String, Integer> fElementIndexMap = new HashMap<>(); + private final Map<String, Integer> fElementIndexMap = new HashMap<String, Integer>(); /** Entity index mapping table. */ - private final Map<String, Integer> fEntityIndexMap = new HashMap<>(); + private final Map<String, Integer> fEntityIndexMap = new HashMap<String, Integer>(); /** Notation index mapping table. */ - private final Map<String, Integer> fNotationIndexMap = new HashMap<>(); + private final Map<String, Integer> fNotationIndexMap = new HashMap<String, Integer>(); // temp variables @@ -250,7 +250,7 @@ private XMLContentSpec fContentSpec = new XMLContentSpec(); /** table of XMLElementDecl */ - Map<String, XMLElementDecl> fElementDeclTab = new HashMap<>(); + Map<String, XMLElementDecl> fElementDeclTab = new HashMap<String, XMLElementDecl>(); /** Children content model operation stack. */ private short[] fOpStack = null; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.java 2017-04-26 16:05:48.563252476 +0100 @@ -38,7 +38,7 @@ static final Map<String, DatatypeValidator> fBuiltInTypes; static { - Map<String, DatatypeValidator> builtInTypes = new HashMap<>(); + Map<String, DatatypeValidator> builtInTypes = new HashMap<String, DatatypeValidator>(); DatatypeValidator dvTemp; builtInTypes.put("string", new StringDatatypeValidator()); @@ -75,7 +75,7 @@ */ @Override public Map<String, DatatypeValidator> getBuiltInTypes() { - return new HashMap<>(fBuiltInTypes); + return new HashMap<String, DatatypeValidator>(fBuiltInTypes); } }// DTDDVFactoryImpl diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11DTDDVFactoryImpl.java 2017-04-26 16:05:48.563252476 +0100 @@ -37,7 +37,7 @@ static Map<String, DatatypeValidator> XML11BUILTINTYPES; static { - Map<String, DatatypeValidator> xml11BuiltInTypes = new HashMap<>(); + Map<String, DatatypeValidator> xml11BuiltInTypes = new HashMap<String, DatatypeValidator>(); xml11BuiltInTypes.put("XML11ID", new XML11IDDatatypeValidator()); DatatypeValidator dvTemp = new XML11IDREFDatatypeValidator(); xml11BuiltInTypes.put("XML11IDREF", dvTemp); @@ -72,7 +72,7 @@ */ @Override public Map<String, DatatypeValidator> getBuiltInTypes() { - final HashMap<String, DatatypeValidator> toReturn = new HashMap<>(fBuiltInTypes); + final HashMap<String, DatatypeValidator> toReturn = new HashMap<String, DatatypeValidator>(fBuiltInTypes); toReturn.putAll(XML11BUILTINTYPES); return toReturn; } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java 2017-04-26 16:05:48.563252476 +0100 @@ -364,7 +364,7 @@ // entities /** Entities. */ - protected Map<String, Entity> fEntities = new HashMap<>(); + protected Map<String, Entity> fEntities = new HashMap<String, Entity>(); /** Entity stack. */ protected Stack fEntityStack = new Stack(); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/XMLErrorReporter.java 2017-04-26 16:05:48.563252476 +0100 @@ -192,7 +192,7 @@ // caller to specify the location of the error being // reported. -Ac - fMessageFormatters = new HashMap<>(); + fMessageFormatters = new HashMap<String, MessageFormatter>(); } // <init>() diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/ParserForXMLSchema.java 2017-04-26 16:05:48.563252476 +0100 @@ -374,8 +374,8 @@ static private Map<String, Token> ranges2 = null; static synchronized protected RangeToken getRange(String name, boolean positive) { if (ranges == null) { - ranges = new HashMap<>(); - ranges2 = new HashMap<>(); + ranges = new HashMap<String, Token>(); + ranges2 = new HashMap<String, Token>(); Token tok = Token.createRange(); setupRange(tok, SPACES); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/regex/Token.java 2017-04-26 16:05:48.563252476 +0100 @@ -593,8 +593,8 @@ } // ------------------------------------------------------ - private final static Map<String, Token> categories = new HashMap<>(); - private final static Map<String, Token> categories2 = new HashMap<>(); + private final static Map<String, Token> categories = new HashMap<String, Token>(); + private final static Map<String, Token> categories2 = new HashMap<String, Token>(); private static final String[] categoryNames = { "Cn", "Lu", "Ll", "Lt", "Lm", "Lo", "Mn", "Me", "Mc", "Nd", "Nl", "No", "Zs", "Zl", "Zp", "Cc", "Cf", null, "Co", "Cs", @@ -1445,7 +1445,7 @@ @Override void addChild(Token tok) { if (tok == null) return; - if (this.children == null) this.children = new ArrayList<>(); + if (this.children == null) this.children = new ArrayList<Token>(); if (this.type == UNION) { this.children.add(tok); return; @@ -1524,7 +1524,7 @@ } else { StringBuilder sb = new StringBuilder(); for (int i = 0; i < this.children.size(); i ++) { - sb.append(((Token)this.children.get(i)).toString(options)); + sb.append(this.children.get(i).toString(options)); } ret = new String(sb); } @@ -1552,7 +1552,7 @@ */ private void writeObject(ObjectOutputStream out) throws IOException { // Convert List to Vector - Vector<Token> vChildren = (children == null)? null : new Vector<>(children); + Vector<Token> vChildren = (children == null)? null : new Vector<Token>(children); // Write serialized fields ObjectOutputStream.PutField pf = out.putFields(); @@ -1568,7 +1568,7 @@ Vector<Token> vChildren = (Vector<Token>)gf.get("children", null); //convert Vector back to List - if (vChildren != null) children = new ArrayList<>(vChildren); + if (vChildren != null) children = new ArrayList<Token>(vChildren); } } } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java 2017-04-26 16:05:48.563252476 +0100 @@ -859,10 +859,10 @@ private SymbolTable fSymbolTable; // REVISIT: Code something better here. -Ac - private Map<String, Integer> fSymbolMapping = new HashMap<>(); + private Map<String, Integer> fSymbolMapping = new HashMap<String, Integer>(); // REVISIT: Code something better here. -Ac - private Map<Integer, String> fTokenNames = new HashMap<>(); + private Map<Integer, String> fTokenNames = new HashMap<Integer, String>(); /** * Current position in the token list. diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/SubstitutionGroupHandler.java 2017-04-26 16:05:48.563252476 +0100 @@ -176,10 +176,10 @@ // - a Vector, which contains all elements that has this element as their // substitution group affilication // - an array of OneSubGroup, which contains its substitution group before block. - Map<XSElementDecl, Object> fSubGroupsB = new HashMap<>(); + Map<XSElementDecl, Object> fSubGroupsB = new HashMap<XSElementDecl, Object>(); private static final OneSubGroup[] EMPTY_VECTOR = new OneSubGroup[0]; // The real substitution groups (after "block") - Map<XSElementDecl, XSElementDecl[]> fSubGroups = new HashMap<>(); + Map<XSElementDecl, XSElementDecl[]> fSubGroups = new HashMap<XSElementDecl, XSElementDecl[]>(); /** * clear the internal registry of substitutionGroup information diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java 2017-04-26 16:05:48.563252476 +0100 @@ -467,7 +467,7 @@ // Constructors public XSDHandler(){ - fHiddenNodes = new HashMap<>(); + fHiddenNodes = new HashMap<Node, String>(); fSchemaParser = new SchemaDOMParser(new SchemaParsingConfig()); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaValidator.java 2017-04-26 16:05:48.567252411 +0100 @@ -489,7 +489,8 @@ /** Schema Grammar Description passed, to give a chance to application to supply the Grammar */ protected final XSDDescription fXSDDescription = new XSDDescription(); - protected final Map<String, XMLSchemaLoader.LocationArray> fLocationPairs = new HashMap<>(); + protected final Map<String, XMLSchemaLoader.LocationArray> fLocationPairs = + new HashMap<String, XMLSchemaLoader.LocationArray>(); // handlers @@ -3991,7 +3992,7 @@ * elements. */ protected final Map<LocalIDKey, ValueStoreBase> - fIdentityConstraint2ValueStoreMap = new HashMap<>(); + fIdentityConstraint2ValueStoreMap = new HashMap<LocalIDKey, ValueStoreBase>(); // sketch of algorithm: // - when a constraint is first encountered, its @@ -4013,9 +4014,9 @@ // the fGlobalIDConstraintMap contains descendants+self. // keyrefs can only match descendants+self. protected final Stack<Map<IdentityConstraint, ValueStoreBase>> - fGlobalMapStack = new Stack<>(); + fGlobalMapStack = new Stack<Map<IdentityConstraint, ValueStoreBase>>(); protected final Map<IdentityConstraint, ValueStoreBase> - fGlobalIDConstraintMap = new HashMap<>(); + fGlobalIDConstraintMap = new HashMap<IdentityConstraint, ValueStoreBase>(); // // Constructors diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderFactoryImpl.java 2017-04-26 16:05:48.567252411 +0100 @@ -102,7 +102,7 @@ // Create the Map if none existed before if (attributes == null) { - attributes = new HashMap<>(); + attributes = new HashMap<String, Object>(); } attributes.put(name, value); @@ -191,7 +191,7 @@ public void setFeature(String name, boolean value) throws ParserConfigurationException { if (features == null) { - features = new HashMap<>(); + features = new HashMap<String, Boolean>(); } // If this is the secure processing feature, save it then return. if (name.equals(XMLConstants.FEATURE_SECURE_PROCESSING)) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/jaxp/SAXParserFactoryImpl.java 2017-04-26 16:05:48.567252411 +0100 @@ -186,7 +186,7 @@ private void putInFeatures(String name, boolean value){ if (features == null) { - features = new HashMap<>(); + features = new HashMap<String, Boolean>(); } features.put(name, value ? Boolean.TRUE : Boolean.FALSE); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/parsers/XMLGrammarPreparser.java 2017-04-26 16:05:48.567252411 +0100 @@ -85,7 +85,7 @@ private static final Map<String, String> KNOWN_LOADERS; static { - Map<String, String> loaders = new HashMap<>(); + Map<String, String> loaders = new HashMap<String, String>(); loaders.put(XMLGrammarDescription.XML_SCHEMA, "com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader"); loaders.put(XMLGrammarDescription.XML_DTD, @@ -130,7 +130,7 @@ public XMLGrammarPreparser (SymbolTable symbolTable) { fSymbolTable = symbolTable; - fLoaders = new HashMap<>(); + fLoaders = new HashMap<String, XMLGrammarLoader>(); fErrorReporter = new XMLErrorReporter(); setLocale(Locale.getDefault()); fEntityResolver = new XMLEntityManager(); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/util/AugmentationsImpl.java 2017-04-26 16:05:48.567252411 +0100 @@ -241,7 +241,7 @@ } class LargeContainer extends AugmentationsItemsContainer { - final Map<Object, Object> fAugmentations = new HashMap<>(); + final Map<Object, Object> fAugmentations = new HashMap<Object, Object>(); public Object getItem(Object key) { return fAugmentations.get(key); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/util/DOMErrorHandlerWrapper.java 2017-04-26 16:05:48.567252411 +0100 @@ -294,7 +294,7 @@ // REVISIT: do well-formedness issues involving XML declaration <?xml ... ?> need to be added to hash table (no XML declaration node in DOM, but Document includes xmlEncoding, xmlStandalone, xmlVersion, etc. - Map<XMLErrorCode, String> aDOMErrorTypeTable = new HashMap<>(); + Map<XMLErrorCode, String> aDOMErrorTypeTable = new HashMap<XMLErrorCode, String>(); aDOMErrorTypeTable.put(new XMLErrorCode(XMLMessageFormatter.XML_DOMAIN, "InvalidCharInCDSect"), "wf-invalid-character"); aDOMErrorTypeTable.put(new XMLErrorCode(XMLMessageFormatter.XML_DOMAIN, "InvalidCharInContent"), "wf-invalid-character"); aDOMErrorTypeTable.put(new XMLErrorCode(XMLMessageFormatter.XML_DOMAIN, "TwoColonsInQName"), "wf-invalid-character-in-node-name"); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/util/EncodingMap.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/util/EncodingMap.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/util/EncodingMap.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/util/EncodingMap.java 2017-04-26 16:05:48.567252411 +0100 @@ -489,8 +489,8 @@ // static { - Map<String, String> aIANA2JavaMap = new HashMap<>(); - Map<String, String> aJava2IANAMap = new HashMap<>(); + Map<String, String> aIANA2JavaMap = new HashMap<String, String>(); + Map<String, String> aJava2IANAMap = new HashMap<String, String>(); // add IANA to Java encoding mappings. aIANA2JavaMap.put("BIG5", "Big5"); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java 2017-04-26 16:05:48.567252411 +0100 @@ -144,7 +144,7 @@ Map<String, Integer> cache; if (caches[index] == null) { - cache = new HashMap<>(10); + cache = new HashMap<String, Integer>(10); caches[index] = cache; } else { cache = caches[index]; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/CustomStringPool.java 2017-04-26 16:05:48.567252411 +0100 @@ -47,7 +47,7 @@ */ public class CustomStringPool extends DTMStringPool { - final Map<String, Integer> m_stringToInt = new HashMap<>(); + final Map<String, Integer> m_stringToInt = new HashMap<String, Integer>(); public static final int NULL = -1; public CustomStringPool() { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2DTM.java 2017-04-26 16:05:48.567252411 +0100 @@ -162,7 +162,7 @@ * This table holds the ID string to node associations, for * XML IDs. */ - protected Map<String, Integer> m_idAttributes = new HashMap<>(); + protected Map<String, Integer> m_idAttributes = new HashMap<String, Integer>(); /** * fixed dom-style names. diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/CatalogEntry.java 2017-04-26 16:05:48.567252411 +0100 @@ -59,7 +59,7 @@ * (e.g., 'BASE' or 'SYSTEM') to their type (1, 2, etc.). * Names are case sensitive. */ - protected static final Map<String, Integer> entryTypes = new ConcurrentHashMap<>(); + protected static final Map<String, Integer> entryTypes = new ConcurrentHashMap<String, Integer>(); /** The entryTypes vector maps catalog entry types to the number of arguments they're required to have. */ diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/Catalog.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/Catalog.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/Catalog.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/Catalog.java 2017-04-26 16:05:48.567252411 +0100 @@ -341,7 +341,7 @@ * vector. This allows the Catalog to quickly locate the reader * for a particular MIME type.</p> */ - protected Map<String, Integer> readerMap = new HashMap<>(); + protected Map<String, Integer> readerMap = new HashMap<String, Integer>(); /** * A vector of CatalogReaders. diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/helpers/BootstrapResolver.java 2017-04-26 16:05:48.567252411 +0100 @@ -63,13 +63,13 @@ public static final String xmlCatalogSysId = "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"; /** Private hash used for public identifiers. */ - private final Map<String, String> publicMap = new HashMap<>(); + private final Map<String, String> publicMap = new HashMap<String, String>(); /** Private hash used for system identifiers. */ - private final Map<String, String> systemMap = new HashMap<>(); + private final Map<String, String> systemMap = new HashMap<String, String>(); /** Private hash used for URIs. */ - private final Map<String, String> uriMap = new HashMap<>(); + private final Map<String, String> uriMap = new HashMap<String, String>(); /** Constructor. */ public BootstrapResolver() { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/DOMCatalogReader.java 2017-04-26 16:05:48.567252411 +0100 @@ -78,7 +78,7 @@ * or "{namespaceuri}elementname". The former is used if the * namespace URI is null.</p> */ - protected Map<String, String> namespaceMap = new HashMap<>(); + protected Map<String, String> namespaceMap = new HashMap<String, String>(); /** * Add a new parser to the reader. diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/resolver/readers/SAXCatalogReader.java 2017-04-26 16:05:48.567252411 +0100 @@ -89,7 +89,7 @@ * or "{namespaceuri}elementname". The former is used if the * namespace URI is null.</p> */ - protected Map<String, String> namespaceMap = new HashMap<>(); + protected Map<String, String> namespaceMap = new HashMap<String, String>(); /** The parser in use for the current catalog. */ private SAXCatalogParser saxParser = null; diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serialize/BaseMarkupSerializer.java 2017-04-26 16:05:48.567252411 +0100 @@ -820,7 +820,7 @@ throws SAXException { if ( _prefixes == null ) - _prefixes = new HashMap<>(); + _prefixes = new HashMap<String, String>(); _prefixes.put( uri, prefix == null ? "" : prefix ); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serialize/HTMLdtd.java 2017-04-26 16:05:48.567252411 +0100 @@ -371,8 +371,8 @@ if ( _byName != null ) return; try { - _byName = new HashMap<>(); - _byChar = new HashMap<>(); + _byName = new HashMap<String, Integer>(); + _byChar = new HashMap<Integer, String>(); is = HTMLdtd.class.getResourceAsStream( ENTITIES_RESOURCE ); if ( is == null ) { throw new RuntimeException( @@ -471,7 +471,7 @@ static { - _elemDefs = new HashMap<>(); + _elemDefs = new HashMap<String, Integer>(); defineElement( "ADDRESS", CLOSE_P ); defineElement( "AREA", EMPTY ); defineElement( "BASE", EMPTY | ALLOWED_HEAD ); @@ -525,7 +525,7 @@ defineElement( "TR", ELEM_CONTENT | OPT_CLOSING | CLOSE_TABLE ); defineElement( "UL", ELEM_CONTENT | CLOSE_P ); - _boolAttrs = new HashMap<>(); + _boolAttrs = new HashMap<String, String[]>(); defineBoolean( "AREA", "href" ); defineBoolean( "BUTTON", "disabled" ); defineBoolean( "DIR", "compact" ); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/AttributesImplSerializer.java 2017-04-26 16:05:48.567252411 +0100 @@ -48,7 +48,7 @@ * The keys to the hashtable to find the index are either * "prefix:localName" or "{uri}localName". */ - private final Map<String, Integer> m_indexFromQName = new HashMap<>(); + private final Map<String, Integer> m_indexFromQName = new HashMap<String, Integer>(); private final StringBuffer m_buff = new StringBuffer(); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2017-04-26 15:02:11.628824788 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2017-04-26 16:05:48.567252411 +0100 @@ -297,8 +297,8 @@ // private final static class EncodingInfos { // These maps are final and not modified after initialization. - private final Map<String, EncodingInfo> _encodingTableKeyJava = new HashMap<>(); - private final Map<String, EncodingInfo> _encodingTableKeyMime = new HashMap<>(); + private final Map<String, EncodingInfo> _encodingTableKeyJava = new HashMap<String, EncodingInfo>(); + private final Map<String, EncodingInfo> _encodingTableKeyMime = new HashMap<String, EncodingInfo>(); // This map will be added to after initialization: make sure it's // thread-safe. This map should not be used frequently - only in cases // where the mapping requested was not declared in the Encodings.properties @@ -449,7 +449,7 @@ // create instances of EncodingInfo from the loaded mapping Enumeration keys = props.keys(); - Map<String, EncodingInfo> canonicals = new HashMap<>(); + Map<String, EncodingInfo> canonicals = new HashMap<String, EncodingInfo>(); while (keys.hasMoreElements()) { final String javaName = (String) keys.nextElement(); final String[] mimes = parseMimeTypes(props.getProperty(javaName)); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/utils/DOMHelper.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/utils/DOMHelper.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/utils/DOMHelper.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/utils/DOMHelper.java 2017-04-26 16:05:48.567252411 +0100 @@ -563,7 +563,7 @@ /** * An experiment for the moment. */ - Map<Node, NSInfo> m_NSInfos = new HashMap<>(); + Map<Node, NSInfo> m_NSInfos = new HashMap<Node, NSInfo>(); /** Object to put into the m_NSInfos table that tells that a node has not been * processed, but has xmlns namespace decls. */ diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/utils/ElemDesc.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/utils/ElemDesc.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/utils/ElemDesc.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/utils/ElemDesc.java 2017-04-26 16:05:48.567252411 +0100 @@ -159,7 +159,7 @@ { if (null == m_attrs) - m_attrs = new HashMap<>(); + m_attrs = new HashMap<String, Integer>(); m_attrs.put(name, flags); } diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xpath/internal/compiler/Keywords.java openjdk-boot/jaxp/src/com/sun/org/apache/xpath/internal/compiler/Keywords.java --- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xpath/internal/compiler/Keywords.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/org/apache/xpath/internal/compiler/Keywords.java 2017-04-26 16:05:48.567252411 +0100 @@ -333,10 +333,10 @@ public static final String FUNC_DOCLOCATION_STRING = "document-location"; static { - Map<String, Integer> keywords = new HashMap<>(); - Map<String, Integer> axisnames = new HashMap<>(); - Map<String, Integer> nodetests = new HashMap<>(); - Map<String, Integer> nodetypes = new HashMap<>(); + Map<String, Integer> keywords = new HashMap<String, Integer>(); + Map<String, Integer> axisnames = new HashMap<String, Integer>(); + Map<String, Integer> nodetests = new HashMap<String, Integer>(); + Map<String, Integer> nodetypes = new HashMap<String, Integer>(); axisnames.put(FROM_ANCESTORS_STRING, OpCodes.FROM_ANCESTORS); axisnames.put(FROM_ANCESTORS_OR_SELF_STRING, OpCodes.FROM_ANCESTORS_OR_SELF); diff -Nru openjdk-boot.orig/jaxp/src/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java openjdk-boot/jaxp/src/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java --- openjdk-boot.orig/jaxp/src/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/xml/internal/stream/dtd/nonvalidating/DTDGrammar.java 2017-04-26 16:05:48.571252346 +0100 @@ -140,7 +140,7 @@ private int fAttributeDeclNextAttributeDeclIndex[][] = new int[INITIAL_CHUNK_COUNT][]; /** Element index mapping table. */ - private final Map<String, Integer> fElementIndexMap = new HashMap<>(); + private final Map<String, Integer> fElementIndexMap = new HashMap<String, Integer>(); /** Temporary qualified name. */ private final QName fQName = new QName(); @@ -156,7 +156,7 @@ /** table of XMLElementDecl */ - Map<String, XMLElementDecl> fElementDeclTab = new HashMap<>(); + Map<String, XMLElementDecl> fElementDeclTab = new HashMap<String, XMLElementDecl>(); /** Default constructor. */ public DTDGrammar(SymbolTable symbolTable) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/xml/internal/stream/XMLEntityStorage.java openjdk-boot/jaxp/src/com/sun/xml/internal/stream/XMLEntityStorage.java --- openjdk-boot.orig/jaxp/src/com/sun/xml/internal/stream/XMLEntityStorage.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/com/sun/xml/internal/stream/XMLEntityStorage.java 2017-04-26 16:05:48.571252346 +0100 @@ -63,7 +63,7 @@ protected boolean fWarnDuplicateEntityDef; /** Entities. */ - protected Map<String, Entity> fEntities = new HashMap<>(); + protected Map<String, Entity> fEntities = new HashMap<String, Entity>(); protected Entity.ScannedEntity fCurrentEntity ; diff -Nru openjdk-boot.orig/jaxp/src/org/xml/sax/helpers/NamespaceSupport.java openjdk-boot/jaxp/src/org/xml/sax/helpers/NamespaceSupport.java --- openjdk-boot.orig/jaxp/src/org/xml/sax/helpers/NamespaceSupport.java 2017-04-18 02:46:25.000000000 +0100 +++ openjdk-boot/jaxp/src/org/xml/sax/helpers/NamespaceSupport.java 2017-04-26 16:05:48.571252346 +0100 @@ -465,7 +465,7 @@ */ public Enumeration getPrefixes (String uri) { - List<String> prefixes = new ArrayList<>(); + List<String> prefixes = new ArrayList<String>(); Enumeration allPrefixes = getPrefixes(); while (allPrefixes.hasMoreElements()) { String prefix = (String)allPrefixes.nextElement(); @@ -621,7 +621,7 @@ copyTables(); } if (declarations == null) { - declarations = new ArrayList<>(); + declarations = new ArrayList<String>(); } prefix = prefix.intern(); @@ -703,7 +703,7 @@ if ("".equals(prefix)) { uri = defaultNS; } else { - uri = (String)prefixTable.get(prefix); + uri = prefixTable.get(prefix); } if (uri == null || (!isAttribute && "xmlns".equals (prefix))) { @@ -735,7 +735,7 @@ } else if (prefixTable == null) { return null; } else { - return (String)prefixTable.get(prefix); + return prefixTable.get(prefix); } } @@ -755,7 +755,7 @@ if (uriTable == null) { return null; } else { - return (String)uriTable.get(uri); + return uriTable.get(uri); } } @@ -809,17 +809,17 @@ private void copyTables () { if (prefixTable != null) { - prefixTable = new HashMap<>(prefixTable); + prefixTable = new HashMap<String, String>(prefixTable); } else { - prefixTable = new HashMap<>(); + prefixTable = new HashMap<String, String>(); } if (uriTable != null) { - uriTable = new HashMap<>(uriTable); + uriTable = new HashMap<String, String>(uriTable); } else { - uriTable = new HashMap<>(); + uriTable = new HashMap<String, String>(); } - elementNameTable = new HashMap<>(); - attributeNameTable = new HashMap<>(); + elementNameTable = new HashMap<String, String[]>(); + attributeNameTable = new HashMap<String, String[]>(); declSeen = true; } diff -Nru openjdk-boot.orig/jdk/src/macosx/bundle/appbundler/src/com/oracle/appbundler/AppBundlerTask.java openjdk-boot/jdk/src/macosx/bundle/appbundler/src/com/oracle/appbundler/AppBundlerTask.java --- openjdk-boot.orig/jdk/src/macosx/bundle/appbundler/src/com/oracle/appbundler/AppBundlerTask.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/macosx/bundle/appbundler/src/com/oracle/appbundler/AppBundlerTask.java 2017-04-26 16:05:48.571252346 +0100 @@ -68,10 +68,10 @@ // JVM info properties private File runtime = null; private String mainClassName = null; - private ArrayList<File> classPath = new ArrayList<>(); - private ArrayList<File> nativeLibraries = new ArrayList<>(); - private ArrayList<String> options = new ArrayList<>(); - private ArrayList<String> arguments = new ArrayList<>(); + private ArrayList<File> classPath = new ArrayList<File>(); + private ArrayList<File> nativeLibraries = new ArrayList<File>(); + private ArrayList<String> options = new ArrayList<String>(); + private ArrayList<String> arguments = new ArrayList<String>(); public static final String EXECUTABLE_NAME = "JavaAppLauncher"; public static final String DEFAULT_ICON_NAME = "GenericApp.icns"; diff -Nru openjdk-boot.orig/jdk/src/macosx/classes/com/apple/laf/AquaPainter.java openjdk-boot/jdk/src/macosx/classes/com/apple/laf/AquaPainter.java --- openjdk-boot.orig/jdk/src/macosx/classes/com/apple/laf/AquaPainter.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/macosx/classes/com/apple/laf/AquaPainter.java 2017-04-26 16:05:48.571252346 +0100 @@ -41,7 +41,7 @@ abstract class AquaPainter <T extends JRSUIState> { static <T extends JRSUIState> AquaPainter<T> create(final T state) { - return new AquaSingleImagePainter<>(state); + return new AquaSingleImagePainter<T>(state); } static <T extends JRSUIState> AquaPainter<T> create(final T state, final int minWidth, final int minHeight, final int westCut, final int eastCut, final int northCut, final int southCut) { @@ -62,7 +62,7 @@ } static <T extends JRSUIState> AquaPainter<T> create(final T state, final NineSliceMetricsProvider metricsProvider) { - return new AquaNineSlicingImagePainter<>(state, metricsProvider); + return new AquaNineSlicingImagePainter<T>(state, metricsProvider); } abstract void paint(Graphics2D g, T stateToPaint); @@ -103,7 +103,7 @@ AquaNineSlicingImagePainter(final T state, final NineSliceMetricsProvider metricsProvider) { super(new JRSUIControl(false), state); this.metricsProvider = metricsProvider; - slicedControlImages = new HashMap<>(); + slicedControlImages = new HashMap<T, RecyclableJRSUISliceImageControl>(); } @Override diff -Nru openjdk-boot.orig/jdk/src/macosx/classes/com/apple/laf/AquaUtils.java openjdk-boot/jdk/src/macosx/classes/com/apple/laf/AquaUtils.java --- openjdk-boot.orig/jdk/src/macosx/classes/com/apple/laf/AquaUtils.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/macosx/classes/com/apple/laf/AquaUtils.java 2017-04-26 16:05:48.571252346 +0100 @@ -210,7 +210,7 @@ private Map<K, V> refs; V get(final K key) { - if (refs == null) refs = new HashMap<>(); + if (refs == null) refs = new HashMap<K, V>(); final V cachedValue = refs.get(key); if (cachedValue != null) return cachedValue; diff -Nru openjdk-boot.orig/jdk/src/macosx/classes/com/apple/laf/ImageCache.java openjdk-boot/jdk/src/macosx/classes/com/apple/laf/ImageCache.java --- openjdk-boot.orig/jdk/src/macosx/classes/com/apple/laf/ImageCache.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/macosx/classes/com/apple/laf/ImageCache.java 2017-04-26 16:05:48.571252346 +0100 @@ -41,7 +41,7 @@ */ final class ImageCache { // Ordered Map keyed by args hash, ordered by most recent accessed entry. - private final LinkedHashMap<Integer, PixelCountSoftReference> map = new LinkedHashMap<>(16, 0.75f, true); + private final LinkedHashMap<Integer, PixelCountSoftReference> map = new LinkedHashMap<Integer, PixelCountSoftReference>(16, 0.75f, true); // Maximum number of pixels to cache, this is used if maxCount private final int maxPixelCount; @@ -51,7 +51,7 @@ // Lock for concurrent access to map private final ReadWriteLock lock = new ReentrantReadWriteLock(); // Reference queue for tracking lost softreferences to images in the cache - private final ReferenceQueue<Image> referenceQueue = new ReferenceQueue<>(); + private final ReferenceQueue<Image> referenceQueue = new ReferenceQueue<Image>(); // Singleton Instance private static final RecyclableSingleton<ImageCache> instance = new RecyclableSingleton<ImageCache>() { diff -Nru openjdk-boot.orig/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java openjdk-boot/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java --- openjdk-boot.orig/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java 2017-04-26 16:05:48.571252346 +0100 @@ -88,7 +88,7 @@ private native void deregisterDisplayReconfiguration(long context); /** Available CoreGraphics displays. */ - private final Map<Integer, CGraphicsDevice> devices = new HashMap<>(5); + private final Map<Integer, CGraphicsDevice> devices = new HashMap<Integer, CGraphicsDevice>(5); /** Reference to the display reconfiguration callback context. */ private final long displayReconfigContext; @@ -143,7 +143,7 @@ */ private void initDevices() { synchronized (this) { - final Map<Integer, CGraphicsDevice> old = new HashMap<>(devices); + final Map<Integer, CGraphicsDevice> old = new HashMap<Integer, CGraphicsDevice>(devices); devices.clear(); int mainID = getMainDisplayID(); diff -Nru openjdk-boot.orig/jdk/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java openjdk-boot/jdk/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java --- openjdk-boot.orig/jdk/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java 2017-04-26 16:05:48.571252346 +0100 @@ -86,7 +86,7 @@ fd1 = (int)fds; kqueueWrapper = new KQueueArrayWrapper(); kqueueWrapper.initInterrupt(fd0, fd1); - fdMap = new HashMap<>(); + fdMap = new HashMap<Integer,MapEntry>(); totalChannels = 1; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2017-04-26 16:05:48.571252346 +0100 @@ -63,9 +63,10 @@ */ public final class DocumentHandler extends DefaultHandler { private final AccessControlContext acc = AccessController.getContext(); - private final Map<String, Class<? extends ElementHandler>> handlers = new HashMap<>(); - private final Map<String, Object> environment = new HashMap<>(); - private final List<Object> objects = new ArrayList<>(); + private final Map<String, Class<? extends ElementHandler>> handlers = + new HashMap<String, Class<? extends ElementHandler>>(); + private final Map<String, Object> environment = new HashMap<String, Object>(); + private final List<Object> objects = new ArrayList<Object>(); private Reference<ClassLoader> loader; private ExceptionListener listener; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2017-04-26 16:05:48.571252346 +0100 @@ -46,7 +46,7 @@ */ public final class TypeResolver { - private static final WeakCache<Type, Map<Type, Type>> CACHE = new WeakCache<>(); + private static final WeakCache<Type, Map<Type, Type>> CACHE = new WeakCache<Type, Map<Type, Type>>(); /** * Replaces the given {@code type} in an inherited method @@ -181,7 +181,7 @@ synchronized (CACHE) { map = CACHE.get(actual); if (map == null) { - map = new HashMap<>(); + map = new HashMap<Type, Type>(); prepare(map, actual); CACHE.put(actual, map); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/util/Cache.java openjdk-boot/jdk/src/share/classes/com/sun/beans/util/Cache.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/util/Cache.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/beans/util/Cache.java 2017-04-26 16:05:48.571252346 +0100 @@ -45,7 +45,7 @@ private final Kind keyKind; // a reference kind for the cache keys private final Kind valueKind; // a reference kind for the cache values - private final ReferenceQueue<Object> queue = new ReferenceQueue<>(); // queue for references to remove + private final ReferenceQueue<Object> queue = new ReferenceQueue<Object>(); // queue for references to remove private volatile CacheEntry<K,V>[] table = newTable(1 << 3); // table's length MUST be a power of two private int threshold = 6; // the next size value at which to resize @@ -126,7 +126,7 @@ } V value = create(key); Objects.requireNonNull(value, "value"); - this.table[index] = new CacheEntry<>(hash, key, value, this.table[index]); + this.table[index] = new CacheEntry<K,V>(hash, key, value, this.table[index]); if (++this.size >= this.threshold) { if (this.table.length == MAXIMUM_CAPACITY) { this.threshold = Integer.MAX_VALUE; @@ -405,21 +405,21 @@ public static enum Kind { STRONG { <T> Ref<T> create(Object owner, T value, ReferenceQueue<? super T> queue) { - return new Strong<>(owner, value); + return new Strong<T>(owner, value); } }, SOFT { <T> Ref<T> create(Object owner, T referent, ReferenceQueue<? super T> queue) { return (referent == null) - ? new Strong<>(owner, referent) - : new Soft<>(owner, referent, queue); + ? new Strong<T>(owner, referent) + : new Soft<T>(owner, referent, queue); } }, WEAK { <T> Ref<T> create(Object owner, T referent, ReferenceQueue<? super T> queue) { return (referent == null) - ? new Strong<>(owner, referent) - : new Weak<>(owner, referent, queue); + ? new Strong<T>(owner, referent) + : new Weak<T>(owner, referent, queue); } }; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2017-04-26 16:05:48.571252346 +0100 @@ -103,9 +103,9 @@ return this.def.compareTo(that.def); } - private static final Map<List<Attribute>, List<Attribute>> canonLists = new HashMap<>(); - private static final Map<Layout, Attribute> attributes = new HashMap<>(); - private static final Map<Layout, Attribute> standardDefs = new HashMap<>(); + private static final Map<List<Attribute>, List<Attribute>> canonLists = new HashMap<List<Attribute>, List<Attribute>>(); + private static final Map<Layout, Attribute> attributes = new HashMap<Layout, Attribute>(); + private static final Map<Layout, Attribute> standardDefs = new HashMap<Layout, Attribute>(); // Canonicalized lists of trivial attrs (Deprecated, etc.) // are used by trimToSize, in order to reduce footprint @@ -115,7 +115,7 @@ synchronized (canonLists) { List<Attribute> cl = canonLists.get(al); if (cl == null) { - cl = new ArrayList<>(al.size()); + cl = new ArrayList<Attribute>(al.size()); cl.addAll(al); cl = Collections.unmodifiableList(cl); canonLists.put(al, cl); @@ -336,9 +336,9 @@ public void addAttribute(Attribute a) { if (attributes == null) - attributes = new ArrayList<>(3); + attributes = new ArrayList<Attribute>(3); else if (!(attributes instanceof ArrayList)) - attributes = new ArrayList<>(attributes); // unfreeze it + attributes = new ArrayList<Attribute>(attributes); // unfreeze it attributes.add(a); } @@ -346,7 +346,7 @@ if (attributes == null) return null; if (!attributes.contains(a)) return null; if (!(attributes instanceof ArrayList)) - attributes = new ArrayList<>(attributes); // unfreeze it + attributes = new ArrayList<Attribute>(attributes); // unfreeze it attributes.remove(a); return a; } @@ -838,7 +838,7 @@ */ static //private Layout.Element[] tokenizeLayout(Layout self, int curCble, String layout) { - List<Layout.Element> col = new ArrayList<>(layout.length()); + List<Layout.Element> col = new ArrayList<Layout.Element>(layout.length()); tokenizeLayout(self, curCble, layout, col); Layout.Element[] res = new Layout.Element[col.size()]; col.toArray(res); @@ -903,7 +903,7 @@ case 'T': // union: 'T' any_int union_case* '(' ')' '[' body ']' kind = EK_UN; i = tokenizeSInt(e, layout, i); - List<Layout.Element> cases = new ArrayList<>(); + List<Layout.Element> cases = new ArrayList<Layout.Element>(); for (;;) { // Keep parsing cases until we hit the default case. if (layout.charAt(i++) != '(') @@ -1057,7 +1057,7 @@ } static //private String[] splitBodies(String layout) { - List<String> bodies = new ArrayList<>(); + List<String> bodies = new ArrayList<String>(); // Parse several independent layout bodies: "[foo][bar]...[baz]" for (int i = 0; i < layout.length(); i++) { if (layout.charAt(i++) != '[') diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2017-04-26 15:02:12.588809363 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2017-04-26 16:05:48.571252346 +0100 @@ -257,7 +257,7 @@ assert(basicCodings[_meta_default] == null); assert(basicCodings[_meta_canon_min] != null); assert(basicCodings[_meta_canon_max] != null); - Map<Coding, Integer> map = new HashMap<>(); + Map<Coding, Integer> map = new HashMap<Coding, Integer>(); for (int i = 0; i < basicCodings.length; i++) { Coding c = basicCodings[i]; if (c == null) continue; @@ -1067,8 +1067,8 @@ // Bootstrap support for CPRefBands. These are needed to record // intended CP indexes, before the CP has been created. - private final List<CPRefBand> allKQBands = new ArrayList<>(); - private List<Object[]> needPredefIndex = new ArrayList<>(); + private final List<CPRefBand> allKQBands = new ArrayList<CPRefBand>(); + private List<Object[]> needPredefIndex = new ArrayList<Object[]>(); int encodeRef(Entry e, Index ix) { @@ -1705,7 +1705,7 @@ protected int attrClassFileVersionMask; // Mapping from Attribute.Layout to Band[] (layout element bands). - protected Map<Attribute.Layout, Band[]> attrBandTable = new HashMap<>(); + protected Map<Attribute.Layout, Band[]> attrBandTable = new HashMap<Attribute.Layout, Band[]>(); // Well-known attributes: protected final Attribute.Layout attrCodeEmpty; @@ -1714,16 +1714,16 @@ protected final Attribute.Layout attrConstantValue; // Mapping from Attribute.Layout to Integer (inverse of attrDefs) - Map<Attribute.Layout, Integer> attrIndexTable = new HashMap<>(); + Map<Attribute.Layout, Integer> attrIndexTable = new HashMap<Attribute.Layout, Integer>(); // Mapping from attribute index (<32 are flag bits) to attributes. protected List<List<Attribute.Layout>> attrDefs = - new FixedList<>(ATTR_CONTEXT_LIMIT); + new FixedList<List<Attribute.Layout>>(ATTR_CONTEXT_LIMIT); { for (int i = 0; i < ATTR_CONTEXT_LIMIT; i++) { assert(attrIndexLimit[i] == 0); attrIndexLimit[i] = 32; // just for the sake of predefs. - attrDefs.set(i, new ArrayList<>(Collections.nCopies( + attrDefs.set(i, new ArrayList<Attribute.Layout>(Collections.nCopies( attrIndexLimit[i], (Attribute.Layout)null))); } @@ -1913,7 +1913,8 @@ protected List<Attribute.Layout> getPredefinedAttrs(int ctype) { assert(attrIndexLimit[ctype] != 0); - List<Attribute.Layout> res = new ArrayList<>(attrIndexLimit[ctype]); + List<Attribute.Layout> res = + new ArrayList<Attribute.Layout>(attrIndexLimit[ctype]); // Remove nulls and non-predefs. for (int ai = 0; ai < attrIndexLimit[ctype]; ai++) { if (testBit(attrDefSeen[ctype], 1L<<ai)) continue; @@ -2537,7 +2538,7 @@ // DEBUG ONLY: Record something about the band order. boolean notePrevForAssert(Band b, Band p) { if (prevForAssertMap == null) - prevForAssertMap = new HashMap<>(); + prevForAssertMap = new HashMap<Band, Band>(); prevForAssertMap.put(b, p); return true; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2017-04-26 15:02:11.520826524 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2017-04-26 16:05:48.571252346 +0100 @@ -466,7 +466,7 @@ void readInnerClasses(Class cls) throws IOException { int nc = readUnsignedShort(); - ArrayList<InnerClass> ics = new ArrayList<>(nc); + ArrayList<InnerClass> ics = new ArrayList<InnerClass>(nc); for (int i = 0; i < nc; i++) { InnerClass ic = new InnerClass(readClassRef(), diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2017-04-26 16:05:48.571252346 +0100 @@ -743,9 +743,9 @@ // Steps 1/2/3 are interdependent, and may be iterated. // Steps 4 and 5 may be decided independently afterward. int[] LValuesCoded = PopulationCoding.LValuesCoded; - List<Coding> bestFits = new ArrayList<>(); - List<Coding> fullFits = new ArrayList<>(); - List<Coding> longFits = new ArrayList<>(); + List<Coding> bestFits = new ArrayList<Coding>(); + List<Coding> fullFits = new ArrayList<Coding>(); + List<Coding> longFits = new ArrayList<Coding>(); final int PACK_TO_MAX_S = 1; if (bestPopFVC <= 255) { bestFits.add(BandStructure.BYTE1); @@ -785,7 +785,7 @@ } } } - List<Coding> allFits = new ArrayList<>(); + List<Coding> allFits = new ArrayList<Coding>(); for (Iterator<Coding> i = bestFits.iterator(), j = fullFits.iterator(), k = longFits.iterator(); @@ -1230,10 +1230,10 @@ Histogram hist = getValueHistogram(); int fVlen = stressLen(hist.getTotalLength()); if (fVlen == 0) return coding; - List<Integer> popvals = new ArrayList<>(); + List<Integer> popvals = new ArrayList<Integer>(); if (stress.nextBoolean()) { // Build the population from the value list. - Set<Integer> popset = new HashSet<>(); + Set<Integer> popset = new HashSet<Integer>(); for (int i = start; i < end; i++) { if (popset.add(values[i])) popvals.add(values[i]); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2017-04-26 16:05:48.571252346 +0100 @@ -402,7 +402,7 @@ private static Map<Coding, Coding> codeMap; private static synchronized Coding of(int B, int H, int S, int del) { - if (codeMap == null) codeMap = new HashMap<>(); + if (codeMap == null) codeMap = new HashMap<Coding, Coding>(); Coding x0 = new Coding(B, H, S, del); Coding x1 = codeMap.get(x0); if (x1 == null) codeMap.put(x0, x1 = x0); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2017-04-26 16:05:48.571252346 +0100 @@ -917,7 +917,7 @@ public static Index[] partition(Index ix, int[] keys) { // %%% Should move this into class Index. - List<List<Entry>> parts = new ArrayList<>(); + List<List<Entry>> parts = new ArrayList<List<Entry>>(); Entry[] cpMap = ix.cpMap; assert(keys.length == cpMap.length); for (int i = 0; i < keys.length; i++) { @@ -928,7 +928,7 @@ } List<Entry> part = parts.get(key); if (part == null) { - parts.set(key, part = new ArrayList<>()); + parts.set(key, part = new ArrayList<Entry>()); } part.add(cpMap[i]); } @@ -1137,7 +1137,7 @@ void completeReferencesIn(Set<Entry> cpRefs, boolean flattenSigs) { cpRefs.remove(null); for (ListIterator<Entry> work = - new ArrayList<>(cpRefs).listIterator(cpRefs.size()); + new ArrayList<Entry>(cpRefs).listIterator(cpRefs.size()); work.hasPrevious(); ) { Entry e = work.previous(); work.remove(); // pop stack diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2017-04-26 15:02:12.588809363 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2017-04-26 16:05:48.571252346 +0100 @@ -61,7 +61,7 @@ ResourceBundle.getBundle("com.sun.java.util.jar.pack.DriverResource"); public static void main(String[] ava) throws IOException { - List<String> av = new ArrayList<>(Arrays.asList(ava)); + List<String> av = new ArrayList<String>(Arrays.asList(ava)); boolean doPack = true; boolean doUnpack = false; @@ -84,7 +84,7 @@ } // Collect engine properties here: - Map<String,String> engProps = new HashMap<>(); + Map<String,String> engProps = new HashMap<String, String>(); engProps.put(verboseProp, System.getProperty(verboseProp)); String optionMap; @@ -98,7 +98,7 @@ } // Collect argument properties here: - Map<String,String> avProps = new HashMap<>(); + Map<String,String> avProps = new HashMap<String, String>(); try { for (;;) { String state = parseCommandOptions(av, optionMap, avProps); @@ -533,7 +533,7 @@ String resultString = null; // Convert options string into optLines dictionary. - TreeMap<String,String[]> optmap = new TreeMap<>(); + TreeMap<String,String[]> optmap = new TreeMap<String,String[]>(); loadOptmap: for (String optline : options.split("\n")) { String[] words = optline.split("\\p{Space}+"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2017-04-26 16:05:48.571252346 +0100 @@ -45,7 +45,7 @@ private final ArrayList<E> flist; protected FixedList(int capacity) { - flist = new ArrayList<>(capacity); + flist = new ArrayList<E>(capacity); // initialize the list to null for (int i = 0 ; i < capacity ; i++) { flist.add(null); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Fixups.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Fixups.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Fixups.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Fixups.java 2017-04-26 16:05:48.571252346 +0100 @@ -126,11 +126,11 @@ public void setBytes(byte[] newBytes) { if (bytes == newBytes) return; ArrayList<Fixup> old = null; - assert((old = new ArrayList<>(this)) != null); + assert((old = new ArrayList<Fixup>(this)) != null); if (bytes == null || newBytes == null) { // One or the other representations is deficient. // Construct a checkpoint. - ArrayList<Fixup> save = new ArrayList<>(this); + ArrayList<Fixup> save = new ArrayList<Fixup>(this); clear(); bytes = newBytes; addAll(save); @@ -138,7 +138,7 @@ // assume newBytes is some sort of bitwise copy of the old bytes bytes = newBytes; } - assert(old.equals(new ArrayList<>(this))); + assert(old.equals(new ArrayList<Fixup>(this))); } static final int LOC_SHIFT = 1; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2017-04-26 15:02:11.520826524 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2017-04-26 16:05:48.575252281 +0100 @@ -112,7 +112,7 @@ public static final Attribute.Layout attrSourceFileSpecial; public static final Map<Attribute.Layout, Attribute> attrDefs; static { - Map<Layout, Attribute> ad = new HashMap<>(3); + Map<Layout, Attribute> ad = new HashMap<Layout, Attribute>(3); attrCodeEmpty = Attribute.define(ad, ATTR_CONTEXT_METHOD, "Code", "").layout(); attrInnerClassesEmpty = Attribute.define(ad, ATTR_CONTEXT_CLASS, @@ -181,7 +181,7 @@ } } - ArrayList<Package.Class> classes = new ArrayList<>(); + ArrayList<Package.Class> classes = new ArrayList<Package.Class>(); public List<Package.Class> getClasses() { return classes; @@ -263,7 +263,7 @@ if (olda == null) return; // no SourceFile attr. String obvious = getObviousSourceFile(); - List<Entry> ref = new ArrayList<>(1); + List<Entry> ref = new ArrayList<Entry>(1); olda.visitRefs(this, VRM_PACKAGE, ref); Utf8Entry sfName = (Utf8Entry) ref.get(0); Attribute a = olda; @@ -291,7 +291,7 @@ if (a != olda) { if (verbose > 2) Utils.log.fine("recoding obvious SourceFile="+obvious); - List<Attribute> newAttrs = new ArrayList<>(getAttributes()); + List<Attribute> newAttrs = new ArrayList<Attribute>(getAttributes()); int where = newAttrs.indexOf(olda); newAttrs.set(where, a); setAttributes(newAttrs); @@ -321,7 +321,7 @@ } public void setInnerClasses(Collection<InnerClass> ics) { - innerClasses = (ics == null) ? null : new ArrayList<>(ics); + innerClasses = (ics == null) ? null : new ArrayList<InnerClass>(ics); // Edit the attribute list, if necessary. Attribute a = getAttribute(attrInnerClassesEmpty); if (innerClasses != null && a == null) @@ -340,7 +340,7 @@ * with that of Package.this.allInnerClasses. */ public List<InnerClass> computeGloballyImpliedICs() { - Set<Entry> cpRefs = new HashSet<>(); + Set<Entry> cpRefs = new HashSet<Entry>(); { // This block temporarily displaces this.innerClasses. ArrayList<InnerClass> innerClassesSaved = innerClasses; innerClasses = null; // ignore for the moment @@ -349,7 +349,7 @@ } ConstantPool.completeReferencesIn(cpRefs, true); - Set<Entry> icRefs = new HashSet<>(); + Set<Entry> icRefs = new HashSet<Entry>(); for (Entry e : cpRefs) { // Restrict cpRefs to InnerClasses entries only. if (!(e instanceof ClassEntry)) continue; @@ -365,7 +365,7 @@ // This loop is structured this way so as to accumulate // entries into impliedICs in an order which reflects // the order of allInnerClasses. - ArrayList<InnerClass> impliedICs = new ArrayList<>(); + ArrayList<InnerClass> impliedICs = new ArrayList<InnerClass>(); for (InnerClass ic : allInnerClasses) { // This one is locally relevant if it describes // a member of the current class, or if the current @@ -408,8 +408,8 @@ // Diff is A since I is empty. } // (I*A) is non-trivial - Set<InnerClass> center = new HashSet<>(actualICs); - center.retainAll(new HashSet<>(impliedICs)); + Set<InnerClass> center = new HashSet<InnerClass>(actualICs); + center.retainAll(new HashSet<InnerClass>(impliedICs)); impliedICs.addAll(actualICs); impliedICs.removeAll(center); // Diff is now I^A = (I+A)-(I*A). @@ -538,7 +538,7 @@ super(flags, descriptor); assert(!descriptor.isMethod()); if (fields == null) - fields = new ArrayList<>(); + fields = new ArrayList<Field>(); boolean added = fields.add(this); assert(added); order = fields.size(); @@ -563,7 +563,7 @@ super(flags, descriptor); assert(descriptor.isMethod()); if (methods == null) - methods = new ArrayList<>(); + methods = new ArrayList<Method>(); boolean added = methods.add(this); assert(added); } @@ -728,14 +728,14 @@ } // What non-class files are in this unit? - ArrayList<File> files = new ArrayList<>(); + ArrayList<File> files = new ArrayList<File>(); public List<File> getFiles() { return files; } public List<File> getClassStubs() { - List<File> classStubs = new ArrayList<>(classes.size()); + List<File> classStubs = new ArrayList<File>(classes.size()); for (Class cls : classes) { assert(cls.file.isClassStub()); classStubs.add(cls.file); @@ -749,7 +749,7 @@ int modtime = NO_MODTIME; int options = 0; // random flag bits, such as deflate_hint Class stubClass; // if this is a stub, here's the class - ArrayList<byte[]> prepend = new ArrayList<>(); // list of byte[] + ArrayList<byte[]> prepend = new ArrayList<byte[]>(); // list of byte[] java.io.ByteArrayOutputStream append = new ByteArrayOutputStream(); File(Utf8Entry name) { @@ -852,7 +852,7 @@ public InputStream getInputStream() { InputStream in = new ByteArrayInputStream(append.toByteArray()); if (prepend.isEmpty()) return in; - List<InputStream> isa = new ArrayList<>(prepend.size()+1); + List<InputStream> isa = new ArrayList<InputStream>(prepend.size()+1); for (byte[] bytes : prepend) { isa.add(new ByteArrayInputStream(bytes)); } @@ -888,7 +888,7 @@ } // Is there a globally declared table of inner classes? - List<InnerClass> allInnerClasses = new ArrayList<>(); + List<InnerClass> allInnerClasses = new ArrayList<InnerClass>(); Map<ClassEntry, InnerClass> allInnerClassesByThis; public @@ -903,7 +903,7 @@ allInnerClasses.addAll(ics); // Make an index: - allInnerClassesByThis = new HashMap<>(allInnerClasses.size()); + allInnerClassesByThis = new HashMap<ClassEntry,InnerClass>(allInnerClasses.size()); for (InnerClass ic : allInnerClasses) { Object pic = allInnerClassesByThis.put(ic.thisClass, ic); assert(pic == null); // caller must ensure key uniqueness! @@ -1290,7 +1290,7 @@ // Use this before writing the class files. void ensureAllClassFiles() { - Set<File> fileSet = new HashSet<>(files); + Set<File> fileSet = new HashSet<File>(files); for (Class cls : classes) { // Add to the end of ths list: if (!fileSet.contains(cls.file)) diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2017-04-26 15:02:12.588809363 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2017-04-26 16:05:48.575252281 +0100 @@ -686,7 +686,7 @@ cp_Signature_classes.expectLength(getIntTotal(numSigClasses)); cp_Signature_classes.readFrom(in); cp_Signature_classes.setIndex(getCPIndex(CONSTANT_Class)); - utf8Signatures = new HashMap<>(); + utf8Signatures = new HashMap<Utf8Entry, SignatureEntry>(); for (int i = 0; i < cpMap.length; i++) { Utf8Entry formRef = (Utf8Entry) cp_Signature_form.getRef(); ClassEntry[] classRefs = new ClassEntry[numSigClasses[i]]; @@ -892,7 +892,7 @@ ic_name.expectLength(longICCount); ic_name.readFrom(in); ic_flags.resetForSecondPass(); - List<InnerClass> icList = new ArrayList<>(numInnerClasses); + List<InnerClass> icList = new ArrayList<InnerClass>(numInnerClasses); for (int i = 0; i < numInnerClasses; i++) { int flags = ic_flags.getInt(); boolean longForm = (flags & ACC_IC_LONG_FORM) != 0; @@ -934,7 +934,7 @@ void readLocalInnerClasses(Class cls) throws IOException { int nc = class_InnerClasses_N.getInt(); - List<InnerClass> localICs = new ArrayList<>(nc); + List<InnerClass> localICs = new ArrayList<InnerClass>(nc); for (int i = 0; i < nc; i++) { ClassEntry thisClass = (ClassEntry) class_InnerClasses_RC.getRef(); int flags = class_InnerClasses_F.getInt(); @@ -1062,7 +1062,7 @@ Entry[] reconstructLocalCPMap(Class cls) { Set<Entry> ldcRefs = ldcRefMap.get(cls); - Set<Entry> cpRefs = new HashSet<>(); + Set<Entry> cpRefs = new HashSet<Entry>(); // look for constant pool entries: cls.visitRefs(VRM_CLASSIC, cpRefs); @@ -1167,7 +1167,7 @@ method_descr.expectLength(totalNM); if (verbose > 1) Utils.log.fine("expecting #fields="+totalNF+" and #methods="+totalNM+" in #classes="+numClasses); - List<Class.Field> fields = new ArrayList<>(totalNF); + List<Class.Field> fields = new ArrayList<Class.Field>(totalNF); field_descr.readFrom(in); for (int i = 0; i < classes.length; i++) { Class c = classes[i]; @@ -1183,7 +1183,7 @@ countAndReadAttrs(ATTR_CONTEXT_FIELD, fields); fields = null; // release to GC - List<Class.Method> methods = new ArrayList<>(totalNM); + List<Class.Method> methods = new ArrayList<Class.Method>(totalNM); method_descr.readFrom(in); for (int i = 0; i < classes.length; i++) { Class c = classes[i]; @@ -1206,10 +1206,10 @@ Code[] allCodes; List<Code> codesWithFlags; - Map<Class, Set<Entry>> ldcRefMap = new HashMap<>(); + Map<Class, Set<Entry>> ldcRefMap = new HashMap<Class, Set<Entry>>(); Code[] buildCodeAttrs(List<Class.Method> methods) { - List<Code> codes = new ArrayList<>(methods.size()); + List<Code> codes = new ArrayList<Code>(methods.size()); for (Class.Method m : methods) { if (m.getAttribute(attrCodeEmpty) != null) { m.code = new Code(m); @@ -1233,7 +1233,7 @@ boolean attrsOK = testBit(archiveOptions, AO_HAVE_ALL_CODE_FLAGS); code_headers.expectLength(allCodes.length); code_headers.readFrom(in); - List<Code> longCodes = new ArrayList<>(allCodes.length / 10); + List<Code> longCodes = new ArrayList<Code>(allCodes.length / 10); for (int i = 0; i < allCodes.length; i++) { Code c = allCodes[i]; int sc = code_headers.getByte(); @@ -1472,7 +1472,7 @@ bits -= (1L<<ai); nfa += 1; } - List<Attribute> ha = new ArrayList<>(nfa + noa); + List<Attribute> ha = new ArrayList<Attribute>(nfa + noa); h.attributes = ha; bits = attrBits; // iterate again for (int ai = 0; bits != 0; ai++) { @@ -1596,7 +1596,7 @@ void readAttrs(int ctype, Collection<? extends Attribute.Holder> holders) throws IOException { // Decode band values into attributes. - Set<Attribute.Layout> sawDefs = new HashSet<>(); + Set<Attribute.Layout> sawDefs = new HashSet<Attribute.Layout>(); ByteArrayOutputStream buf = new ByteArrayOutputStream(); for (final Attribute.Holder h : holders) { if (h.attributes == null) continue; @@ -1799,7 +1799,7 @@ // scratch buffer for collecting code:: byte[] buf = new byte[1<<12]; // record of all switch opcodes (these are variable-length) - List<Integer> allSwitchOps = new ArrayList<>(); + List<Integer> allSwitchOps = new ArrayList<Integer>(); for (int k = 0; k < allCodes.length; k++) { Code c = allCodes[k]; scanOneMethod: @@ -1915,7 +1915,7 @@ Set<Entry> ldcRefSet = ldcRefMap.get(curClass); if (ldcRefSet == null) - ldcRefMap.put(curClass, ldcRefSet = new HashSet<>()); + ldcRefMap.put(curClass, ldcRefSet = new HashSet<Entry>()); ClassEntry thisClass = curClass.thisClass; ClassEntry superClass = curClass.superClass; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java 2017-04-26 15:02:12.588809363 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java 2017-04-26 16:05:48.575252281 +0100 @@ -116,7 +116,7 @@ int[][] attrCounts; // count attr. occurrences void setup() { - requiredEntries = new HashSet<>(); + requiredEntries = new HashSet<Entry>(); setArchiveOptions(); trimClassAttributes(); collectAttributeLayouts(); @@ -176,7 +176,7 @@ } } // Decide on default version number (majority rule). - Map<Integer, int[]> verCounts = new HashMap<>(); + Map<Integer, int[]> verCounts = new HashMap<Integer, int[]>(); int bestCount = 0; int bestVersion = -1; for (Class cls : pkg.classes) { @@ -728,7 +728,8 @@ void collectAttributeLayouts() { maxFlags = new int[ATTR_CONTEXT_LIMIT]; - allLayouts = new FixedList<>(ATTR_CONTEXT_LIMIT); + allLayouts = + new FixedList<Map<Attribute.Layout, int[]>>(ATTR_CONTEXT_LIMIT); for (int i = 0; i < ATTR_CONTEXT_LIMIT; i++) { allLayouts.set(i, new HashMap<Attribute.Layout, int[]>()); } @@ -773,7 +774,7 @@ } // Collect counts for both predefs. and custom defs. // Decide on custom, local attribute definitions. - backCountTable = new HashMap<>(); + backCountTable = new HashMap<Attribute.Layout, int[]>(); attrCounts = new int[ATTR_CONTEXT_LIMIT][]; for (int i = 0; i < ATTR_CONTEXT_LIMIT; i++) { // Now the remaining defs in allLayouts[i] need attr. indexes. @@ -888,7 +889,7 @@ Attribute.Layout[] attrDefsWritten; void writeAttrDefs() throws IOException { - List<Object[]> defList = new ArrayList<>(); + List<Object[]> defList = new ArrayList<Object[]>(); for (int i = 0; i < ATTR_CONTEXT_LIMIT; i++) { int limit = attrDefs.get(i).size(); for (int j = 0; j < limit; j++) { @@ -1005,7 +1006,7 @@ void collectInnerClasses() { // Capture inner classes, removing them from individual classes. // Irregular inner classes must stay local, though. - Map<ClassEntry, InnerClass> allICMap = new HashMap<>(); + Map<ClassEntry, InnerClass> allICMap = new HashMap<ClassEntry, InnerClass>(); // First, collect a consistent global set. for (Class cls : pkg.classes) { if (!cls.hasInnerClasses()) continue; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java 2017-04-26 16:05:48.575252281 +0100 @@ -181,8 +181,8 @@ final Map<Attribute.Layout, Attribute> attrDefs; final Map<Attribute.Layout, String> attrCommands; { - Map<Attribute.Layout, Attribute> lattrDefs = new HashMap<>(); - Map<Attribute.Layout, String> lattrCommands = new HashMap<>(); + Map<Attribute.Layout, Attribute> lattrDefs = new HashMap<Attribute.Layout, Attribute>(); + Map<Attribute.Layout, String> lattrCommands = new HashMap<Attribute.Layout, String>(); String[] keys = { Pack200.Packer.CLASS_ATTRIBUTE_PFX, Pack200.Packer.FIELD_ATTRIBUTE_PFX, @@ -590,7 +590,7 @@ assert(pkg.files.containsAll(pkg.getClassStubs())); // Order of stubs in file list must agree with classes. List<Package.File> res = pkg.files; - assert((res = new ArrayList<>(pkg.files)) + assert((res = new ArrayList<Package.File>(pkg.files)) .retainAll(pkg.getClassStubs()) || true); assert(res.equals(pkg.getClassStubs())); } @@ -623,7 +623,7 @@ List<InFile> scanJar(JarFile jf) throws IOException { // Collect jar entries, preserving order. - List<InFile> inFiles = new ArrayList<>(); + List<InFile> inFiles = new ArrayList<InFile>(); try { for (JarEntry je : Collections.list(jf.entries())) { InFile inFile = new InFile(jf, je); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java 2017-04-26 16:05:48.575252281 +0100 @@ -309,7 +309,7 @@ // As each new value is added, we assert that the value // was not already in the set. Set<Integer> uniqueValuesForDebug = null; - assert((uniqueValuesForDebug = new HashSet<>()) != null); + assert((uniqueValuesForDebug = new HashSet<Integer>()) != null); int fillp = 1; maxForDebug += fillp; int min = Integer.MIN_VALUE; // farthest from the center diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java 2017-04-26 16:05:48.575252281 +0100 @@ -47,8 +47,9 @@ */ final class PropMap implements SortedMap<String, String> { - private final TreeMap<String, String> theMap = new TreeMap<>();; - private final List<PropertyChangeListener> listenerList = new ArrayList<>(1); + private final TreeMap<String, String> theMap = new TreeMap<String,String>();; + private final List<PropertyChangeListener> listenerList = + new ArrayList<PropertyChangeListener>(1); void addListener(PropertyChangeListener listener) { listenerList.add(listener); @@ -187,7 +188,7 @@ // Get sequence of props for "prefix", and "prefix.*". List<String> getProperties(String prefix) { Collection<String> values = prefixMap(prefix).values(); - List<String> res = new ArrayList<>(values.size()); + List<String> res = new ArrayList<String>(values.size()); res.addAll(values); while (res.remove(null)); return res; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java 2017-04-26 16:05:48.575252281 +0100 @@ -58,12 +58,12 @@ private final Map<String, MemberEntry> memberEntries; TLGlobals() { - utf8Entries = new HashMap<>(); - classEntries = new HashMap<>(); - literalEntries = new HashMap<>(); - signatureEntries = new HashMap<>(); - descriptorEntries = new HashMap<>(); - memberEntries = new HashMap<>(); + utf8Entries = new HashMap<String,Utf8Entry>(); + classEntries = new HashMap<String,ClassEntry>(); + literalEntries = new HashMap<Object,LiteralEntry>(); + signatureEntries = new HashMap<String,SignatureEntry>(); + descriptorEntries = new HashMap<String,DescriptorEntry>(); + memberEntries = new HashMap<String,MemberEntry>(); props = new PropMap(); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java 2017-04-26 16:05:48.575252281 +0100 @@ -232,7 +232,7 @@ props.setProperty(java.util.jar.Pack200.Unpacker.PROGRESS,"50"); pkg.ensureAllClassFiles(); // Now write out the files. - Set<Package.Class> classesToWrite = new HashSet<>(pkg.getClasses()); + Set<Package.Class> classesToWrite = new HashSet<Package.Class>(pkg.getClasses()); for (Package.File file : pkg.getFiles()) { String name = file.nameString; JarEntry je = new JarEntry(Utils.getJarEntryName(name)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java 2017-04-26 16:05:48.575252281 +0100 @@ -132,7 +132,7 @@ // Keep a TLS point to the global data and environment. // This makes it simpler to supply environmental options // to the engine code, especially the native code. - static final ThreadLocal<TLGlobals> currentInstance = new ThreadLocal<>(); + static final ThreadLocal<TLGlobals> currentInstance = new ThreadLocal<TLGlobals>(); // convenience methods to access the TL globals static TLGlobals getTLGlobals() { diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java openjdk-boot/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java 2017-04-26 16:05:48.575252281 +0100 @@ -56,7 +56,7 @@ // principal in the delegated subject // Collection<Principal> ps = getSubjectPrincipals(delegatedSubject); - final Collection<Permission> permissions = new ArrayList<>(ps.size()); + final Collection<Permission> permissions = new ArrayList<Permission>(ps.size()); for(Principal p : ps) { final String pname = p.getClass().getName() + "." + p.getName(); permissions.add(new SubjectDelegationPermission(pname)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/cosnaming/CNCtx.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/cosnaming/CNCtx.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/cosnaming/CNCtx.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/cosnaming/CNCtx.java 2017-04-26 16:05:48.575252281 +0100 @@ -1093,7 +1093,7 @@ @SuppressWarnings("unchecked") public Hashtable<String, java.lang.Object> getEnvironment() throws NamingException { if (_env == null) { - return new Hashtable<>(5, 0.75f); + return new Hashtable<String, java.lang.Object>(5, 0.75f); } else { return (Hashtable<String, java.lang.Object>)_env.clone(); } @@ -1122,7 +1122,7 @@ java.lang.Object propValue) throws NamingException { if (_env == null) { - _env = new Hashtable<>(7, 0.75f); + _env = new Hashtable<String, java.lang.Object>(7, 0.75f); } else { // copy-on-write _env = (Hashtable<String, java.lang.Object>)_env.clone(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/cosnaming/CNNameParser.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/cosnaming/CNNameParser.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/cosnaming/CNNameParser.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/cosnaming/CNNameParser.java 2017-04-26 16:05:48.575252281 +0100 @@ -132,7 +132,7 @@ throws InvalidNameException { int len = str.length(); - Vector<String> components = new Vector<>(10); + Vector<String> components = new Vector<String>(10); char[] id = new char[len]; char[] kind = new char[len]; int idCount, kindCount; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/cosnaming/IiopUrl.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/cosnaming/IiopUrl.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/cosnaming/IiopUrl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/cosnaming/IiopUrl.java 2017-04-26 16:05:48.575252281 +0100 @@ -185,7 +185,7 @@ } else { stringName = UrlUtil.decode(url.substring(addrEnd+1)); } - addresses = new Vector<>(3); + addresses = new Vector<Address>(3); if (oldFormat) { // Only one host:port part, not multiple addresses.addElement( diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsContextFactory.java 2017-04-26 16:05:48.575252281 +0100 @@ -59,7 +59,7 @@ public Context getInitialContext(Hashtable<?,?> env) throws NamingException { if (env == null) { - env = new Hashtable<>(5); + env = new Hashtable<Object,Object>(5); } return urlToContext(getInitCtxUrl(env), env); } @@ -228,7 +228,7 @@ if (security == null || input == null || input.isEmpty()) { return input; } else { - List<String> output = new ArrayList<>(); + List<String> output = new ArrayList<String>(); for (String platformServer: input) { int colon = platformServer.indexOf(':', platformServer.indexOf(']') + 1); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsName.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsName.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/DnsName.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/DnsName.java 2017-04-26 16:05:48.575252281 +0100 @@ -110,7 +110,7 @@ // The labels of this domain name, as a list of strings. Index 0 // corresponds to the leftmost (least significant) label: note that // this is the reverse of the ordering used by the Name interface. - private ArrayList<String> labels = new ArrayList<>(); + private ArrayList<String> labels = new ArrayList<String>(); // The number of octets needed to carry this domain name in a DNS // packet. Equal to the sum of the lengths of each label, plus the diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/NameNode.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/NameNode.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/NameNode.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/NameNode.java 2017-04-26 16:05:48.575252281 +0100 @@ -140,7 +140,7 @@ NameNode child = null; if (node.children == null) { - node.children = new Hashtable<>(); + node.children = new Hashtable<String,NameNode>(); } else { child = node.children.get(key); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/ResourceRecords.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/ResourceRecords.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/dns/ResourceRecords.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/dns/ResourceRecords.java 2017-04-26 16:05:48.575252281 +0100 @@ -45,10 +45,10 @@ // Four sections: question, answer, authority, additional. // The question section is treated as being made up of (shortened) // resource records, although this isn't technically how it's defined. - Vector<ResourceRecord> question = new Vector<>(); - Vector<ResourceRecord> answer = new Vector<>(); - Vector<ResourceRecord> authority = new Vector<>(); - Vector<ResourceRecord> additional = new Vector<>(); + Vector<ResourceRecord> question = new Vector<ResourceRecord>(); + Vector<ResourceRecord> answer = new Vector<ResourceRecord>(); + Vector<ResourceRecord> authority = new Vector<ResourceRecord>(); + Vector<ResourceRecord> additional = new Vector<ResourceRecord>(); /* * True if these resource records are from a zone transfer. In diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/EventSupport.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/EventSupport.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/EventSupport.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/EventSupport.java 2017-04-26 16:05:48.575252281 +0100 @@ -119,7 +119,7 @@ * NamingEventNotifiers; hashed by search arguments; */ private Hashtable<NotifierArgs, NamingEventNotifier> notifiers = - new Hashtable<>(11); + new Hashtable<NotifierArgs, NamingEventNotifier>(11); /** * List of unsolicited notification listeners. @@ -165,7 +165,7 @@ if (l instanceof UnsolicitedNotificationListener) { // Add listener to this's list of unsolicited notifiers if (unsolicited == null) { - unsolicited = new Vector<>(3); + unsolicited = new Vector<UnsolicitedNotificationListener>(3); } unsolicited.addElement((UnsolicitedNotificationListener)l); @@ -194,7 +194,7 @@ if (l instanceof UnsolicitedNotificationListener) { // Add listener to this's list of unsolicited notifiers if (unsolicited == null) { - unsolicited = new Vector<>(3); + unsolicited = new Vector<UnsolicitedNotificationListener>(3); } unsolicited.addElement((UnsolicitedNotificationListener)l); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapClient.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapClient.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapClient.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapClient.java 2017-04-26 16:05:48.575252281 +0100 @@ -82,7 +82,7 @@ // Default list of binary attributes private static final Hashtable<String, Boolean> defaultBinaryAttrs = - new Hashtable<>(23,0.75f); + new Hashtable<String,Boolean>(23,0.75f); static { defaultBinaryAttrs.put("userpassword", Boolean.TRUE); //2.5.4.35 defaultBinaryAttrs.put("javaserializeddata", Boolean.TRUE); @@ -617,7 +617,7 @@ res.entries.setSize(0); // clear the (previous) set of entries } else { res.entries = - new Vector<>(batchSize == Integer.MAX_VALUE ? 32 : batchSize); + new Vector<LdapEntry>(batchSize == Integer.MAX_VALUE ? 32 : batchSize); } if (res.referrals != null) { @@ -667,7 +667,7 @@ } else if ((seq == LDAP_REP_SEARCH_REF) && isLdapv3) { // handle LDAPv3 search reference - Vector<String> URLs = new Vector<>(4); + Vector<String> URLs = new Vector<String>(4); // %%% Although not strictly correct, some LDAP servers // encode the SEQUENCE OF tag in the SearchResultRef @@ -683,7 +683,7 @@ } if (res.referrals == null) { - res.referrals = new Vector<>(4); + res.referrals = new Vector<Vector<String>>(4); } res.referrals.addElement(URLs); res.resControls = isLdapv3 ? parseControls(replyBer) : null; @@ -773,7 +773,7 @@ (replyBer.bytesLeft() > 0) && (replyBer.peekByte() == LDAP_REP_REFERRAL)) { - Vector<String> URLs = new Vector<>(4); + Vector<String> URLs = new Vector<String>(4); int[] seqlen = new int[1]; replyBer.parseSeq(seqlen); @@ -785,7 +785,7 @@ } if (res.referrals == null) { - res.referrals = new Vector<>(4); + res.referrals = new Vector<Vector<String>>(4); } res.referrals.addElement(URLs); } @@ -796,7 +796,7 @@ // handle LDAPv3 controls (if present) if ((replyBer.bytesLeft() > 0) && (replyBer.peekByte() == LDAP_CONTROLS)) { - Vector<Control> ctls = new Vector<>(4); + Vector<Control> ctls = new Vector<Control>(4); String controlOID; boolean criticality = false; // default byte[] controlValue = null; // optional @@ -1574,7 +1574,7 @@ private void notifyUnsolicited(Object e) { Vector<LdapCtx> unsolicitedCopy; synchronized (unsolicited) { - unsolicitedCopy = new Vector<>(unsolicited); + unsolicitedCopy = new Vector<LdapCtx>(unsolicited); if (e instanceof NamingException) { unsolicited.setSize(0); // no more listeners after exception } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java 2017-04-26 16:05:48.575252281 +0100 @@ -221,7 +221,7 @@ * Used by Obj and obj/RemoteToAttrs too so must be public */ public static Attribute createTypeNameAttr(Class<?> cl) { - Vector<String> v = new Vector<>(10); + Vector<String> v = new Vector<String>(10); String[] types = getTypeNames(cl, v); if (types.length > 0) { BasicAttribute tAttr = diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtx.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtx.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtx.java 2017-04-26 15:02:12.556809877 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapCtx.java 2017-04-26 16:05:48.575252281 +0100 @@ -313,7 +313,7 @@ this.useDefaultPortNumber = true; } - schemaTrees = new Hashtable<>(11, 0.75f); + schemaTrees = new Hashtable<String, DirContext>(11, 0.75f); initEnv(); try { connect(false); @@ -2530,19 +2530,19 @@ urlCount++; } - Vector<Vector<String>> referrals = new Vector<>(urlCount); + Vector<Vector<String>> referrals = new Vector<Vector<String>>(urlCount); int iURL; int i = 0; separator = refString.indexOf('\n'); iURL = separator + 1; while ((separator = refString.indexOf('\n', iURL)) >= 0) { - Vector<String> referral = new Vector<>(1); + Vector<String> referral = new Vector<String>(1); referral.addElement(refString.substring(iURL, separator)); referrals.addElement(referral); iURL = separator + 1; } - Vector<String> referral = new Vector<>(1); + Vector<String> referral = new Vector<String>(1); referral.addElement(refString.substring(iURL)); referrals.addElement(referral); @@ -2557,7 +2557,7 @@ if (attrIds == null) { binaryAttrs = null; } else { - binaryAttrs = new Hashtable<>(11, 0.75f); + binaryAttrs = new Hashtable<String, Boolean>(11, 0.75f); StringTokenizer tokens = new StringTokenizer(attrIds.toLowerCase(Locale.ENGLISH), " "); @@ -2640,7 +2640,7 @@ } // reset the cache before a new connection is established - schemaTrees = new Hashtable<>(11, 0.75f); + schemaTrees = new Hashtable<String, DirContext>(11, 0.75f); connect(startTLS); } else if (!sharable || startTLS) { @@ -2653,7 +2653,7 @@ } } // reset the cache before a new connection is established - schemaTrees = new Hashtable<>(11, 0.75f); + schemaTrees = new Hashtable<String, DirContext>(11, 0.75f); connect(startTLS); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapName.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapName.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapName.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapName.java 2017-04-26 16:05:48.575252281 +0100 @@ -111,7 +111,7 @@ */ private LdapName(String name, Vector<Rdn> rdns, int beg, int end) { unparsed = name; - this.rdns = new Vector<>(); + this.rdns = new Vector<Rdn>(); for (int i = beg; i < end; i++) { this.rdns.addElement(rdns.elementAt(i)); } @@ -410,7 +410,7 @@ */ Vector<Rdn> getDn() throws InvalidNameException { cur = 0; - Vector<Rdn> rdns = new Vector<>(len / 3 + 10); // leave room for growth + Vector<Rdn> rdns = new Vector<Rdn>(len / 3 + 10); // leave room for growth if (len == 0) { return rdns; @@ -597,7 +597,7 @@ * A vector of the TypeAndValue elements of this Rdn. * It is sorted to facilitate set operations. */ - private final Vector<TypeAndValue> tvs = new Vector<>(); + private final Vector<TypeAndValue> tvs = new Vector<TypeAndValue>(); void add(TypeAndValue tv) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapResult.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapResult.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapResult.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapResult.java 2017-04-26 16:05:48.579252217 +0100 @@ -59,7 +59,7 @@ switch (status) { case LdapClient.LDAP_COMPARE_TRUE: status = LdapClient.LDAP_SUCCESS; - entries = new Vector<>(1,1); + entries = new Vector<LdapEntry>(1,1); Attributes attrs = new BasicAttributes(LdapClient.caseIgnore); LdapEntry entry = new LdapEntry( name, attrs ); entries.addElement(entry); @@ -68,7 +68,7 @@ case LdapClient.LDAP_COMPARE_FALSE: status = LdapClient.LDAP_SUCCESS; - entries = new Vector<>(0); + entries = new Vector<LdapEntry>(0); successful = true; break; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapSchemaParser.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapSchemaParser.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/LdapSchemaParser.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/LdapSchemaParser.java 2017-04-26 16:05:48.579252217 +0100 @@ -519,7 +519,7 @@ throws NamingException { int begin, end; - Vector<String> values = new Vector<>(5); + Vector<String> values = new Vector<String>(5); if (debug) { System.err.println("ReadQDescrList: pos="+pos[0]); @@ -613,7 +613,7 @@ int begin, cur, end; String oidName = null; - Vector<String> values = new Vector<>(5); + Vector<String> values = new Vector<String>(5); if (debug) { System.err.println("ReadOIDList: pos="+pos[0]); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/NamingEventNotifier.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/NamingEventNotifier.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/NamingEventNotifier.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/NamingEventNotifier.java 2017-04-26 16:05:48.579252217 +0100 @@ -83,7 +83,7 @@ context = (LdapCtx)ctx.newInstance(new Control[]{psearch}); eventSrc = ctx; - namingListeners = new Vector<>(); + namingListeners = new Vector<NamingListener>(); namingListeners.addElement(firstListener); worker = Obj.helper.createThread(this); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/Obj.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/Obj.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/Obj.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/Obj.java 2017-04-26 16:05:48.579252217 +0100 @@ -207,7 +207,7 @@ } else { StringTokenizer parser = new StringTokenizer((String)codebaseAttr.get()); - Vector<String> vec = new Vector<>(10); + Vector<String> vec = new Vector<String>(10); while (parser.hasMoreTokens()) { vec.addElement(parser.nextToken()); } @@ -411,7 +411,7 @@ * Temporary Vector for decoded RefAddr addresses - used to ensure * unordered addresses are correctly re-ordered. */ - Vector<RefAddr> refAddrList = new Vector<>(); + Vector<RefAddr> refAddrList = new Vector<RefAddr>(); refAddrList.setSize(attr.size()); for (NamingEnumeration<?> vals = attr.getAll(); vals.hasMore(); ) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java 2017-04-26 16:05:48.579252217 +0100 @@ -99,11 +99,11 @@ } else { this.prefSize = prefSize; } - conns = new ArrayList<>(maxSize > 0 ? maxSize : DEFAULT_SIZE); + conns = new ArrayList<ConnectionDesc>(maxSize > 0 ? maxSize : DEFAULT_SIZE); // Maintain soft ref to id so that this Connections' entry in // Pool doesn't get GC'ed prematurely - ref = new SoftReference<>(id); + ref = new SoftReference<Object>(id); d("init size=", initSize); d("max size=", maxSize); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java 2017-04-26 16:05:48.579252217 +0100 @@ -83,7 +83,7 @@ * Used for connections cleanup */ private static final ReferenceQueue<ConnectionsRef> queue = - new ReferenceQueue<>(); + new ReferenceQueue<ConnectionsRef>(); private static final Collection<Reference<ConnectionsRef>> weakRefs = Collections.synchronizedList(new LinkedList<Reference<ConnectionsRef>>()); @@ -93,7 +93,7 @@ final private Map<Object, ConnectionsRef> map; public Pool(int initSize, int prefSize, int maxSize) { - map = new WeakHashMap<>(); + map = new WeakHashMap<Object, ConnectionsRef>(); this.prefSize = prefSize; this.maxSize = maxSize; this.initSize = initSize; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/sasl/LdapSasl.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/sasl/LdapSasl.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/sasl/LdapSasl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/sasl/LdapSasl.java 2017-04-26 16:05:48.579252217 +0100 @@ -186,7 +186,7 @@ */ private static String[] getSaslMechanismNames(String str) { StringTokenizer parser = new StringTokenizer(str); - Vector<String> mechs = new Vector<>(10); + Vector<String> mechs = new Vector<String>(10); while (parser.hasMoreTokens()) { mechs.addElement(parser.nextToken()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/ctx/Continuation.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/ctx/Continuation.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/ctx/Continuation.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/ctx/Continuation.java 2017-04-26 16:05:48.579252217 +0100 @@ -155,7 +155,7 @@ if ((e instanceof CannotProceedException)) { CannotProceedException cpe = (CannotProceedException)e; Hashtable<?,?> env = (environment == null ? - new Hashtable<>(11) : (Hashtable<?,?>)environment.clone()); + new Hashtable<Object, Object>(11) : (Hashtable<?,?>)environment.clone()); cpe.setEnvironment(env); cpe.setAltNameCtx(resolvedContext); cpe.setAltName(relativeResolvedName); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/dir/HierMemDirCtx.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/dir/HierMemDirCtx.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/dir/HierMemDirCtx.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/dir/HierMemDirCtx.java 2017-04-26 16:05:48.579252217 +0100 @@ -84,7 +84,7 @@ private void init() { attrs = new BasicAttributes(ignoreCase); - bindings = new Hashtable<>(11, 0.75f); + bindings = new Hashtable<Name,Object>(11, 0.75f); } public Object lookup(String name) throws NamingException { @@ -470,7 +470,7 @@ @SuppressWarnings("unchecked") // clone() public Hashtable<String, Object> getEnvironment() throws NamingException { if (myEnv == null) { - return new Hashtable<>(5, 0.75f); + return new Hashtable<String, Object>(5, 0.75f); } else { return (Hashtable<String, Object>)myEnv.clone(); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/dir/SearchFilter.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/dir/SearchFilter.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/dir/SearchFilter.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/dir/SearchFilter.java 2017-04-26 16:05:48.579252217 +0100 @@ -208,7 +208,7 @@ private boolean polarity; CompoundFilter(boolean polarity) { - subFilters = new Vector<>(); + subFilters = new Vector<StringFilter>(); this.polarity = polarity; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/url/GenericURLContext.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/url/GenericURLContext.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/toolkit/url/GenericURLContext.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/toolkit/url/GenericURLContext.java 2017-04-26 16:05:48.579252217 +0100 @@ -510,7 +510,7 @@ @SuppressWarnings("unchecked") // clone() public Hashtable<String, Object> getEnvironment() throws NamingException { if (myEnv == null) { - return new Hashtable<>(5, 0.75f); + return new Hashtable<String, Object>(5, 0.75f); } else { return (Hashtable<String, Object>)myEnv.clone(); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java openjdk-boot/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java 2017-04-26 16:05:48.579252217 +0100 @@ -54,7 +54,7 @@ * Contains event dispatcher per thread group. */ private static final Map<ThreadGroup, EventDispatcher> dispatchers = - new WeakHashMap<>(); + new WeakHashMap<ThreadGroup, EventDispatcher>(); /** * Constructs a new AbstractLine. diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java openjdk-boot/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java 2017-04-26 16:05:48.579252217 +0100 @@ -102,7 +102,7 @@ && !SoundbankReader.class.equals(serviceClass) && !MidiFileWriter.class.equals(serviceClass) && !MidiFileReader.class.equals(serviceClass)) { - providers = new ArrayList<>(0); + providers = new ArrayList<Object>(0); } else { providers = JSSecurityManager.getProviders(serviceClass); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java openjdk-boot/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java 2017-04-26 16:05:48.579252217 +0100 @@ -59,7 +59,7 @@ * dispatcher instance with a factory in EventDispatcher */ private static final Map<ThreadGroup, EventDispatcher> dispatchers = - new WeakHashMap<>(); + new WeakHashMap<ThreadGroup, EventDispatcher>(); /** * All RealTimeSequencers share this info object. diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/naming/internal/FactoryEnumeration.java openjdk-boot/jdk/src/share/classes/com/sun/naming/internal/FactoryEnumeration.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/naming/internal/FactoryEnumeration.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/naming/internal/FactoryEnumeration.java 2017-04-26 16:05:48.579252217 +0100 @@ -87,7 +87,7 @@ } // Instantiate Class to get factory answer = ((Class) answer).newInstance(); - ref = new NamedWeakReference<>(answer, className); + ref = new NamedWeakReference<Object>(answer, className); factories.set(posn-1, ref); // replace Class object or null return answer; } catch (ClassNotFoundException e) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/naming/internal/ResourceManager.java openjdk-boot/jdk/src/share/classes/com/sun/naming/internal/ResourceManager.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/naming/internal/ResourceManager.java 2017-04-26 15:02:12.548810007 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/naming/internal/ResourceManager.java 2017-04-26 16:05:48.579252217 +0100 @@ -97,7 +97,7 @@ */ // WeakHashMap<Class | ClassLoader, Hashtable> private static final WeakHashMap<Object, Hashtable<? super String, Object>> - propertiesCache = new WeakHashMap<>(11); + propertiesCache = new WeakHashMap<Object, Hashtable<? super String, Object>>(11); /* * A cache of factory objects (ObjectFactory, StateFactory, ControlFactory). @@ -109,7 +109,7 @@ */ private static final WeakHashMap<ClassLoader, Map<String, List<NamedWeakReference<Object>>>> - factoryCache = new WeakHashMap<>(11); + factoryCache = new WeakHashMap<ClassLoader, Map<String, List<NamedWeakReference<Object>>>>(11); /* * A cache of URL factory objects (ObjectFactory). @@ -122,9 +122,9 @@ */ private static final WeakHashMap<ClassLoader, Map<String, WeakReference<Object>>> - urlFactoryCache = new WeakHashMap<>(11); + urlFactoryCache = new WeakHashMap<ClassLoader, Map<String, WeakReference<Object>>>(11); private static final WeakReference<Object> NO_FACTORY = - new WeakReference<>(null); + new WeakReference<Object>(null); /** * A class to allow JNDI properties be specified as applet parameters @@ -203,7 +203,7 @@ { String[] props = VersionHelper.PROPS; // system/applet properties if (env == null) { - env = new Hashtable<>(11); + env = new Hashtable<Object, Object>(11); } Object applet = env.get(Context.APPLET); @@ -341,7 +341,7 @@ synchronized (factoryCache) { perLoaderCache = factoryCache.get(loader); if (perLoaderCache == null) { - perLoaderCache = new HashMap<>(11); + perLoaderCache = new HashMap<String, List<NamedWeakReference<Object>>>(11); factoryCache.put(loader, perLoaderCache); } } @@ -357,7 +357,7 @@ // Populate list with classes named in facProp; skipping // those that we cannot load StringTokenizer parser = new StringTokenizer(facProp, ":"); - factories = new ArrayList<>(5); + factories = new ArrayList<NamedWeakReference<Object>>(5); while (parser.hasMoreTokens()) { try { // System.out.println("loading"); @@ -431,7 +431,7 @@ synchronized (urlFactoryCache) { perLoaderCache = urlFactoryCache.get(loader); if (perLoaderCache == null) { - perLoaderCache = new HashMap<>(11); + perLoaderCache = new HashMap<String, WeakReference<Object>>(11); urlFactoryCache.put(loader, perLoaderCache); } } @@ -475,7 +475,7 @@ // Cache it. perLoaderCache.put(key, (factory != null) - ? new WeakReference<>(factory) + ? new WeakReference<Object>(factory) : NO_FACTORY); return factory; } @@ -497,7 +497,7 @@ throws NamingException { if (obj == null) { - return (new Hashtable<>(1)); + return (new Hashtable<String, Object>(1)); } synchronized (propertiesCache) { Class<?> c = obj.getClass(); @@ -606,7 +606,7 @@ throw ne; } if (result == null) { - result = new Hashtable<>(11); + result = new Hashtable<String, Object>(11); } propertiesCache.put(cl, result); return result; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/naming/internal/VersionHelper.java openjdk-boot/jdk/src/share/classes/com/sun/naming/internal/VersionHelper.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/naming/internal/VersionHelper.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/naming/internal/VersionHelper.java 2017-04-26 16:05:48.579252217 +0100 @@ -137,7 +137,7 @@ throws MalformedURLException { // Parse codebase into separate URLs StringTokenizer parser = new StringTokenizer(codebase); - Vector<String> vec = new Vector<>(10); + Vector<String> vec = new Vector<String>(10); while (parser.hasMoreTokens()) { vec.addElement(parser.nextToken()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/rmi/rmid/ExecOptionPermission.java openjdk-boot/jdk/src/share/classes/com/sun/rmi/rmid/ExecOptionPermission.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/rmi/rmid/ExecOptionPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/rmi/rmid/ExecOptionPermission.java 2017-04-26 16:05:48.579252217 +0100 @@ -231,7 +231,7 @@ * Create an empty ExecOptionPermissionCollection. */ public ExecOptionPermissionCollection() { - permissions = new Hashtable<>(11); + permissions = new Hashtable<String, Permission>(11); all_allowed = false; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/rmi/rmid/ExecPermission.java openjdk-boot/jdk/src/share/classes/com/sun/rmi/rmid/ExecPermission.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/rmi/rmid/ExecPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/rmi/rmid/ExecPermission.java 2017-04-26 16:05:48.579252217 +0100 @@ -235,7 +235,7 @@ * Create an empty ExecPermissionCollection. */ public ExecPermissionCollection() { - permissions = new Vector<>(); + permissions = new Vector<Permission>(); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/rowset/CachedRowSetImpl.java openjdk-boot/jdk/src/share/classes/com/sun/rowset/CachedRowSetImpl.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/rowset/CachedRowSetImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/rowset/CachedRowSetImpl.java 2017-04-26 16:05:48.583252152 +0100 @@ -1285,7 +1285,7 @@ */ public Collection<?> toCollection() throws SQLException { - TreeMap<Integer, Object> tMap = new TreeMap<>(); + TreeMap<Integer, Object> tMap = new TreeMap<Integer, Object>(); for (int i = 0; i<numRows; i++) { tMap.put(Integer.valueOf(i), rvh.get(i)); @@ -1315,7 +1315,7 @@ public Collection<?> toCollection(int column) throws SQLException { int nRows = numRows; - Vector<Object> vec = new Vector<>(nRows); + Vector<Object> vec = new Vector<Object>(nRows); // create a copy CachedRowSetImpl crsTemp; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/rowset/JoinRowSetImpl.java openjdk-boot/jdk/src/share/classes/com/sun/rowset/JoinRowSetImpl.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/rowset/JoinRowSetImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/rowset/JoinRowSetImpl.java 2017-04-26 16:05:48.583252152 +0100 @@ -222,7 +222,7 @@ // either of the setter methods have been set. if(boolColId){ // - ArrayList<Integer> indices = new ArrayList<>(); + ArrayList<Integer> indices = new ArrayList<Integer>(); for(int i=0;i<cRowset.getMatchColumnNames().length;i++) { if( (strMatchKey = (cRowset.getMatchColumnNames())[i]) != null) { iMatchKey = cRowset.findColumn(strMatchKey); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/callback/DialogCallbackHandler.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/callback/DialogCallbackHandler.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/callback/DialogCallbackHandler.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/callback/DialogCallbackHandler.java 2017-04-26 16:05:48.583252152 +0100 @@ -99,10 +99,10 @@ throws UnsupportedCallbackException { /* Collect messages to display in the dialog */ - final List<Object> messages = new ArrayList<>(3); + final List<Object> messages = new ArrayList<Object>(3); /* Collection actions to perform if the user clicks OK */ - final List<Action> okActions = new ArrayList<>(2); + final List<Action> okActions = new ArrayList<Action>(2); ConfirmationInfo confirmation = new ConfirmationInfo(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/login/ConfigFile.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/login/ConfigFile.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/login/ConfigFile.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/login/ConfigFile.java 2017-04-26 16:05:48.583252152 +0100 @@ -152,7 +152,7 @@ // new configuration HashMap<String, LinkedList<AppConfigurationEntry>> newConfig = - new HashMap<>(); + new HashMap<String, LinkedList<AppConfigurationEntry>>(); if (url != null) { @@ -392,7 +392,7 @@ String moduleClass; String sflag; AppConfigurationEntry.LoginModuleControlFlag controlFlag; - LinkedList<AppConfigurationEntry> configEntries = new LinkedList<>(); + LinkedList<AppConfigurationEntry> configEntries = new LinkedList<AppConfigurationEntry>(); // application name appName = st.sval; @@ -432,7 +432,7 @@ } // get the args - HashMap<String, String> options = new HashMap<>(); + HashMap<String, String> options = new HashMap<String, String>(); String key; String value; while (peek(";") == false) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/JndiLoginModule.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/JndiLoginModule.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/JndiLoginModule.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/JndiLoginModule.java 2017-04-26 16:05:48.583252152 +0100 @@ -181,7 +181,7 @@ private UnixNumericUserPrincipal UIDPrincipal; private UnixNumericGroupPrincipal GIDPrincipal; private LinkedList<UnixNumericGroupPrincipal> supplementaryGroups = - new LinkedList<>(); + new LinkedList<UnixNumericGroupPrincipal>(); // initial state private Subject subject; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java 2017-04-26 16:05:48.583252152 +0100 @@ -654,7 +654,7 @@ throw new FailedLoginException( "Unable to find X.509 certificate chain in keystore"); } else { - LinkedList<Certificate> certList = new LinkedList<>(); + LinkedList<Certificate> certList = new LinkedList<Certificate>(); for (int i=0; i < fromKeyStore.length; i++) { certList.add(fromKeyStore[i]); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java 2017-04-26 16:05:48.583252152 +0100 @@ -76,7 +76,7 @@ private SolarisNumericUserPrincipal UIDPrincipal; private SolarisNumericGroupPrincipal GIDPrincipal; private LinkedList<SolarisNumericGroupPrincipal> supplementaryGroups = - new LinkedList<>(); + new LinkedList<SolarisNumericGroupPrincipal>(); /** * Initialize this <code>LoginModule</code>. diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/UnixLoginModule.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/UnixLoginModule.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/module/UnixLoginModule.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/module/UnixLoginModule.java 2017-04-26 16:05:48.583252152 +0100 @@ -70,7 +70,7 @@ private UnixNumericUserPrincipal UIDPrincipal; private UnixNumericGroupPrincipal GIDPrincipal; private LinkedList<UnixNumericGroupPrincipal> supplementaryGroups = - new LinkedList<>(); + new LinkedList<UnixNumericGroupPrincipal>(); /** * Initialize this <code>LoginModule</code>. diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/PolicyFile.java openjdk-boot/jdk/src/share/classes/com/sun/security/auth/PolicyFile.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/auth/PolicyFile.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/security/auth/PolicyFile.java 2017-04-26 16:05:48.583252152 +0100 @@ -1179,7 +1179,7 @@ // Done return certs; - ArrayList<Certificate> userCertList = new ArrayList<>(); + ArrayList<Certificate> userCertList = new ArrayList<Certificate>(); i = 0; while (i < certs.length) { userCertList.add(certs[i]); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java openjdk-boot/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java 2017-04-26 16:05:48.583252152 +0100 @@ -59,7 +59,7 @@ // Maps ThreadReference to ThreadTrace instances private Map<ThreadReference, ThreadTrace> traceMap = - new HashMap<>(); + new HashMap(); EventThread(VirtualMachine vm, String[] excludes, PrintWriter writer) { super("event-handler"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/beans/Introspector.java openjdk-boot/jdk/src/share/classes/java/beans/Introspector.java --- openjdk-boot.orig/jdk/src/share/classes/java/beans/Introspector.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/beans/Introspector.java 2017-04-26 16:05:48.583252152 +0100 @@ -106,7 +106,7 @@ public final static int IGNORE_ALL_BEANINFO = 3; // Static Caches to speed up introspection. - private static final WeakCache<Class<?>, Method[]> declaredMethodCache = new WeakCache<>(); + private static final WeakCache<Class<?>, Method[]> declaredMethodCache = new WeakCache(); private Class beanClass; private BeanInfo explicitBeanInfo; @@ -1481,7 +1481,7 @@ this.defaultProperty = defaultProperty; this.methods = methods; this.targetBeanInfoRef = (targetBeanInfo != null) - ? new SoftReference<>(targetBeanInfo) + ? new SoftReference<BeanInfo>(targetBeanInfo) : null; } @@ -1565,7 +1565,7 @@ targetBeanInfo = ThreadGroupContext.getContext().getBeanInfoFinder() .find(this.beanDescriptor.getBeanClass()); if (targetBeanInfo != null) { - this.targetBeanInfoRef = new SoftReference<>(targetBeanInfo); + this.targetBeanInfoRef = new SoftReference<BeanInfo>(targetBeanInfo); } } return targetBeanInfo; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/beans/MethodRef.java openjdk-boot/jdk/src/share/classes/java/beans/MethodRef.java --- openjdk-boot.orig/jdk/src/share/classes/java/beans/MethodRef.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/beans/MethodRef.java 2017-04-26 16:05:48.583252152 +0100 @@ -44,7 +44,7 @@ } else { this.signature = method.toGenericString(); - this.methodRef = new SoftReference<>(method); + this.methodRef = new SoftReference<Method>(method); this.typeRef = new WeakReference<Class<?>>(method.getDeclaringClass()); } } @@ -66,7 +66,7 @@ this.typeRef = null; } else { - this.methodRef = new SoftReference<>(method); + this.methodRef = new SoftReference<Method>(method); } } return isPackageAccessible(method.getDeclaringClass()) ? method : null; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/beans/ThreadGroupContext.java openjdk-boot/jdk/src/share/classes/java/beans/ThreadGroupContext.java --- openjdk-boot.orig/jdk/src/share/classes/java/beans/ThreadGroupContext.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/beans/ThreadGroupContext.java 2017-04-26 16:05:48.583252152 +0100 @@ -96,7 +96,7 @@ BeanInfo putBeanInfo(Class<?> type, BeanInfo info) { if (this.beanInfoCache == null) { - this.beanInfoCache = new WeakHashMap<>(); + this.beanInfoCache = new WeakHashMap(); } return this.beanInfoCache.put(type, info); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/DeleteOnExitHook.java openjdk-boot/jdk/src/share/classes/java/io/DeleteOnExitHook.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/DeleteOnExitHook.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/DeleteOnExitHook.java 2017-04-26 16:05:48.583252152 +0100 @@ -34,7 +34,7 @@ */ class DeleteOnExitHook { - private static LinkedHashSet<String> files = new LinkedHashSet<>(); + private static LinkedHashSet<String> files = new LinkedHashSet<String>(); static { // DeleteOnExitHook must be the last shutdown hook to be invoked. // Application shutdown hooks may add the first file to the @@ -71,7 +71,7 @@ files = null; } - ArrayList<String> toBeDeleted = new ArrayList<>(theFiles); + ArrayList<String> toBeDeleted = new ArrayList<String>(theFiles); // reverse the list to maintain previous jdk deletion order. // Last in first deleted. diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/FileInputStream.java openjdk-boot/jdk/src/share/classes/java/io/FileInputStream.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/FileInputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/FileInputStream.java 2017-04-26 16:05:48.583252152 +0100 @@ -61,7 +61,7 @@ private volatile boolean closed = false; private static final ThreadLocal<Boolean> runningFinalize = - new ThreadLocal<>(); + new ThreadLocal<Boolean>(); private static boolean isRunningFinalize() { Boolean val; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/File.java openjdk-boot/jdk/src/share/classes/java/io/File.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/File.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/File.java 2017-04-26 16:05:48.583252152 +0100 @@ -1150,7 +1150,7 @@ if ((names == null) || (filter == null)) { return names; } - List<String> v = new ArrayList<>(); + List<String> v = new ArrayList<String>(); for (int i = 0 ; i < names.length ; i++) { if (filter.accept(this, names[i])) { v.add(names[i]); @@ -1241,7 +1241,7 @@ public File[] listFiles(FilenameFilter filter) { String ss[] = list(); if (ss == null) return null; - ArrayList<File> files = new ArrayList<>(); + ArrayList<File> files = new ArrayList<File>(); for (String s : ss) if ((filter == null) || filter.accept(this, s)) files.add(new File(s, this)); @@ -1279,7 +1279,7 @@ public File[] listFiles(FileFilter filter) { String ss[] = list(); if (ss == null) return null; - ArrayList<File> files = new ArrayList<>(); + ArrayList<File> files = new ArrayList<File>(); for (String s : ss) { File f = new File(s, this); if ((filter == null) || filter.accept(f)) diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/FileOutputStream.java openjdk-boot/jdk/src/share/classes/java/io/FileOutputStream.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/FileOutputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/FileOutputStream.java 2017-04-26 16:05:48.583252152 +0100 @@ -76,7 +76,7 @@ private final Object closeLock = new Object(); private volatile boolean closed = false; private static final ThreadLocal<Boolean> runningFinalize = - new ThreadLocal<>(); + new ThreadLocal<Boolean>(); private static boolean isRunningFinalize() { Boolean val; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/FilePermission.java openjdk-boot/jdk/src/share/classes/java/io/FilePermission.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/FilePermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/FilePermission.java 2017-04-26 16:05:48.583252152 +0100 @@ -725,7 +725,7 @@ */ public FilePermissionCollection() { - perms = new ArrayList<>(); + perms = new ArrayList<Permission>(); } /** @@ -830,7 +830,7 @@ // Don't call out.defaultWriteObject() // Write out Vector - Vector<Permission> permissions = new Vector<>(perms.size()); + Vector<Permission> permissions = new Vector<Permission>(perms.size()); synchronized (this) { permissions.addAll(perms); } @@ -853,7 +853,7 @@ // Get the one we want Vector<Permission> permissions = (Vector<Permission>)gfields.get("permissions", null); - perms = new ArrayList<>(permissions.size()); + perms = new ArrayList<Permission>(permissions.size()); perms.addAll(permissions); } } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/ObjectInputStream.java openjdk-boot/jdk/src/share/classes/java/io/ObjectInputStream.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/ObjectInputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/ObjectInputStream.java 2017-04-26 16:05:48.587252087 +0100 @@ -220,7 +220,7 @@ /** table mapping primitive type names to corresponding class objects */ private static final HashMap<String, Class<?>> primClasses - = new HashMap<>(8, 1.0F); + = new HashMap<String, Class<?>>(8, 1.0F); static { primClasses.put("boolean", boolean.class); primClasses.put("byte", byte.class); @@ -236,11 +236,11 @@ private static class Caches { /** cache of subclass security audit results */ static final ConcurrentMap<WeakClassKey,Boolean> subclassAudits = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<WeakClassKey,Boolean>(); /** queue for WeakReferences to audited subclasses */ static final ReferenceQueue<Class<?>> subclassAuditsQueue = - new ReferenceQueue<>(); + new ReferenceQueue<Class<?>>(); } static { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/ObjectOutputStream.java openjdk-boot/jdk/src/share/classes/java/io/ObjectOutputStream.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/ObjectOutputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/ObjectOutputStream.java 2017-04-26 16:05:48.587252087 +0100 @@ -166,11 +166,11 @@ private static class Caches { /** cache of subclass security audit results */ static final ConcurrentMap<WeakClassKey,Boolean> subclassAudits = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<WeakClassKey,Boolean>(); /** queue for WeakReferences to audited subclasses */ static final ReferenceQueue<Class<?>> subclassAuditsQueue = - new ReferenceQueue<>(); + new ReferenceQueue<Class<?>>(); } /** filter stream for handling block data conversion */ @@ -2432,7 +2432,7 @@ private final List<String> stack; DebugTraceInfoStack() { - stack = new ArrayList<>(); + stack = new ArrayList<String>(); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/io/ObjectStreamClass.java openjdk-boot/jdk/src/share/classes/java/io/ObjectStreamClass.java --- openjdk-boot.orig/jdk/src/share/classes/java/io/ObjectStreamClass.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/io/ObjectStreamClass.java 2017-04-26 16:05:48.587252087 +0100 @@ -87,18 +87,18 @@ private static class Caches { /** cache mapping local classes -> descriptors */ static final ConcurrentMap<WeakClassKey,Reference<?>> localDescs = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<WeakClassKey,Reference<?>>(); /** cache mapping field group/local desc pairs -> field reflectors */ static final ConcurrentMap<FieldReflectorKey,Reference<?>> reflectors = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<FieldReflectorKey,Reference<?>>(); /** queue for WeakReferences to local classes */ private static final ReferenceQueue<Class<?>> localDescsQueue = - new ReferenceQueue<>(); + new ReferenceQueue<Class<?>>(); /** queue for WeakReferences to field reflectors keys */ private static final ReferenceQueue<Class<?>> reflectorsQueue = - new ReferenceQueue<>(); + new ReferenceQueue<Class<?>>(); } /** class associated with this descriptor (if any) */ @@ -332,7 +332,7 @@ EntryFuture future = null; if (entry == null) { EntryFuture newEntry = new EntryFuture(); - Reference<?> newRef = new SoftReference<>(newEntry); + Reference<?> newRef = new SoftReference<EntryFuture>(newEntry); do { if (ref != null) { Caches.localDescs.remove(key, ref); @@ -1200,7 +1200,7 @@ private ClassDataSlot[] getClassDataLayout0() throws InvalidClassException { - ArrayList<ClassDataSlot> slots = new ArrayList<>(); + ArrayList<ClassDataSlot> slots = new ArrayList<ClassDataSlot>(); Class<?> start = cl, end = cl; // locate closest non-serializable superclass @@ -1208,7 +1208,7 @@ end = end.getSuperclass(); } - HashSet<String> oscNames = new HashSet<>(3); + HashSet<String> oscNames = new HashSet<String>(3); for (ObjectStreamClass d = this; d != null; d = d.superDesc) { if (oscNames.contains(d.name)) { @@ -1643,7 +1643,7 @@ ObjectStreamField[] boundFields = new ObjectStreamField[serialPersistentFields.length]; - Set<String> fieldNames = new HashSet<>(serialPersistentFields.length); + Set<String> fieldNames = new HashSet<String>(serialPersistentFields.length); for (int i = 0; i < serialPersistentFields.length; i++) { ObjectStreamField spf = serialPersistentFields[i]; @@ -1681,7 +1681,7 @@ */ private static ObjectStreamField[] getDefaultSerialFields(Class<?> cl) { Field[] clFields = cl.getDeclaredFields(); - ArrayList<ObjectStreamField> list = new ArrayList<>(); + ArrayList<ObjectStreamField> list = new ArrayList<ObjectStreamField>(); int mask = Modifier.STATIC | Modifier.TRANSIENT; for (int i = 0; i < clFields.length; i++) { @@ -1932,8 +1932,8 @@ writeKeys = new long[nfields]; offsets = new int[nfields]; typeCodes = new char[nfields]; - ArrayList<Class<?>> typeList = new ArrayList<>(); - Set<Long> usedKeys = new HashSet<>(); + ArrayList<Class<?>> typeList = new ArrayList<Class<?>>(); + Set<Long> usedKeys = new HashSet<Long>(); for (int i = 0; i < nfields; i++) { @@ -2169,7 +2169,7 @@ EntryFuture future = null; if (entry == null) { EntryFuture newEntry = new EntryFuture(); - Reference<?> newRef = new SoftReference<>(newEntry); + Reference<?> newRef = new SoftReference<EntryFuture>(newEntry); do { if (ref != null) { Caches.reflectors.remove(key, ref); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/ApplicationShutdownHooks.java openjdk-boot/jdk/src/share/classes/java/lang/ApplicationShutdownHooks.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/ApplicationShutdownHooks.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/ApplicationShutdownHooks.java 2017-04-26 16:05:48.587252087 +0100 @@ -47,7 +47,7 @@ } } ); - hooks = new IdentityHashMap<>(); + hooks = new IdentityHashMap<Thread, Thread>(); } catch (IllegalStateException e) { // application shutdown hooks cannot be added if // shutdown is in progress. diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/Character.java openjdk-boot/jdk/src/share/classes/java/lang/Character.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/Character.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/Character.java 2017-04-26 16:05:48.587252087 +0100 @@ -646,7 +646,8 @@ */ public static final class UnicodeBlock extends Subset { - private static Map<String, UnicodeBlock> map = new HashMap<>(256); + private static Map<String, UnicodeBlock> map + = new HashMap<String, UnicodeBlock>(256); /** * Creates a UnicodeBlock with the given identifier name. @@ -4175,7 +4176,7 @@ private static HashMap<String, Character.UnicodeScript> aliases; static { - aliases = new HashMap<>(128); + aliases = new HashMap<String, UnicodeScript>(128); aliases.put("ARAB", ARABIC); aliases.put("ARMI", IMPERIAL_ARAMAIC); aliases.put("ARMN", ARMENIAN); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/CharacterName.java openjdk-boot/jdk/src/share/classes/java/lang/CharacterName.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/CharacterName.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/CharacterName.java 2017-04-26 16:05:48.587252087 +0100 @@ -81,7 +81,7 @@ } while (cpOff < cpEnd); strPool = new byte[total - cpEnd]; dis.readFully(strPool); - refStrPool = new SoftReference<>(strPool); + refStrPool = new SoftReference<byte[]>(strPool); } catch (Exception x) { throw new InternalError(x.getMessage()); } finally { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/Class.java openjdk-boot/jdk/src/share/classes/java/lang/Class.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/Class.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/Class.java 2017-04-26 16:05:48.587252087 +0100 @@ -1359,7 +1359,7 @@ return java.security.AccessController.doPrivileged( new java.security.PrivilegedAction<Class<?>[]>() { public Class[] run() { - List<Class<?>> list = new ArrayList<>(); + List<Class<?>> list = new ArrayList<Class<?>>(); Class<?> currentClass = Class.this; while (currentClass != null) { Class<?>[] members = currentClass.getDeclaredClasses(); @@ -2442,9 +2442,9 @@ if (!useCaches) return null; while (true) { - ReflectionData<T> rd = new ReflectionData<>(classRedefinedCount); + ReflectionData<T> rd = new ReflectionData<T>(classRedefinedCount); // try to CAS it... - if (Atomic.casReflectionData(this, oldReflectionData, new SoftReference<>(rd))) { + if (Atomic.casReflectionData(this, oldReflectionData, new SoftReference<ReflectionData<T>>(rd))) { return rd; } // else retry @@ -2531,9 +2531,9 @@ // No cached value available; compute value recursively. // Traverse in correct order for getField(). - List<Field> fields = new ArrayList<>(); + List<Field> fields = new ArrayList<Field>(); if (traversedInterfaces == null) { - traversedInterfaces = new HashSet<>(); + traversedInterfaces = new HashSet<Class<?>>(); } // Local fields @@ -3160,7 +3160,7 @@ if (universe == null) throw new IllegalArgumentException( getName() + " is not an enum type"); - Map<String, T> m = new HashMap<>(2 * universe.length); + Map<String, T> m = new HashMap<String, T>(2 * universe.length); for (T constant : universe) m.put(((Enum<?>)constant).name(), constant); enumConstantDirectory = m; @@ -3284,7 +3284,7 @@ if (superClass == null) { annotations = declaredAnnotations; } else { - annotations = new HashMap<>(); + annotations = new HashMap<Class<? extends Annotation>, Annotation>(); superClass.initAnnotationsIfNecessary(); for (Map.Entry<Class<? extends Annotation>, Annotation> e : superClass.annotations.entrySet()) { Class<? extends Annotation> annotationClass = e.getKey(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/ClassLoader.java openjdk-boot/jdk/src/share/classes/java/lang/ClassLoader.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/ClassLoader.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/ClassLoader.java 2017-04-26 16:05:48.587252087 +0100 @@ -248,7 +248,7 @@ // The classes loaded by this class loader. The only purpose of this table // is to keep the classes from being GC'ed until the loader is GC'ed. - private final Vector<Class<?>> classes = new Vector<>(); + private final Vector<Class<?>> classes = new Vector<Class<?>>(); // The "default" domain. Set as the default ProtectionDomain on newly // created classes. @@ -267,7 +267,8 @@ // The packages defined in this class loader. Each package name is mapped // to its corresponding Package object. // @GuardedBy("itself") - private final HashMap<String, Package> packages = new HashMap<>(); + private final HashMap<String, Package> packages = + new HashMap<String, Package>(); private static Void checkCreateClassLoader() { SecurityManager security = System.getSecurityManager(); @@ -280,16 +281,16 @@ private ClassLoader(Void unused, ClassLoader parent) { this.parent = parent; if (ParallelLoaders.isRegistered(this.getClass())) { - parallelLockMap = new ConcurrentHashMap<>(); - package2certs = new ConcurrentHashMap<>(); + parallelLockMap = new ConcurrentHashMap<String, Object>(); + package2certs = new ConcurrentHashMap<String, Certificate[]>(); domains = Collections.synchronizedSet(new HashSet<ProtectionDomain>()); assertionLock = new Object(); } else { // no finer-grained lock; lock on the classloader instance parallelLockMap = null; - package2certs = new Hashtable<>(); - domains = new HashSet<>(); + package2certs = new Hashtable<String, Certificate[]>(); + domains = new HashSet<ProtectionDomain>(); assertionLock = this; } } @@ -1187,7 +1188,7 @@ } tmp[1] = findResources(name); - return new CompoundEnumeration<>(tmp); + return new CompoundEnumeration<URL>(tmp); } /** @@ -1686,7 +1687,7 @@ protected Package[] getPackages() { Map<String, Package> map; synchronized (packages) { - map = new HashMap<>(packages); + map = new HashMap<String, Package>(packages); } Package[] pkgs; if (parent != null) { @@ -1793,17 +1794,20 @@ } // All native library names we've loaded. - private static Vector<String> loadedLibraryNames = new Vector<>(); + private static Vector<String> loadedLibraryNames + = new Vector<String>(); // Native libraries belonging to system classes. private static Vector<NativeLibrary> systemNativeLibraries - = new Vector<>(); + = new Vector<NativeLibrary>(); // Native libraries associated with the class loader. - private Vector<NativeLibrary> nativeLibraries = new Vector<>(); + private Vector<NativeLibrary> nativeLibraries + = new Vector<NativeLibrary>(); // native libraries being loaded/unloaded. - private static Stack<NativeLibrary> nativeLibraryContext = new Stack<>(); + private static Stack<NativeLibrary> nativeLibraryContext + = new Stack<NativeLibrary>(); // The paths searched for libraries private static String usr_paths[]; @@ -2137,8 +2141,8 @@ * them to empty maps, effectively ignoring any present settings. */ synchronized (assertionLock) { - classAssertionStatus = new HashMap<>(); - packageAssertionStatus = new HashMap<>(); + classAssertionStatus = new HashMap<String, Boolean>(); + packageAssertionStatus = new HashMap<String, Boolean>(); defaultAssertionStatus = false; } } @@ -2200,8 +2204,8 @@ private void initializeJavaAssertionMaps() { // assert Thread.holdsLock(assertionLock); - classAssertionStatus = new HashMap<>(); - packageAssertionStatus = new HashMap<>(); + classAssertionStatus = new HashMap<String, Boolean>(); + packageAssertionStatus = new HashMap<String, Boolean>(); AssertionStatusDirectives directives = retrieveDirectives(); for(int i = 0; i < directives.classes.length; i++) diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/ClassValue.java openjdk-boot/jdk/src/share/classes/java/lang/ClassValue.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/ClassValue.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/ClassValue.java 2017-04-26 16:05:48.587252087 +0100 @@ -297,12 +297,12 @@ * Some machines may also require a barrier instruction to execute * before this.version. */ - private volatile Version<T> version = new Version<>(this); + private volatile Version<T> version = new Version<T>(this); Version<T> version() { return version; } - void bumpVersion() { version = new Version<>(this); } + void bumpVersion() { version = new Version<T>(this); } static class Version<T> { private final ClassValue<T> classValue; - private final Entry<T> promise = new Entry<>(this); + private final Entry<T> promise = new Entry<T>(this); Version(ClassValue<T> classValue) { this.classValue = classValue; } ClassValue<T> classValue() { return classValue; } Entry<T> promise() { return promise; } @@ -351,12 +351,12 @@ Entry<T> refreshVersion(Version<T> v2) { assertNotPromise(); @SuppressWarnings("unchecked") // if !isPromise, type is T - Entry<T> e2 = new Entry<>(v2, (T) value); + Entry<T> e2 = new Entry<T>(v2, (T) value); clear(); // value = null -- caller must drop return e2; } - static final Entry<?> DEAD_ENTRY = new Entry<>(null, null); + static final Entry<?> DEAD_ENTRY = new Entry<Object>(null, null); } /** Return the backing map associated with this type. */ @@ -382,7 +382,7 @@ static <T> Entry<T> makeEntry(Version<T> explicitVersion, T value) { // Note that explicitVersion might be different from this.version. - return new Entry<>(explicitVersion, value); + return new Entry<T>(explicitVersion, value); // As soon as the Entry is put into the cache, the value will be // reachable via a data race (as defined by the Java Memory Model). diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/BoundMethodHandle.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/BoundMethodHandle.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/BoundMethodHandle.java 2017-04-26 15:02:12.612808977 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/BoundMethodHandle.java 2017-04-26 16:05:48.587252087 +0100 @@ -393,7 +393,7 @@ } private boolean isPlaceholder() { return clazz == null; } - private static final HashMap<String, SpeciesData> CACHE = new HashMap<>(); + private static final HashMap<String, SpeciesData> CACHE = new HashMap<String, SpeciesData>(); private static final boolean INIT_DONE; // set after <clinit> finishes... SpeciesData extendWithType(char type) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java 2017-04-26 16:05:48.587252087 +0100 @@ -290,7 +290,7 @@ if (UNSAFE.shouldBeInitialized(type)) // If the previous call didn't block, this can happen. // We are executing inside <clinit>. - return new WeakReference<>(Thread.currentThread()); + return new WeakReference<Thread>(Thread.currentThread()); return null; } static final EnsureInitialized INSTANCE = new EnsureInitialized(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java 2017-04-26 15:02:12.612808977 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java 2017-04-26 16:05:48.587252087 +0100 @@ -129,7 +129,7 @@ static { if (DUMP_CLASS_FILES) { - DUMP_CLASS_FILES_COUNTERS = new HashMap<>(); + DUMP_CLASS_FILES_COUNTERS = new HashMap<String,Integer>(); try { File dumpDir = new File("DUMP_CLASS_FILES"); if (!dumpDir.exists()) { @@ -198,7 +198,7 @@ } } - Map<Object, CpPatch> cpPatches = new HashMap<>(); + Map<Object, CpPatch> cpPatches = new HashMap<Object, CpPatch>(); int cph = 0; // for counting constant placeholders diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/LambdaForm.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/LambdaForm.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/LambdaForm.java 2017-04-26 15:02:12.612808977 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/LambdaForm.java 2017-04-26 16:05:48.591252022 +0100 @@ -468,12 +468,12 @@ int capacity = 512; // expect many distinct signatures over time float loadFactor = 0.75f; // normal default int writers = 1; - PREPARED_FORMS = new ConcurrentHashMap<>(capacity, loadFactor, writers); + PREPARED_FORMS = new ConcurrentHashMap<String,LambdaForm>(capacity, loadFactor, writers); } private static Map<String,LambdaForm> computeInitialPreparedForms() { // Find all predefined invokers and associate them with canonical empty lambda forms. - HashMap<String,LambdaForm> forms = new HashMap<>(); + HashMap<String,LambdaForm> forms = new HashMap<String,LambdaForm>(); for (MemberName m : MemberName.getFactory().getMethods(LambdaForm.class, false, null, null, null)) { if (!m.isStatic() || !m.isPackage()) continue; MethodType mt = m.getMethodType(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MemberName.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MemberName.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MemberName.java 2017-04-26 15:02:11.632824724 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MemberName.java 2017-04-26 16:05:48.591252022 +0100 @@ -808,14 +808,14 @@ // JVM returned to us with an intentional overflow! totalCount += buf.length; int excess = bufCount - buf.length; - if (bufs == null) bufs = new ArrayList<>(1); + if (bufs == null) bufs = new ArrayList<MemberName[]>(1); bufs.add(buf); int len2 = buf.length; len2 = Math.max(len2, excess); len2 = Math.max(len2, totalCount / 4); buf = newMemberBuffer(Math.min(BUF_MAX, len2)); } - ArrayList<MemberName> result = new ArrayList<>(totalCount); + ArrayList<MemberName> result = new ArrayList<MemberName>(totalCount); if (bufs != null) { for (MemberName[] buf0 : bufs) { Collections.addAll(result, buf0); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleImpl.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleImpl.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleImpl.java 2017-04-26 15:02:12.612808977 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleImpl.java 2017-04-26 16:05:48.591252022 +0100 @@ -73,8 +73,8 @@ static final class ArrayAccessor { /// Support for array element access - static final HashMap<Class<?>, MethodHandle> GETTER_CACHE = new HashMap<>(); // TODO use it - static final HashMap<Class<?>, MethodHandle> SETTER_CACHE = new HashMap<>(); // TODO use it + static final HashMap<Class<?>, MethodHandle> GETTER_CACHE = new HashMap<Class<?>, MethodHandle>(); // TODO use it + static final HashMap<Class<?>, MethodHandle> SETTER_CACHE = new HashMap<Class<?>, MethodHandle>(); // TODO use it static int getElementI(int[] a, int i) { return a[i]; } static long getElementJ(long[] a, int i) { return a[i]; } @@ -686,7 +686,7 @@ } } static MethodHandle[] makeInvokes() { - ArrayList<MethodHandle> invokes = new ArrayList<>(); + ArrayList<MethodHandle> invokes = new ArrayList<MethodHandle>(); MethodHandles.Lookup lookup = IMPL_LOOKUP; for (;;) { int nargs = invokes.size(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandle.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandle.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandle.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandle.java 2017-04-26 16:05:48.591252022 +0100 @@ -834,7 +834,7 @@ } } if (sawProblem) { - ArrayList<Class<?>> ptypes = new ArrayList<>(type().parameterList()); + ArrayList<Class<?>> ptypes = new ArrayList<Class<?>>(type().parameterList()); for (int i = nargs - arrayLength; i < nargs; i++) { ptypes.set(i, arrayElement); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandles.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandles.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandles.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandles.java 2017-04-26 16:05:48.591252022 +0100 @@ -1953,7 +1953,7 @@ int inargs = outargs + dropped; if (pos < 0 || pos >= inargs) throw newIllegalArgumentException("no argument type to remove"); - ArrayList<Class<?>> ptypes = new ArrayList<>(oldType.parameterList()); + ArrayList<Class<?>> ptypes = new ArrayList<Class<?>>(oldType.parameterList()); ptypes.addAll(pos, valueTypes); if (ptypes.size() != inargs) throw newIllegalArgumentException("valueTypes"); MethodType newType = MethodType.methodType(oldType.returnType(), ptypes); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodType.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodType.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodType.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodType.java 2017-04-26 16:05:48.591252022 +0100 @@ -1048,7 +1048,7 @@ private final float loadFactor; // Reference queue for cleared WeakEntries - private final ReferenceQueue<Object> queue = new ReferenceQueue<>(); + private final ReferenceQueue<Object> queue = new ReferenceQueue<Object>(); private Entry[] newTable(int n) { return new Entry[n]; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/management/ManagementFactory.java openjdk-boot/jdk/src/share/classes/java/lang/management/ManagementFactory.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/management/ManagementFactory.java 2017-04-26 15:02:12.536810200 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/management/ManagementFactory.java 2017-04-26 16:05:48.591252022 +0100 @@ -789,7 +789,7 @@ getPlatformManagementInterfaces() { Set<Class<? extends PlatformManagedObject>> result = - new HashSet<>(); + new HashSet<Class<? extends PlatformManagedObject>>(); for (PlatformComponent component: PlatformComponent.values()) { result.add(component.getMXBeanInterface()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/management/PlatformComponent.java openjdk-boot/jdk/src/share/classes/java/lang/management/PlatformComponent.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/management/PlatformComponent.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/management/PlatformComponent.java 2017-04-26 16:05:48.591252022 +0100 @@ -287,7 +287,7 @@ List<T> getGcMXBeanList(Class<T> gcMXBeanIntf) { List<GarbageCollectorMXBean> list = ManagementFactoryHelper.getGarbageCollectorMXBeans(); - List<T> result = new ArrayList<>(list.size()); + List<T> result = new ArrayList<T>(list.size()); for (GarbageCollectorMXBean m : list) { if (gcMXBeanIntf.isInstance(m)) { result.add(gcMXBeanIntf.cast(m)); @@ -342,7 +342,7 @@ } private static Set<String> keyProperties(String... keyNames) { - Set<String> set = new HashSet<>(); + Set<String> set = new HashSet<String>(); set.add("type"); for (String s : keyNames) { set.add(s); @@ -407,7 +407,7 @@ List<T> getMXBeans(MBeanServerConnection mbs, Class<T> mxbeanInterface) throws java.io.IOException { - List<T> result = new ArrayList<>(); + List<T> result = new ArrayList<T>(); for (ObjectName on : getObjectNames(mbs)) { result.add(ManagementFactory. newPlatformMXBeanProxy(mbs, @@ -438,7 +438,7 @@ private static Map<String, PlatformComponent> enumMap; private static synchronized void ensureInitialized() { if (enumMap == null) { - enumMap = new HashMap<>(); + enumMap = new HashMap<String,PlatformComponent>(); for (PlatformComponent pc: PlatformComponent.values()) { // Use String as the key rather than Class<?> to avoid // causing unnecessary class loading of management interface diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/Package.java openjdk-boot/jdk/src/share/classes/java/lang/Package.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/Package.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/Package.java 2017-04-26 16:05:48.591252022 +0100 @@ -599,13 +599,16 @@ } // The map of loaded system packages - private static Map<String, Package> pkgs = new HashMap<>(31); + private static Map<String, Package> pkgs + = new HashMap<String, Package>(31); // Maps each directory or zip file name to its corresponding url - private static Map<String, URL> urls = new HashMap<>(10); + private static Map<String, URL> urls + = new HashMap<String, URL>(10); // Maps each code source url for a jar file to its manifest - private static Map<String, Manifest> mans = new HashMap<>(10); + private static Map<String, Manifest> mans + = new HashMap<String, Manifest>(10); private static native String getSystemPackage0(String name); private static native String[] getSystemPackages0(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/ProcessBuilder.java openjdk-boot/jdk/src/share/classes/java/lang/ProcessBuilder.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/ProcessBuilder.java 2017-04-26 15:02:12.536810200 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/ProcessBuilder.java 2017-04-26 16:05:48.591252022 +0100 @@ -214,7 +214,7 @@ * @param command a string array containing the program and its arguments */ public ProcessBuilder(String... command) { - this.command = new ArrayList<>(command.length); + this.command = new ArrayList<String>(command.length); for (String arg : command) this.command.add(arg); } @@ -251,7 +251,7 @@ * @return this process builder */ public ProcessBuilder command(String... command) { - this.command = new ArrayList<>(command.length); + this.command = new ArrayList<String>(command.length); for (String arg : command) this.command.add(arg); return this; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/Constructor.java openjdk-boot/jdk/src/share/classes/java/lang/reflect/Constructor.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/Constructor.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/reflect/Constructor.java 2017-04-26 16:05:48.591252022 +0100 @@ -137,7 +137,7 @@ // which implicitly requires that new java.lang.reflect // objects be fabricated for each reflective call on Class // objects.) - Constructor<T> res = new Constructor<>(clazz, + Constructor<T> res = new Constructor<T>(clazz, parameterTypes, exceptionTypes, modifiers, slot, signature, diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/Proxy.java openjdk-boot/jdk/src/share/classes/java/lang/reflect/Proxy.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/Proxy.java 2017-04-26 15:02:12.536810200 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/reflect/Proxy.java 2017-04-26 16:05:48.591252022 +0100 @@ -234,7 +234,7 @@ * a cache of proxy classes */ private static final WeakCache<ClassLoader, Class<?>[], Class<?>> - proxyClassCache = new WeakCache<>(new KeyFactory(), new ProxyClassFactory()); + proxyClassCache = new WeakCache<ClassLoader, Class<?>[], Class<?>>(new KeyFactory(), new ProxyClassFactory()); /** * the invocation handler for this proxy instance. @@ -601,7 +601,7 @@ @Override public Class<?> apply(ClassLoader loader, Class<?>[] interfaces) { - Map<Class<?>, Boolean> interfaceSet = new IdentityHashMap<>(interfaces.length); + Map<Class<?>, Boolean> interfaceSet = new IdentityHashMap<Class<?>, Boolean>(interfaces.length); for (Class<?> intf : interfaces) { /* * Verify that the class loader resolves the name of this diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/ReflectAccess.java openjdk-boot/jdk/src/share/classes/java/lang/reflect/ReflectAccess.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/ReflectAccess.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/reflect/ReflectAccess.java 2017-04-26 16:05:48.591252022 +0100 @@ -84,7 +84,7 @@ byte[] annotations, byte[] parameterAnnotations) { - return new Constructor<>(declaringClass, + return new Constructor<T>(declaringClass, parameterTypes, checkedExceptions, modifiers, diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/WeakCache.java openjdk-boot/jdk/src/share/classes/java/lang/reflect/WeakCache.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/reflect/WeakCache.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/reflect/WeakCache.java 2017-04-26 16:10:51.350343003 +0100 @@ -71,12 +71,12 @@ } private final ReferenceQueue<K> refQueue - = new ReferenceQueue<>(); + = new ReferenceQueue<K>(); // the key type is Object for supporting null key private final ConcurrentMap<Object, ConcurrentMap<Object, Supplier<V>>> map - = new ConcurrentHashMap<>(); + = new ConcurrentHashMap<Object, ConcurrentMap<Object, Supplier<V>>>(); private final ConcurrentMap<Supplier<V>, Boolean> reverseMap - = new ConcurrentHashMap<>(); + = new ConcurrentHashMap<Supplier<V>, Boolean>(); private final BiFunction<K, P, ?> subKeyFactory; private final BiFunction<K, P, V> valueFactory; @@ -123,7 +123,7 @@ if (valuesMap == null) { ConcurrentMap<Object, Supplier<V>> oldValuesMap = map.putIfAbsent(cacheKey, - valuesMap = new ConcurrentHashMap<>()); + valuesMap = new ConcurrentHashMap<Object, Supplier<V>>()); if (oldValuesMap != null) { valuesMap = oldValuesMap; } @@ -186,7 +186,7 @@ Objects.requireNonNull(value); expungeStaleEntries(); - return reverseMap.containsKey(new LookupValue<>(value)); + return reverseMap.containsKey(new LookupValue<V>(value)); } /** @@ -251,7 +251,7 @@ assert value != null; // wrap value with CacheValue (WeakReference) - CacheValue<V> cacheValue = new CacheValue<>(value); + CacheValue<V> cacheValue = new CacheValue<V>(value); // put into reverseMap reverseMap.put(cacheValue, Boolean.TRUE); @@ -349,7 +349,7 @@ // so we use a NULL_KEY singleton as cache key ? NULL_KEY // non-null key requires wrapping with a WeakReference - : new CacheKey<>(key, refQueue); + : new CacheKey<K>(key, refQueue); } private final int hash; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/StringCoding.java openjdk-boot/jdk/src/share/classes/java/lang/StringCoding.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/StringCoding.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/StringCoding.java 2017-04-26 16:05:48.591252022 +0100 @@ -53,9 +53,9 @@ /** The cached coders for each thread */ private final static ThreadLocal<SoftReference<StringDecoder>> decoder = - new ThreadLocal<>(); + new ThreadLocal<SoftReference<StringDecoder>>(); private final static ThreadLocal<SoftReference<StringEncoder>> encoder = - new ThreadLocal<>(); + new ThreadLocal<SoftReference<StringEncoder>>(); private static boolean warnUnsupportedCharset = true; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/String.java openjdk-boot/jdk/src/share/classes/java/lang/String.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/String.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/String.java 2017-04-26 16:05:48.591252022 +0100 @@ -2282,7 +2282,7 @@ int off = 0; int next = 0; boolean limited = limit > 0; - ArrayList<String> list = new ArrayList<>(); + ArrayList<String> list = new ArrayList<String>(); while ((next = indexOf(ch, off)) != -1) { if (!limited || list.size() < limit - 1) { list.add(substring(off, next)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/Thread.java openjdk-boot/jdk/src/share/classes/java/lang/Thread.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/Thread.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/Thread.java 2017-04-26 16:05:48.591252022 +0100 @@ -1638,7 +1638,8 @@ // Get a snapshot of the list of all threads Thread[] threads = getThreads(); StackTraceElement[][] traces = dumpThreads(threads); - Map<Thread, StackTraceElement[]> m = new HashMap<>(threads.length); + Map<Thread, StackTraceElement[]> m + = new HashMap<Thread, StackTraceElement[]>(threads.length); for (int i = 0; i < threads.length; i++) { StackTraceElement[] stackTrace = traces[i]; if (stackTrace != null) { @@ -1659,11 +1660,11 @@ private static class Caches { /** cache of subclass security audit results */ static final ConcurrentMap<WeakClassKey,Boolean> subclassAudits = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<WeakClassKey,Boolean>(); /** queue for WeakReferences to audited subclasses */ static final ReferenceQueue<Class<?>> subclassAuditsQueue = - new ReferenceQueue<>(); + new ReferenceQueue<Class<?>>(); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/Throwable.java openjdk-boot/jdk/src/share/classes/java/lang/Throwable.java --- openjdk-boot.orig/jdk/src/share/classes/java/lang/Throwable.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/lang/Throwable.java 2017-04-26 16:05:48.595251957 +0100 @@ -918,7 +918,7 @@ // Use the sentinel for a zero-length list suppressed = SUPPRESSED_SENTINEL; } else { // Copy Throwables to new list - suppressed = new ArrayList<>(1); + suppressed = new ArrayList<Throwable>(1); for (Throwable t : suppressedExceptions) { // Enforce constraints on suppressed exceptions in // case of corrupt or malicious stream. @@ -1049,7 +1049,7 @@ return; if (suppressedExceptions == SUPPRESSED_SENTINEL) - suppressedExceptions = new ArrayList<>(1); + suppressedExceptions = new ArrayList<Throwable>(1); suppressedExceptions.add(exception); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/net/InetAddress.java openjdk-boot/jdk/src/share/classes/java/net/InetAddress.java --- openjdk-boot.orig/jdk/src/share/classes/java/net/InetAddress.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/net/InetAddress.java 2017-04-26 16:05:48.595251957 +0100 @@ -733,7 +733,7 @@ static InetAddressImpl impl; - private static final HashMap<String, Void> lookupTable = new HashMap<>(); + private static final HashMap<String, Void> lookupTable = new HashMap<String, Void>(); /** * Represents a cache entry @@ -792,7 +792,7 @@ // As we iterate in insertion order we can // terminate when a non-expired entry is found. - LinkedList<String> expired = new LinkedList<>(); + LinkedList<String> expired = new LinkedList<String>(); long now = System.currentTimeMillis(); for (String key : cache.keySet()) { CacheEntry entry = cache.get(key); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/net/SocketPermission.java openjdk-boot/jdk/src/share/classes/java/net/SocketPermission.java --- openjdk-boot.orig/jdk/src/share/classes/java/net/SocketPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/net/SocketPermission.java 2017-04-26 16:05:48.595251957 +0100 @@ -1453,7 +1453,7 @@ // Don't call out.defaultWriteObject() // Write out Vector - Vector<SocketPermission> permissions = new Vector<>(perms.size()); + Vector<SocketPermission> permissions = new Vector<SocketPermission>(perms.size()); synchronized (this) { permissions.addAll(perms); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/net/URLClassLoader.java openjdk-boot/jdk/src/share/classes/java/net/URLClassLoader.java --- openjdk-boot.orig/jdk/src/share/classes/java/net/URLClassLoader.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/net/URLClassLoader.java 2017-04-26 16:05:48.595251957 +0100 @@ -198,7 +198,7 @@ */ private WeakHashMap<Closeable,Void> - closeables = new WeakHashMap<>(); + closeables = new WeakHashMap<Closeable, Void>(); /** * Returns an input stream for reading the specified resource. diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/net/URLConnection.java openjdk-boot/jdk/src/share/classes/java/net/URLConnection.java --- openjdk-boot.orig/jdk/src/share/classes/java/net/URLConnection.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/net/URLConnection.java 2017-04-26 16:05:48.595251957 +0100 @@ -1237,7 +1237,7 @@ factory = fac; } - private static Hashtable<String, ContentHandler> handlers = new Hashtable<>(); + private static Hashtable<String, ContentHandler> handlers = new Hashtable<String, ContentHandler>(); /** * Gets the Content Handler appropriate for this connection. diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/net/URL.java openjdk-boot/jdk/src/share/classes/java/net/URL.java --- openjdk-boot.orig/jdk/src/share/classes/java/net/URL.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/net/URL.java 2017-04-26 16:05:48.595251957 +0100 @@ -1126,7 +1126,7 @@ /** * A table of protocol handlers. */ - static Hashtable<String,URLStreamHandler> handlers = new Hashtable<>(); + static Hashtable<String,URLStreamHandler> handlers = new Hashtable<String,URLStreamHandler>(); private static Object streamHandlerLock = new Object(); // special case the gopher protocol, disabled by default diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/nio/file/Files.java openjdk-boot/jdk/src/share/classes/java/nio/file/Files.java --- openjdk-boot.orig/jdk/src/share/classes/java/nio/file/Files.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/java/nio/file/Files.java 2017-04-26 16:05:48.595251957 +0100 @@ -1504,7 +1504,7 @@ return AccessController .doPrivileged(new PrivilegedAction<List<FileTypeDetector>>() { @Override public List<FileTypeDetector> run() { - List<FileTypeDetector> list = new ArrayList<>(); + List<FileTypeDetector> list = new ArrayList<FileTypeDetector>(); ServiceLoader<FileTypeDetector> loader = ServiceLoader .load(FileTypeDetector.class, ClassLoader.getSystemClassLoader()); for (FileTypeDetector detector: loader) { @@ -3055,7 +3055,7 @@ BufferedReader reader = null; try { reader = newBufferedReader(path, cs); - List<String> result = new ArrayList<>(); + List<String> result = new ArrayList<String>(); for (;;) { String line = reader.readLine(); if (line == null) diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/AccessControlContext.java openjdk-boot/jdk/src/share/classes/java/security/AccessControlContext.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/AccessControlContext.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/AccessControlContext.java 2017-04-26 16:05:48.595251957 +0100 @@ -134,7 +134,7 @@ this.context = null; } } else { - List<ProtectionDomain> v = new ArrayList<>(context.length); + List<ProtectionDomain> v = new ArrayList<ProtectionDomain>(context.length); for (int i =0; i< context.length; i++) { if ((context[i] != null) && (!v.contains(context[i]))) v.add(context[i]); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/BasicPermission.java openjdk-boot/jdk/src/share/classes/java/security/BasicPermission.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/BasicPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/BasicPermission.java 2017-04-26 16:05:48.595251957 +0100 @@ -514,7 +514,7 @@ // Copy perms into a Hashtable Hashtable<String, Permission> permissions = - new Hashtable<>(perms.size()*2); + new Hashtable<String, Permission>(perms.size()*2); synchronized (this) { permissions.putAll(perms); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/CodeSource.java openjdk-boot/jdk/src/share/classes/java/security/CodeSource.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/CodeSource.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/CodeSource.java 2017-04-26 16:05:48.595251957 +0100 @@ -188,7 +188,7 @@ } else if (signers != null) { // Convert the code signers to certs ArrayList<java.security.cert.Certificate> certChains = - new ArrayList<>(); + new ArrayList<java.security.cert.Certificate>(); for (int i = 0; i < signers.length; i++) { certChains.addAll( signers[i].getSignerCertPath().getCertificates()); @@ -606,10 +606,10 @@ // Iterate through all the certificates int i = 0; - List<CodeSigner> signers = new ArrayList<>(); + List<CodeSigner> signers = new ArrayList<CodeSigner>(); while (i < certs.length) { List<java.security.cert.Certificate> certChain = - new ArrayList<>(); + new ArrayList<java.security.cert.Certificate>(); certChain.add(certs[i++]); // first cert is an end-entity cert int j = i; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/Permissions.java openjdk-boot/jdk/src/share/classes/java/security/Permissions.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/Permissions.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/Permissions.java 2017-04-26 16:05:48.595251957 +0100 @@ -361,7 +361,7 @@ // Copy perms into a Hashtable Hashtable<Class<?>, PermissionCollection> perms = - new Hashtable<>(permsMap.size()*2); // no sync; estimate + new Hashtable<Class<?>, PermissionCollection>(permsMap.size()*2); // no sync; estimate synchronized (this) { perms.putAll(permsMap); } @@ -569,7 +569,7 @@ // Copy perms into a Hashtable Hashtable<Permission, Permission> perms = - new Hashtable<>(permsMap.size()*2); + new Hashtable<Permission, Permission>(permsMap.size()*2); synchronized (this) { perms.putAll(permsMap); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/Policy.java openjdk-boot/jdk/src/share/classes/java/security/Policy.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/Policy.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/Policy.java 2017-04-26 16:05:48.595251957 +0100 @@ -109,7 +109,7 @@ // PolicyInfo is stored in an AtomicReference private static AtomicReference<PolicyInfo> policy = - new AtomicReference<>(new PolicyInfo(null, false)); + new AtomicReference<PolicyInfo>(new PolicyInfo(null, false)); private static final Debug debug = Debug.getInstance("policy"); @@ -319,7 +319,7 @@ PermissionCollection policyPerms = null; synchronized (p) { if (p.pdMapping == null) { - p.pdMapping = new WeakHashMap<>(); + p.pdMapping = new WeakHashMap<ProtectionDomain.Key, PermissionCollection>(); } } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/ProtectionDomain.java openjdk-boot/jdk/src/share/classes/java/security/ProtectionDomain.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/ProtectionDomain.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/ProtectionDomain.java 2017-04-26 16:05:48.595251957 +0100 @@ -400,8 +400,8 @@ int swag = 32; int vcap = 8; Enumeration<Permission> e; - List<Permission> pdVector = new ArrayList<>(vcap); - List<Permission> plVector = new ArrayList<>(swag); + List<Permission> pdVector = new ArrayList<Permission>(vcap); + List<Permission> plVector = new ArrayList<Permission>(swag); // // Build a vector of domain permissions for subsequent merge diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/Provider.java openjdk-boot/jdk/src/share/classes/java/security/Provider.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/Provider.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/Provider.java 2017-04-26 16:05:48.595251957 +0100 @@ -434,7 +434,7 @@ private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException { - Map<Object,Object> copy = new HashMap<>(); + Map<Object,Object> copy = new HashMap<Object,Object>(); for (Map.Entry<Object,Object> entry : super.entrySet()) { copy.put(entry.getKey(), entry.getValue()); } @@ -716,7 +716,7 @@ } if (serviceSet == null) { ensureLegacyParsed(); - Set<Service> set = new LinkedHashSet<>(); + Set<Service> set = new LinkedHashSet<Service>(); if (serviceMap != null) { set.addAll(serviceMap.values()); } @@ -1404,7 +1404,7 @@ if (s != null) { String[] classNames = s.split("\\|"); List<Class<?>> classList = - new ArrayList<>(classNames.length); + new ArrayList<Class<?>>(classNames.length); for (String className : classNames) { Class<?> clazz = getKeyClass(className); if (clazz != null) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/SecureClassLoader.java openjdk-boot/jdk/src/share/classes/java/security/SecureClassLoader.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/SecureClassLoader.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/SecureClassLoader.java 2017-04-26 16:05:48.595251957 +0100 @@ -50,7 +50,7 @@ // HashMap that maps CodeSource to ProtectionDomain // @GuardedBy("pdcache") private final HashMap<CodeSource, ProtectionDomain> pdcache = - new HashMap<>(11); + new HashMap<CodeSource, ProtectionDomain>(11); private static final Debug debug = Debug.getInstance("scl"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/Security.java openjdk-boot/jdk/src/share/classes/java/security/Security.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/Security.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/Security.java 2017-04-26 16:05:48.595251957 +0100 @@ -544,7 +544,7 @@ value = filter.substring(index + 1); } - Hashtable<String, String> hashtableFilter = new Hashtable<>(1); + Hashtable<String, String> hashtableFilter = new Hashtable<String, String>(1); hashtableFilter.put(key, value); return (getProviders(hashtableFilter)); @@ -604,7 +604,7 @@ // Then only return those providers who satisfy the selection criteria. Provider[] allProviders = Security.getProviders(); Set<String> keySet = filter.keySet(); - LinkedHashSet<Provider> candidates = new LinkedHashSet<>(5); + LinkedHashSet<Provider> candidates = new LinkedHashSet<Provider>(5); // Returns all installed providers // if the selection criteria is null. @@ -659,7 +659,7 @@ // Map containing cached Spi Class objects of the specified type private static final Map<String, Class<?>> spiMap = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<String, Class<?>>(); /** * Return the Class object for the given engine type @@ -883,7 +883,7 @@ String attrName, String filterValue, Provider[] allProviders) { - LinkedHashSet<Provider> candidates = new LinkedHashSet<>(5); + LinkedHashSet<Provider> candidates = new LinkedHashSet<Provider>(5); for (int i = 0; i < allProviders.length; i++) { if (isCriterionSatisfied(allProviders[i], serviceName, algName, @@ -1080,7 +1080,7 @@ return Collections.emptySet(); } - HashSet<String> result = new HashSet<>(); + HashSet<String> result = new HashSet<String>(); Provider[] providers = Security.getProviders(); for (int i = 0; i < providers.length; i++) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/UnresolvedPermissionCollection.java openjdk-boot/jdk/src/share/classes/java/security/UnresolvedPermissionCollection.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/UnresolvedPermissionCollection.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/UnresolvedPermissionCollection.java 2017-04-26 16:05:48.595251957 +0100 @@ -119,7 +119,7 @@ public Enumeration<Permission> elements() { List<Permission> results = - new ArrayList<>(); // where results are stored + new ArrayList<Permission>(); // where results are stored // Get iterator of Map values (which are lists of permissions) synchronized (this) { @@ -161,7 +161,7 @@ // Copy perms into a Hashtable Hashtable<String, Vector<UnresolvedPermission>> permissions = - new Hashtable<>(perms.size()*2); + new Hashtable<String, Vector<UnresolvedPermission>>(perms.size()*2); // Convert each entry (List) into a Vector synchronized (this) { @@ -169,7 +169,7 @@ for (Map.Entry<String, List<UnresolvedPermission>> e : set) { // Convert list into Vector List<UnresolvedPermission> list = e.getValue(); - Vector<UnresolvedPermission> vec = new Vector<>(list.size()); + Vector<UnresolvedPermission> vec = new Vector<UnresolvedPermission>(list.size()); synchronized (list) { vec.addAll(list); } @@ -210,7 +210,7 @@ for (Map.Entry<String, Vector<UnresolvedPermission>> e : set) { // Convert Vector into ArrayList Vector<UnresolvedPermission> vec = e.getValue(); - List<UnresolvedPermission> list = new ArrayList<>(vec.size()); + List<UnresolvedPermission> list = new ArrayList<UnresolvedPermission>(vec.size()); list.addAll(vec); // Add to Hashtable being serialized diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/security/UnresolvedPermission.java openjdk-boot/jdk/src/share/classes/java/security/UnresolvedPermission.java --- openjdk-boot.orig/jdk/src/share/classes/java/security/UnresolvedPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/security/UnresolvedPermission.java 2017-04-26 16:05:48.595251957 +0100 @@ -196,7 +196,7 @@ if (this.certs == null) { // extract the signer certs ArrayList<java.security.cert.Certificate> signerCerts = - new ArrayList<>(); + new ArrayList<java.security.cert.Certificate>(); i = 0; while (i < certs.length) { signerCerts.add(certs[i]); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/AbstractList.java openjdk-boot/jdk/src/share/classes/java/util/AbstractList.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/AbstractList.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/AbstractList.java 2017-04-26 16:05:48.595251957 +0100 @@ -482,8 +482,8 @@ */ public List<E> subList(int fromIndex, int toIndex) { return (this instanceof RandomAccess ? - new RandomAccessSubList<>(this, fromIndex, toIndex) : - new SubList<>(this, fromIndex, toIndex)); + new RandomAccessSubList<E>(this, fromIndex, toIndex) : + new SubList<E>(this, fromIndex, toIndex)); } // Comparison and hashing @@ -747,7 +747,7 @@ } public List<E> subList(int fromIndex, int toIndex) { - return new SubList<>(this, fromIndex, toIndex); + return new SubList<E>(this, fromIndex, toIndex); } private void rangeCheck(int index) { @@ -776,6 +776,6 @@ } public List<E> subList(int fromIndex, int toIndex) { - return new RandomAccessSubList<>(this, fromIndex, toIndex); + return new RandomAccessSubList<E>(this, fromIndex, toIndex); } } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Arrays.java openjdk-boot/jdk/src/share/classes/java/util/Arrays.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Arrays.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Arrays.java 2017-04-26 16:05:48.599251892 +0100 @@ -2825,7 +2825,7 @@ */ @SafeVarargs public static <T> List<T> asList(T... a) { - return new ArrayList<>(a); + return new ArrayList<T>(a); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Collections.java openjdk-boot/jdk/src/share/classes/java/util/Collections.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Collections.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Collections.java 2017-04-26 16:05:48.599251892 +0100 @@ -1035,7 +1035,7 @@ * @return an unmodifiable view of the specified collection. */ public static <T> Collection<T> unmodifiableCollection(Collection<? extends T> c) { - return new UnmodifiableCollection<>(c); + return new UnmodifiableCollection<T>(c); } /** @@ -1109,7 +1109,7 @@ * @return an unmodifiable view of the specified set. */ public static <T> Set<T> unmodifiableSet(Set<? extends T> s) { - return new UnmodifiableSet<>(s); + return new UnmodifiableSet<T>(s); } /** @@ -1141,7 +1141,7 @@ * @return an unmodifiable view of the specified sorted set. */ public static <T> SortedSet<T> unmodifiableSortedSet(SortedSet<T> s) { - return new UnmodifiableSortedSet<>(s); + return new UnmodifiableSortedSet<T>(s); } /** @@ -1158,13 +1158,13 @@ public Comparator<? super E> comparator() {return ss.comparator();} public SortedSet<E> subSet(E fromElement, E toElement) { - return new UnmodifiableSortedSet<>(ss.subSet(fromElement,toElement)); + return new UnmodifiableSortedSet<E>(ss.subSet(fromElement,toElement)); } public SortedSet<E> headSet(E toElement) { - return new UnmodifiableSortedSet<>(ss.headSet(toElement)); + return new UnmodifiableSortedSet<E>(ss.headSet(toElement)); } public SortedSet<E> tailSet(E fromElement) { - return new UnmodifiableSortedSet<>(ss.tailSet(fromElement)); + return new UnmodifiableSortedSet<E>(ss.tailSet(fromElement)); } public E first() {return ss.first();} @@ -1188,8 +1188,8 @@ */ public static <T> List<T> unmodifiableList(List<? extends T> list) { return (list instanceof RandomAccess ? - new UnmodifiableRandomAccessList<>(list) : - new UnmodifiableList<>(list)); + new UnmodifiableRandomAccessList<T>(list) : + new UnmodifiableList<T>(list)); } /** @@ -1250,7 +1250,7 @@ } public List<E> subList(int fromIndex, int toIndex) { - return new UnmodifiableList<>(list.subList(fromIndex, toIndex)); + return new UnmodifiableList<E>(list.subList(fromIndex, toIndex)); } /** @@ -1267,7 +1267,7 @@ */ private Object readResolve() { return (list instanceof RandomAccess - ? new UnmodifiableRandomAccessList<>(list) + ? new UnmodifiableRandomAccessList<E>(list) : this); } } @@ -1283,7 +1283,7 @@ } public List<E> subList(int fromIndex, int toIndex) { - return new UnmodifiableRandomAccessList<>( + return new UnmodifiableRandomAccessList<E>( list.subList(fromIndex, toIndex)); } @@ -1296,7 +1296,7 @@ * deserialization. */ private Object writeReplace() { - return new UnmodifiableList<>(list); + return new UnmodifiableList<E>(list); } } @@ -1315,7 +1315,7 @@ * @return an unmodifiable view of the specified map. */ public static <K,V> Map<K,V> unmodifiableMap(Map<? extends K, ? extends V> m) { - return new UnmodifiableMap<>(m); + return new UnmodifiableMap<K,V>(m); } /** @@ -1363,7 +1363,7 @@ public Set<Map.Entry<K,V>> entrySet() { if (entrySet==null) - entrySet = new UnmodifiableEntrySet<>(m.entrySet()); + entrySet = new UnmodifiableEntrySet<K,V>(m.entrySet()); return entrySet; } @@ -1400,7 +1400,7 @@ return i.hasNext(); } public Map.Entry<K,V> next() { - return new UnmodifiableEntry<>(i.next()); + return new UnmodifiableEntry<K,V>(i.next()); } public void remove() { throw new UnsupportedOperationException(); @@ -1411,7 +1411,7 @@ public Object[] toArray() { Object[] a = c.toArray(); for (int i=0; i<a.length; i++) - a[i] = new UnmodifiableEntry<>((Map.Entry<K,V>)a[i]); + a[i] = new UnmodifiableEntry<K,V>((Map.Entry<K,V>)a[i]); return a; } @@ -1422,7 +1422,7 @@ Object[] arr = c.toArray(a.length==0 ? a : Arrays.copyOf(a, 0)); for (int i=0; i<arr.length; i++) - arr[i] = new UnmodifiableEntry<>((Map.Entry<K,V>)arr[i]); + arr[i] = new UnmodifiableEntry<K,V>((Map.Entry<K,V>)arr[i]); if (arr.length > a.length) return (T[])arr; @@ -1443,7 +1443,7 @@ if (!(o instanceof Map.Entry)) return false; return c.contains( - new UnmodifiableEntry<>((Map.Entry<?,?>) o)); + new UnmodifiableEntry<Object,Object>((Map.Entry<?,?>) o)); } /** @@ -1519,7 +1519,7 @@ * @return an unmodifiable view of the specified sorted map. */ public static <K,V> SortedMap<K,V> unmodifiableSortedMap(SortedMap<K, ? extends V> m) { - return new UnmodifiableSortedMap<>(m); + return new UnmodifiableSortedMap<K,V>(m); } /** @@ -1537,13 +1537,13 @@ public Comparator<? super K> comparator() {return sm.comparator();} public SortedMap<K,V> subMap(K fromKey, K toKey) { - return new UnmodifiableSortedMap<>(sm.subMap(fromKey, toKey)); + return new UnmodifiableSortedMap<K,V>(sm.subMap(fromKey, toKey)); } public SortedMap<K,V> headMap(K toKey) { - return new UnmodifiableSortedMap<>(sm.headMap(toKey)); + return new UnmodifiableSortedMap<K,V>(sm.headMap(toKey)); } public SortedMap<K,V> tailMap(K fromKey) { - return new UnmodifiableSortedMap<>(sm.tailMap(fromKey)); + return new UnmodifiableSortedMap<K,V>(sm.tailMap(fromKey)); } public K firstKey() {return sm.firstKey();} @@ -1585,11 +1585,11 @@ * @return a synchronized view of the specified collection. */ public static <T> Collection<T> synchronizedCollection(Collection<T> c) { - return new SynchronizedCollection<>(c); + return new SynchronizedCollection<T>(c); } static <T> Collection<T> synchronizedCollection(Collection<T> c, Object mutex) { - return new SynchronizedCollection<>(c, mutex); + return new SynchronizedCollection<T>(c, mutex); } /** @@ -1688,11 +1688,11 @@ * @return a synchronized view of the specified set. */ public static <T> Set<T> synchronizedSet(Set<T> s) { - return new SynchronizedSet<>(s); + return new SynchronizedSet<T>(s); } static <T> Set<T> synchronizedSet(Set<T> s, Object mutex) { - return new SynchronizedSet<>(s, mutex); + return new SynchronizedSet<T>(s, mutex); } /** @@ -1758,7 +1758,7 @@ * @return a synchronized view of the specified sorted set. */ public static <T> SortedSet<T> synchronizedSortedSet(SortedSet<T> s) { - return new SynchronizedSortedSet<>(s); + return new SynchronizedSortedSet<T>(s); } /** @@ -1787,18 +1787,18 @@ public SortedSet<E> subSet(E fromElement, E toElement) { synchronized (mutex) { - return new SynchronizedSortedSet<>( + return new SynchronizedSortedSet<E>( ss.subSet(fromElement, toElement), mutex); } } public SortedSet<E> headSet(E toElement) { synchronized (mutex) { - return new SynchronizedSortedSet<>(ss.headSet(toElement), mutex); + return new SynchronizedSortedSet<E>(ss.headSet(toElement), mutex); } } public SortedSet<E> tailSet(E fromElement) { synchronized (mutex) { - return new SynchronizedSortedSet<>(ss.tailSet(fromElement),mutex); + return new SynchronizedSortedSet<E>(ss.tailSet(fromElement),mutex); } } @@ -1837,14 +1837,14 @@ */ public static <T> List<T> synchronizedList(List<T> list) { return (list instanceof RandomAccess ? - new SynchronizedRandomAccessList<>(list) : - new SynchronizedList<>(list)); + new SynchronizedRandomAccessList<T>(list) : + new SynchronizedList<T>(list)); } static <T> List<T> synchronizedList(List<T> list, Object mutex) { return (list instanceof RandomAccess ? - new SynchronizedRandomAccessList<>(list, mutex) : - new SynchronizedList<>(list, mutex)); + new SynchronizedRandomAccessList<T>(list, mutex) : + new SynchronizedList<T>(list, mutex)); } /** @@ -1909,7 +1909,7 @@ public List<E> subList(int fromIndex, int toIndex) { synchronized (mutex) { - return new SynchronizedList<>(list.subList(fromIndex, toIndex), + return new SynchronizedList<E>(list.subList(fromIndex, toIndex), mutex); } } @@ -1928,7 +1928,7 @@ */ private Object readResolve() { return (list instanceof RandomAccess - ? new SynchronizedRandomAccessList<>(list) + ? new SynchronizedRandomAccessList<E>(list) : this); } } @@ -1950,7 +1950,7 @@ public List<E> subList(int fromIndex, int toIndex) { synchronized (mutex) { - return new SynchronizedRandomAccessList<>( + return new SynchronizedRandomAccessList<E>( list.subList(fromIndex, toIndex), mutex); } } @@ -1964,7 +1964,7 @@ * deserialization. */ private Object writeReplace() { - return new SynchronizedList<>(list); + return new SynchronizedList<E>(list); } } @@ -1996,7 +1996,7 @@ * @return a synchronized view of the specified map. */ public static <K,V> Map<K,V> synchronizedMap(Map<K,V> m) { - return new SynchronizedMap<>(m); + return new SynchronizedMap<K,V>(m); } /** @@ -2057,7 +2057,7 @@ public Set<K> keySet() { synchronized (mutex) { if (keySet==null) - keySet = new SynchronizedSet<>(m.keySet(), mutex); + keySet = new SynchronizedSet<K>(m.keySet(), mutex); return keySet; } } @@ -2065,7 +2065,7 @@ public Set<Map.Entry<K,V>> entrySet() { synchronized (mutex) { if (entrySet==null) - entrySet = new SynchronizedSet<>(m.entrySet(), mutex); + entrySet = new SynchronizedSet<Map.Entry<K,V>>(m.entrySet(), mutex); return entrySet; } } @@ -2073,7 +2073,7 @@ public Collection<V> values() { synchronized (mutex) { if (values==null) - values = new SynchronizedCollection<>(m.values(), mutex); + values = new SynchronizedCollection<V>(m.values(), mutex); return values; } } @@ -2137,7 +2137,7 @@ * @return a synchronized view of the specified sorted map. */ public static <K,V> SortedMap<K,V> synchronizedSortedMap(SortedMap<K,V> m) { - return new SynchronizedSortedMap<>(m); + return new SynchronizedSortedMap<K,V>(m); } @@ -2167,18 +2167,18 @@ public SortedMap<K,V> subMap(K fromKey, K toKey) { synchronized (mutex) { - return new SynchronizedSortedMap<>( + return new SynchronizedSortedMap<K,V>( sm.subMap(fromKey, toKey), mutex); } } public SortedMap<K,V> headMap(K toKey) { synchronized (mutex) { - return new SynchronizedSortedMap<>(sm.headMap(toKey), mutex); + return new SynchronizedSortedMap<K,V>(sm.headMap(toKey), mutex); } } public SortedMap<K,V> tailMap(K fromKey) { synchronized (mutex) { - return new SynchronizedSortedMap<>(sm.tailMap(fromKey),mutex); + return new SynchronizedSortedMap<K,V>(sm.tailMap(fromKey),mutex); } } @@ -2254,7 +2254,7 @@ */ public static <E> Collection<E> checkedCollection(Collection<E> c, Class<E> type) { - return new CheckedCollection<>(c, type); + return new CheckedCollection<E>(c, type); } @SuppressWarnings("unchecked") @@ -2386,7 +2386,7 @@ * @since 1.5 */ public static <E> Set<E> checkedSet(Set<E> s, Class<E> type) { - return new CheckedSet<>(s, type); + return new CheckedSet<E>(s, type); } /** @@ -2432,7 +2432,7 @@ */ public static <E> SortedSet<E> checkedSortedSet(SortedSet<E> s, Class<E> type) { - return new CheckedSortedSet<>(s, type); + return new CheckedSortedSet<E>(s, type); } /** @@ -2492,8 +2492,8 @@ */ public static <E> List<E> checkedList(List<E> list, Class<E> type) { return (list instanceof RandomAccess ? - new CheckedRandomAccessList<>(list, type) : - new CheckedList<>(list, type)); + new CheckedRandomAccessList<E>(list, type) : + new CheckedList<E>(list, type)); } /** @@ -2558,7 +2558,7 @@ } public List<E> subList(int fromIndex, int toIndex) { - return new CheckedList<>(list.subList(fromIndex, toIndex), type); + return new CheckedList<E>(list.subList(fromIndex, toIndex), type); } } @@ -2575,7 +2575,7 @@ } public List<E> subList(int fromIndex, int toIndex) { - return new CheckedRandomAccessList<>( + return new CheckedRandomAccessList<E>( list.subList(fromIndex, toIndex), type); } } @@ -2617,7 +2617,7 @@ public static <K, V> Map<K, V> checkedMap(Map<K, V> m, Class<K> keyType, Class<V> valueType) { - return new CheckedMap<>(m, keyType, valueType); + return new CheckedMap<K,V>(m, keyType, valueType); } @@ -2685,14 +2685,15 @@ // - protection from malicious t // - correct behavior if t is a concurrent map Object[] entries = t.entrySet().toArray(); - List<Map.Entry<K,V>> checked = new ArrayList<>(entries.length); + List<Map.Entry<K,V>> checked = + new ArrayList<Map.Entry<K,V>>(entries.length); for (Object o : entries) { Map.Entry<?,?> e = (Map.Entry<?,?>) o; Object k = e.getKey(); Object v = e.getValue(); typeCheck(k, v); checked.add( - new AbstractMap.SimpleImmutableEntry<>((K) k, (V) v)); + new AbstractMap.SimpleImmutableEntry<K,V>((K) k, (V) v)); } for (Map.Entry<K,V> e : checked) m.put(e.getKey(), e.getValue()); @@ -2702,7 +2703,7 @@ public Set<Map.Entry<K,V>> entrySet() { if (entrySet==null) - entrySet = new CheckedEntrySet<>(m.entrySet(), valueType); + entrySet = new CheckedEntrySet<K,V>(m.entrySet(), valueType); return entrySet; } @@ -2817,7 +2818,7 @@ if (!(o instanceof Map.Entry)) return false; return s.remove(new AbstractMap.SimpleImmutableEntry - <>((Map.Entry<?,?>)o)); + <Object, Object>((Map.Entry<?,?>)o)); } public boolean removeAll(Collection<?> c) { @@ -2850,7 +2851,7 @@ static <K,V,T> CheckedEntry<K,V,T> checkedEntry(Map.Entry<K,V> e, Class<T> valueType) { - return new CheckedEntry<>(e, valueType); + return new CheckedEntry<K,V,T>(e, valueType); } /** @@ -2891,7 +2892,7 @@ if (!(o instanceof Map.Entry)) return false; return e.equals(new AbstractMap.SimpleImmutableEntry - <>((Map.Entry<?,?>)o)); + <Object, Object>((Map.Entry<?,?>)o)); } } } @@ -2934,7 +2935,7 @@ public static <K,V> SortedMap<K,V> checkedSortedMap(SortedMap<K, V> m, Class<K> keyType, Class<V> valueType) { - return new CheckedSortedMap<>(m, keyType, valueType); + return new CheckedSortedMap<K,V>(m, keyType, valueType); } /** @@ -3000,7 +3001,7 @@ private static class EmptyIterator<E> implements Iterator<E> { static final EmptyIterator<Object> EMPTY_ITERATOR - = new EmptyIterator<>(); + = new EmptyIterator<Object>(); public boolean hasNext() { return false; } public E next() { throw new NoSuchElementException(); } @@ -3049,7 +3050,7 @@ implements ListIterator<E> { static final EmptyListIterator<Object> EMPTY_ITERATOR - = new EmptyListIterator<>(); + = new EmptyListIterator<Object>(); public boolean hasPrevious() { return false; } public E previous() { throw new NoSuchElementException(); } @@ -3085,7 +3086,7 @@ private static class EmptyEnumeration<E> implements Enumeration<E> { static final EmptyEnumeration<Object> EMPTY_ENUMERATION - = new EmptyEnumeration<>(); + = new EmptyEnumeration<Object>(); public boolean hasMoreElements() { return false; } public E nextElement() { throw new NoSuchElementException(); } @@ -3097,7 +3098,7 @@ * @see #emptySet() */ @SuppressWarnings("unchecked") - public static final Set EMPTY_SET = new EmptySet<>(); + public static final Set EMPTY_SET = new EmptySet<Object>(); /** * Returns the empty set (immutable). This set is serializable. @@ -3157,7 +3158,7 @@ * @see #emptyList() */ @SuppressWarnings("unchecked") - public static final List EMPTY_LIST = new EmptyList<>(); + public static final List EMPTY_LIST = new EmptyList<Object>(); /** * Returns the empty list (immutable). This list is serializable. @@ -3231,7 +3232,7 @@ * @since 1.3 */ @SuppressWarnings("unchecked") - public static final Map EMPTY_MAP = new EmptyMap<>(); + public static final Map EMPTY_MAP = new EmptyMap<Object,Object>(); /** * Returns the empty map (immutable). This map is serializable. @@ -3293,7 +3294,7 @@ * @return an immutable set containing only the specified object. */ public static <T> Set<T> singleton(T o) { - return new SingletonSet<>(o); + return new SingletonSet<T>(o); } static <E> Iterator<E> singletonIterator(final E e) { @@ -3346,7 +3347,7 @@ * @since 1.3 */ public static <T> List<T> singletonList(T o) { - return new SingletonList<>(o); + return new SingletonList<T>(o); } /** @@ -3388,7 +3389,7 @@ * @since 1.3 */ public static <K,V> Map<K,V> singletonMap(K key, V value) { - return new SingletonMap<>(key, value); + return new SingletonMap<K,V>(key, value); } /** @@ -3430,7 +3431,7 @@ public Set<Map.Entry<K,V>> entrySet() { if (entrySet==null) entrySet = Collections.<Map.Entry<K,V>>singleton( - new SimpleImmutableEntry<>(k, v)); + new SimpleImmutableEntry<K,V>(k, v)); return entrySet; } @@ -3462,7 +3463,7 @@ public static <T> List<T> nCopies(int n, T o) { if (n < 0) throw new IllegalArgumentException("List length = " + n); - return new CopiesList<>(n, o); + return new CopiesList<T>(n, o); } /** @@ -3536,7 +3537,7 @@ if (fromIndex > toIndex) throw new IllegalArgumentException("fromIndex(" + fromIndex + ") > toIndex(" + toIndex + ")"); - return new CopiesList<>(toIndex - fromIndex, element); + return new CopiesList<E>(toIndex - fromIndex, element); } } @@ -3604,7 +3605,7 @@ if (cmp instanceof ReverseComparator2) return ((ReverseComparator2<T>)cmp).cmp; - return new ReverseComparator2<>(cmp); + return new ReverseComparator2<T>(cmp); } /** @@ -3683,7 +3684,7 @@ * @see ArrayList */ public static <T> ArrayList<T> list(Enumeration<T> e) { - ArrayList<T> l = new ArrayList<>(); + ArrayList<T> l = new ArrayList<T>(); while (e.hasMoreElements()) l.add(e.nextElement()); return l; @@ -3876,7 +3877,7 @@ * @since 1.6 */ public static <E> Set<E> newSetFromMap(Map<E, Boolean> map) { - return new SetFromMap<>(map); + return new SetFromMap<E>(map); } /** @@ -3940,7 +3941,7 @@ * @since 1.6 */ public static <T> Queue<T> asLifoQueue(Deque<T> deque) { - return new AsLIFOQueue<>(deque); + return new AsLIFOQueue<T>(deque); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Currency.java openjdk-boot/jdk/src/share/classes/java/util/Currency.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Currency.java 2017-04-26 15:02:12.592809299 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Currency.java 2017-04-26 16:05:48.599251892 +0100 @@ -101,7 +101,7 @@ // class data: instance map - private static ConcurrentMap<String, Currency> instances = new ConcurrentHashMap<>(7); + private static ConcurrentMap<String, Currency> instances = new ConcurrentHashMap<String,Currency>(7); private static HashSet<Currency> available; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/EnumMap.java openjdk-boot/jdk/src/share/classes/java/util/EnumMap.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/EnumMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/EnumMap.java 2017-04-26 16:05:48.599251892 +0100 @@ -508,7 +508,7 @@ int j = 0; for (int i = 0; i < vals.length; i++) if (vals[i] != null) - a[j++] = new AbstractMap.SimpleEntry<>( + a[j++] = new AbstractMap.SimpleEntry<K,V>( keyUniverse[i], unmaskNull(vals[i])); return a; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/EnumSet.java openjdk-boot/jdk/src/share/classes/java/util/EnumSet.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/EnumSet.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/EnumSet.java 2017-04-26 16:05:48.599251892 +0100 @@ -110,9 +110,9 @@ throw new ClassCastException(elementType + " not an enum"); if (universe.length <= 64) - return new RegularEnumSet<>(elementType, universe); + return new RegularEnumSet<E>(elementType, universe); else - return new JumboEnumSet<>(elementType, universe); + return new JumboEnumSet<E>(elementType, universe); } /** @@ -431,7 +431,7 @@ } Object writeReplace() { - return new SerializationProxy<>(this); + return new SerializationProxy<E>(this); } // readObject method for the serialization proxy pattern diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Formatter.java openjdk-boot/jdk/src/share/classes/java/util/Formatter.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Formatter.java 2017-04-26 15:02:12.540810134 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Formatter.java 2017-04-26 16:05:48.599251892 +0100 @@ -2531,7 +2531,7 @@ * Finds format specifiers in the format string. */ private FormatString[] parse(String s) { - ArrayList<FormatString> al = new ArrayList<>(); + ArrayList<FormatString> al = new ArrayList<FormatString>(); Matcher m = fsPattern.matcher(s); for (int i = 0, len = s.length(); i < len; ) { if (m.find(i)) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/HashMap.java openjdk-boot/jdk/src/share/classes/java/util/HashMap.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/HashMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/HashMap.java 2017-04-26 16:05:48.599251892 +0100 @@ -894,7 +894,7 @@ */ void createEntry(int hash, K key, V value, int bucketIndex) { Entry<K,V> e = table[bucketIndex]; - table[bucketIndex] = new Entry<>(hash, key, value, e); + table[bucketIndex] = new Entry<K,V>(hash, key, value, e); size++; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/HashSet.java openjdk-boot/jdk/src/share/classes/java/util/HashSet.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/HashSet.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/HashSet.java 2017-04-26 16:05:48.599251892 +0100 @@ -100,7 +100,7 @@ * default initial capacity (16) and load factor (0.75). */ public HashSet() { - map = new HashMap<>(); + map = new HashMap<E,Object>(); } /** @@ -113,7 +113,7 @@ * @throws NullPointerException if the specified collection is null */ public HashSet(Collection<? extends E> c) { - map = new HashMap<>(Math.max((int) (c.size()/.75f) + 1, 16)); + map = new HashMap<E,Object>(Math.max((int) (c.size()/.75f) + 1, 16)); addAll(c); } @@ -127,7 +127,7 @@ * than zero, or if the load factor is nonpositive */ public HashSet(int initialCapacity, float loadFactor) { - map = new HashMap<>(initialCapacity, loadFactor); + map = new HashMap<E,Object>(initialCapacity, loadFactor); } /** @@ -139,7 +139,7 @@ * than zero */ public HashSet(int initialCapacity) { - map = new HashMap<>(initialCapacity); + map = new HashMap<E,Object>(initialCapacity); } /** @@ -156,7 +156,7 @@ * than zero, or if the load factor is nonpositive */ HashSet(int initialCapacity, float loadFactor, boolean dummy) { - map = new LinkedHashMap<>(initialCapacity, loadFactor); + map = new LinkedHashMap<E,Object>(initialCapacity, loadFactor); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Hashtable.java openjdk-boot/jdk/src/share/classes/java/util/Hashtable.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Hashtable.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Hashtable.java 2017-04-26 16:05:48.599251892 +0100 @@ -538,7 +538,7 @@ // Creates the new entry. Entry<K,V> e = tab[index]; - tab[index] = new Entry<>(hash, key, value, e); + tab[index] = new Entry<K,V>(hash, key, value, e); count++; return null; } @@ -662,7 +662,7 @@ if (count == 0) { return Collections.emptyEnumeration(); } else { - return new Enumerator<>(type, false); + return new Enumerator<T>(type, false); } } @@ -670,7 +670,7 @@ if (count == 0) { return Collections.emptyIterator(); } else { - return new Enumerator<>(type, true); + return new Enumerator<T>(type, true); } } @@ -948,7 +948,7 @@ while (entry != null) { entryStack = - new Entry<>(0, entry.key, entry.value, entryStack); + new Entry<K,V>(0, entry.key, entry.value, entryStack); entry = entry.next; } } @@ -1028,7 +1028,7 @@ } // Creates the new entry. Entry<K,V> e = tab[index]; - tab[index] = new Entry<>(hash, key, value, e); + tab[index] = new Entry<K,V>(hash, key, value, e); count++; } @@ -1049,7 +1049,7 @@ } protected Object clone() { - return new Entry<>(hash, key, value, + return new Entry<K,V>(hash, key, value, (next==null ? null : (Entry<K,V>) next.clone())); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/IdentityHashMap.java openjdk-boot/jdk/src/share/classes/java/util/IdentityHashMap.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/IdentityHashMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/IdentityHashMap.java 2017-04-26 16:05:48.599251892 +0100 @@ -1145,7 +1145,7 @@ Object[] result = new Object[size]; Iterator<Map.Entry<K,V>> it = iterator(); for (int i = 0; i < size; i++) - result[i] = new AbstractMap.SimpleEntry<>(it.next()); + result[i] = new AbstractMap.SimpleEntry<K,V>(it.next()); return result; } @@ -1157,7 +1157,7 @@ .newInstance(a.getClass().getComponentType(), size); Iterator<Map.Entry<K,V>> it = iterator(); for (int i = 0; i < size; i++) - a[i] = (T) new AbstractMap.SimpleEntry<>(it.next()); + a[i] = (T) new AbstractMap.SimpleEntry<K,V>(it.next()); if (a.length > size) a[size] = null; return a; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/JumboEnumSet.java openjdk-boot/jdk/src/share/classes/java/util/JumboEnumSet.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/JumboEnumSet.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/JumboEnumSet.java 2017-04-26 16:05:48.599251892 +0100 @@ -91,7 +91,7 @@ * @return an iterator over the elements contained in this set */ public Iterator<E> iterator() { - return new EnumSetIterator<>(); + return new EnumSetIterator<E>(); } private class EnumSetIterator<E extends Enum<E>> implements Iterator<E> { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/LinkedHashMap.java openjdk-boot/jdk/src/share/classes/java/util/LinkedHashMap.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/LinkedHashMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/LinkedHashMap.java 2017-04-26 16:05:48.599251892 +0100 @@ -238,7 +238,7 @@ */ @Override void init() { - header = new Entry<>(-1, null, null, null); + header = new Entry<K,V>(-1, null, null, null); header.before = header.after = header; } @@ -439,7 +439,7 @@ */ void createEntry(int hash, K key, V value, int bucketIndex) { HashMap.Entry<K,V> old = table[bucketIndex]; - Entry<K,V> e = new Entry<>(hash, key, value, old); + Entry<K,V> e = new Entry<K,V>(hash, key, value, old); table[bucketIndex] = e; e.addBefore(header); size++; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/LinkedList.java openjdk-boot/jdk/src/share/classes/java/util/LinkedList.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/LinkedList.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/LinkedList.java 2017-04-26 16:05:48.599251892 +0100 @@ -122,7 +122,7 @@ */ private void linkFirst(E e) { final Node<E> f = first; - final Node<E> newNode = new Node<>(null, e, f); + final Node<E> newNode = new Node<E>(null, e, f); first = newNode; if (f == null) last = newNode; @@ -137,7 +137,7 @@ */ void linkLast(E e) { final Node<E> l = last; - final Node<E> newNode = new Node<>(l, e, null); + final Node<E> newNode = new Node<E>(l, e, null); last = newNode; if (l == null) first = newNode; @@ -153,7 +153,7 @@ void linkBefore(E e, Node<E> succ) { // assert succ != null; final Node<E> pred = succ.prev; - final Node<E> newNode = new Node<>(pred, e, succ); + final Node<E> newNode = new Node<E>(pred, e, succ); succ.prev = newNode; if (pred == null) first = newNode; @@ -419,7 +419,7 @@ for (Object o : a) { @SuppressWarnings("unchecked") E e = (E) o; - Node<E> newNode = new Node<>(pred, e, null); + Node<E> newNode = new Node<E>(pred, e, null); if (pred == null) first = newNode; else diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/ListResourceBundle.java openjdk-boot/jdk/src/share/classes/java/util/ListResourceBundle.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/ListResourceBundle.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/ListResourceBundle.java 2017-04-26 16:05:48.599251892 +0100 @@ -187,7 +187,7 @@ return; Object[][] contents = getContents(); - HashMap<String,Object> temp = new HashMap<>(contents.length); + HashMap<String,Object> temp = new HashMap<String,Object>(contents.length); for (int i = 0; i < contents.length; ++i) { // key must be non-null String, value must be non-null String key = (String) contents[i][0]; diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Locale.java openjdk-boot/jdk/src/share/classes/java/util/Locale.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Locale.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Locale.java 2017-04-26 16:05:48.603251827 +0100 @@ -1807,7 +1807,7 @@ return formatList(variantNames, listPattern, listCompositionPattern); } } - ArrayList<String> names = new ArrayList<>(4); + ArrayList<String> names = new ArrayList<String>(4); if (languageName.length() != 0) { names.add(languageName); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/logging/FileHandler.java openjdk-boot/jdk/src/share/classes/java/util/logging/FileHandler.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/logging/FileHandler.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/logging/FileHandler.java 2017-04-26 16:05:48.603251827 +0100 @@ -127,7 +127,7 @@ private FileOutputStream lockStream; private File files[]; private static final int MAX_LOCKS = 100; - private static java.util.HashMap<String, String> locks = new java.util.HashMap<>(); + private static java.util.HashMap<String, String> locks = new java.util.HashMap<String, String>(); // A metered stream is a subclass of OutputStream that // (a) forwards all its output to a target stream diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/logging/Level.java openjdk-boot/jdk/src/share/classes/java/util/logging/Level.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/logging/Level.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/logging/Level.java 2017-04-26 16:05:48.603251827 +0100 @@ -518,8 +518,8 @@ // were final, the following KnownLevel implementation can be removed. // Future API change should take this into consideration. static final class KnownLevel { - private static Map<String, List<KnownLevel>> nameToLevels = new HashMap<>(); - private static Map<Integer, List<KnownLevel>> intToLevels = new HashMap<>(); + private static Map<String, List<KnownLevel>> nameToLevels = new HashMap<String, List<KnownLevel>>(); + private static Map<Integer, List<KnownLevel>> intToLevels = new HashMap<Integer, List<KnownLevel>>(); final Level levelObject; // instance of Level class or Level subclass final Level mirroredLevel; // instance of Level class KnownLevel(Level l) { @@ -537,14 +537,14 @@ KnownLevel o = new KnownLevel(l); List<KnownLevel> list = nameToLevels.get(l.name); if (list == null) { - list = new ArrayList<>(); + list = new ArrayList<KnownLevel>(); nameToLevels.put(l.name, list); } list.add(o); list = intToLevels.get(l.value); if (list == null) { - list = new ArrayList<>(); + list = new ArrayList<KnownLevel>(); intToLevels.put(l.value, list); } list.add(o); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/logging/Logger.java openjdk-boot/jdk/src/share/classes/java/util/logging/Logger.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/logging/Logger.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/logging/Logger.java 2017-04-26 16:05:48.603251827 +0100 @@ -177,7 +177,7 @@ private volatile LogManager manager; private String name; private final CopyOnWriteArrayList<Handler> handlers = - new CopyOnWriteArrayList<>(); + new CopyOnWriteArrayList<Handler>(); private volatile String resourceBundleName; private volatile boolean useParentHandlers = true; private volatile Filter filter; @@ -1613,7 +1613,7 @@ // Set our new parent. parent = newParent; if (parent.kids == null) { - parent.kids = new ArrayList<>(2); + parent.kids = new ArrayList<LogManager.LoggerWeakRef>(2); } if (ref == null) { // we didn't have a previous parent diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/logging/Logging.java openjdk-boot/jdk/src/share/classes/java/util/logging/Logging.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/logging/Logging.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/logging/Logging.java 2017-04-26 16:05:48.603251827 +0100 @@ -56,7 +56,7 @@ public List<String> getLoggerNames() { Enumeration loggers = logManager.getLoggerNames(); - ArrayList<String> array = new ArrayList<>(); + ArrayList<String> array = new ArrayList<String>(); for (; loggers.hasMoreElements();) { array.add((String) loggers.nextElement()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/logging/LogManager.java openjdk-boot/jdk/src/share/classes/java/util/logging/LogManager.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/logging/LogManager.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/logging/LogManager.java 2017-04-26 16:05:48.603251827 +0100 @@ -389,7 +389,7 @@ // find the AppContext of the applet code // will be null if we are in the main app context. if (contextsMap == null) { - contextsMap = new WeakHashMap<>(); + contextsMap = new WeakHashMap<Object, LoggerContext>(); } context = contextsMap.get(ecx); if (context == null) { @@ -408,7 +408,7 @@ } private List<LoggerContext> contexts() { - List<LoggerContext> cxs = new ArrayList<>(); + List<LoggerContext> cxs = new ArrayList<LoggerContext>(); cxs.add(systemContext); cxs.add(getUserContext()); return cxs; @@ -501,7 +501,7 @@ // added in the user context. static class LoggerContext { // Table of named Loggers that maps names to Loggers. - private final Hashtable<String,LoggerWeakRef> namedLoggers = new Hashtable<>(); + private final Hashtable<String,LoggerWeakRef> namedLoggers = new Hashtable<String,LoggerWeakRef>(); // Tree of named Loggers private final LogNode root; private final boolean requiresDefaultLoggers; @@ -744,7 +744,7 @@ name = ""; } if (node.children == null) { - node.children = new HashMap<>(); + node.children = new HashMap<String,LogNode>(); } LogNode child = node.children.get(head); if (child == null) { @@ -836,7 +836,7 @@ // loggerRefQueue holds LoggerWeakRef objects for Logger objects // that have been GC'ed. private final ReferenceQueue<Logger> loggerRefQueue - = new ReferenceQueue<>(); + = new ReferenceQueue<Logger>(); // Package-level inner class. // Helper class for managing WeakReferences to Logger objects. @@ -1211,7 +1211,7 @@ } hands = hands.trim(); int ix = 0; - Vector<String> result = new Vector<>(); + Vector<String> result = new Vector<String>(); while (ix < hands.length()) { int end = ix; while (end < hands.length()) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/logging/LogRecord.java openjdk-boot/jdk/src/share/classes/java/util/logging/LogRecord.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/logging/LogRecord.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/logging/LogRecord.java 2017-04-26 16:05:48.603251827 +0100 @@ -85,7 +85,8 @@ private static final AtomicInteger nextThreadId = new AtomicInteger(MIN_SEQUENTIAL_THREAD_ID); - private static final ThreadLocal<Integer> threadIds = new ThreadLocal<>(); + private static final ThreadLocal<Integer> threadIds + = new ThreadLocal<Integer>(); /** * @serial Logging message level @@ -509,7 +510,7 @@ parameters[i] = in.readObject(); } } else { - List<Object> params = new ArrayList<>(Math.min(len, 1024)); + List<Object> params = new ArrayList<Object>(Math.min(len, 1024)); for (int i = 0; i < len; i++) { params.add(in.readObject()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/prefs/AbstractPreferences.java openjdk-boot/jdk/src/share/classes/java/util/prefs/AbstractPreferences.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/prefs/AbstractPreferences.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/prefs/AbstractPreferences.java 2017-04-26 16:05:48.603251827 +0100 @@ -155,7 +155,8 @@ * All known unremoved children of this node. (This "cache" is consulted * prior to calling childSpi() or getChild(). */ - private Map<String, AbstractPreferences> kidCache = new HashMap<>(); + private Map<String, AbstractPreferences> kidCache + = new HashMap<String, AbstractPreferences>(); /** * This field is used to keep track of whether or not this node has @@ -712,7 +713,7 @@ if (removed) throw new IllegalStateException("Node has been removed."); - Set<String> s = new TreeSet<>(kidCache.keySet()); + Set<String> s = new TreeSet<String>(kidCache.keySet()); for (String kid : childrenNamesSpi()) s.add(kid); return s.toArray(EMPTY_STRING_ARRAY); @@ -1441,7 +1442,8 @@ * event delivery from preference activity, greatly simplifying * locking and reducing opportunity for deadlock. */ - private static final List<EventObject> eventQueue = new LinkedList<>(); + private static final List<EventObject> eventQueue + = new LinkedList<EventObject>(); /** * These two classes are used to distinguish NodeChangeEvents on diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/PriorityQueue.java openjdk-boot/jdk/src/share/classes/java/util/PriorityQueue.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/PriorityQueue.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/PriorityQueue.java 2017-04-26 16:05:48.603251827 +0100 @@ -538,7 +538,7 @@ cursor--; else { if (forgetMeNot == null) - forgetMeNot = new ArrayDeque<>(); + forgetMeNot = new ArrayDeque<E>(); forgetMeNot.add(moved); } } else if (lastRetElt != null) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/Properties.java openjdk-boot/jdk/src/share/classes/java/util/Properties.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/Properties.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/Properties.java 2017-04-26 16:05:48.603251827 +0100 @@ -1010,7 +1010,7 @@ * @since 1.6 */ public Set<String> stringPropertyNames() { - Hashtable<String, String> h = new Hashtable<>(); + Hashtable<String, String> h = new Hashtable<String, String>(); enumerateStringProperties(h); return h.keySet(); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/regex/Pattern.java openjdk-boot/jdk/src/share/classes/java/util/regex/Pattern.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/regex/Pattern.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/regex/Pattern.java 2017-04-26 16:05:48.603251827 +0100 @@ -321,7 +321,7 @@ * <td headers="matches">Nothing, but quotes all characters until <tt>\E</tt></td></tr> * <tr><td valign="top" headers="construct quot"><tt>\E</tt></td> * <td headers="matches">Nothing, but ends quoting started by <tt>\Q</tt></td></tr> - * <!-- Metachars: !$()*+.<>?[\]^{|} --> + * <!-- Metachars: !$()*+.?[\]^{|} --> * * <tr><th> </th></tr> * <tr align="left"><th colspan="2" id="special">Special constructs (named-capturing and non-capturing)</th></tr> @@ -1193,7 +1193,7 @@ public String[] split(CharSequence input, int limit) { int index = 0; boolean matchLimited = limit > 0; - ArrayList<String> matchList = new ArrayList<>(); + ArrayList<String> matchList = new ArrayList<String>(); Matcher m = matcher(input); // Add segments before each match found @@ -1695,7 +1695,7 @@ Map<String, Integer> namedGroups() { if (namedGroups == null) - namedGroups = new HashMap<>(2); + namedGroups = new HashMap<String, Integer>(2); return namedGroups; } @@ -5495,7 +5495,7 @@ } private static final HashMap<String, CharPropertyFactory> map - = new HashMap<>(); + = new HashMap<String, CharPropertyFactory>(); static { // Unicode character property aliases, defined in diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/regex/UnicodeProp.java openjdk-boot/jdk/src/share/classes/java/util/regex/UnicodeProp.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/regex/UnicodeProp.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/regex/UnicodeProp.java 2017-04-26 16:05:48.603251827 +0100 @@ -193,8 +193,8 @@ } }; - private final static HashMap<String, String> posix = new HashMap<>(); - private final static HashMap<String, String> aliases = new HashMap<>(); + private final static HashMap<String, String> posix = new HashMap<String,String>(); + private final static HashMap<String, String> aliases = new HashMap<String,String>(); static { posix.put("ALPHA", "ALPHABETIC"); posix.put("LOWER", "LOWERCASE"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/RegularEnumSet.java openjdk-boot/jdk/src/share/classes/java/util/RegularEnumSet.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/RegularEnumSet.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/RegularEnumSet.java 2017-04-26 16:05:48.603251827 +0100 @@ -72,7 +72,7 @@ * @return an iterator over the elements contained in this set */ public Iterator<E> iterator() { - return new EnumSetIterator<>(); + return new EnumSetIterator<E>(); } private class EnumSetIterator<E extends Enum<E>> implements Iterator<E> { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/ResourceBundle.java openjdk-boot/jdk/src/share/classes/java/util/ResourceBundle.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/ResourceBundle.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/ResourceBundle.java 2017-04-26 16:05:48.603251827 +0100 @@ -291,7 +291,7 @@ * name for compatibility with some workarounds for bug 4212439. */ private static final ConcurrentMap<CacheKey, BundleReference> cacheList - = new ConcurrentHashMap<>(INITIAL_CACHE_SIZE); + = new ConcurrentHashMap<CacheKey,BundleReference>(INITIAL_CACHE_SIZE); /** * Queue for reference objects referring to class loaders or bundles. @@ -1755,7 +1755,7 @@ * @since 1.6 */ public Set<String> keySet() { - Set<String> keys = new HashSet<>(); + Set<String> keys = new HashSet<String>(); for (ResourceBundle rb = this; rb != null; rb = rb.parent) { keys.addAll(rb.handleKeySet()); } @@ -1783,7 +1783,7 @@ if (keySet == null) { synchronized (this) { if (keySet == null) { - Set<String> keys = new HashSet<>(); + Set<String> keys = new HashSet<String>(); Enumeration<String> enumKeys = getKeys(); while (enumKeys.hasMoreElements()) { String key = enumKeys.nextElement(); @@ -2301,7 +2301,7 @@ if (baseName == null) { throw new NullPointerException(); } - return new ArrayList<>(CANDIDATES_CACHE.get(locale.getBaseLocale())); + return new ArrayList<Locale>(CANDIDATES_CACHE.get(locale.getBaseLocale())); } private static final CandidateListCache CANDIDATES_CACHE = new CandidateListCache(); @@ -2327,7 +2327,7 @@ if (language.equals("nb") || isNorwegianBokmal) { List<Locale> tmpList = getDefaultList("nb", script, region, variant); // Insert a locale replacing "nb" with "no" for every list entry - List<Locale> bokmalList = new LinkedList<>(); + List<Locale> bokmalList = new LinkedList<Locale>(); for (Locale l : tmpList) { bokmalList.add(l); if (l.getLanguage().length() == 0) { @@ -2374,7 +2374,7 @@ List<String> variants = null; if (variant.length() > 0) { - variants = new LinkedList<>(); + variants = new LinkedList<String>(); int idx = variant.length(); while (idx != -1) { variants.add(variant.substring(0, idx)); @@ -2382,7 +2382,7 @@ } } - List<Locale> list = new LinkedList<>(); + List<Locale> list = new LinkedList<Locale>(); if (variants != null) { for (String v : variants) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/ServiceLoader.java openjdk-boot/jdk/src/share/classes/java/util/ServiceLoader.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/ServiceLoader.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/ServiceLoader.java 2017-04-26 16:05:48.603251827 +0100 @@ -191,7 +191,7 @@ private ClassLoader loader; // Cached providers, in instantiation order - private LinkedHashMap<String,S> providers = new LinkedHashMap<>(); + private LinkedHashMap<String,S> providers = new LinkedHashMap<String,S>(); // The current lazy-lookup iterator private LazyIterator lookupIterator; @@ -291,7 +291,7 @@ { InputStream in = null; BufferedReader r = null; - ArrayList<String> names = new ArrayList<>(); + ArrayList<String> names = new ArrayList<String>(); try { in = u.openStream(); r = new BufferedReader(new InputStreamReader(in, "utf-8")); @@ -470,7 +470,7 @@ public static <S> ServiceLoader<S> load(Class<S> service, ClassLoader loader) { - return new ServiceLoader<>(service, loader); + return new ServiceLoader<S>(service, loader); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/TimSort.java openjdk-boot/jdk/src/share/classes/java/util/TimSort.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/TimSort.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/TimSort.java 2017-04-26 16:05:48.603251827 +0100 @@ -196,7 +196,7 @@ * extending short natural runs to minRun elements, and merging runs * to maintain stack invariant. */ - TimSort<T> ts = new TimSort<>(a, c); + TimSort<T> ts = new TimSort<T>(a, c); int minRun = minRunLength(nRemaining); do { // Identify next run diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/TreeMap.java openjdk-boot/jdk/src/share/classes/java/util/TreeMap.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/TreeMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/TreeMap.java 2017-04-26 16:05:48.607251762 +0100 @@ -530,7 +530,7 @@ if (t == null) { compare(key, key); // type (and possibly null) check - root = new Entry<>(key, value, null); + root = new Entry<K,V>(key, value, null); size = 1; modCount++; return null; @@ -566,7 +566,7 @@ return t.setValue(value); } while (t != null); } - Entry<K,V> e = new Entry<>(key, value, parent); + Entry<K,V> e = new Entry<K,V>(key, value, parent); if (cmp < 0) parent.left = e; else @@ -1066,14 +1066,14 @@ } public NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) { - return new KeySet<>(m.subMap(fromElement, fromInclusive, + return new KeySet<E>(m.subMap(fromElement, fromInclusive, toElement, toInclusive)); } public NavigableSet<E> headSet(E toElement, boolean inclusive) { - return new KeySet<>(m.headMap(toElement, inclusive)); + return new KeySet<E>(m.headMap(toElement, inclusive)); } public NavigableSet<E> tailSet(E fromElement, boolean inclusive) { - return new KeySet<>(m.tailMap(fromElement, inclusive)); + return new KeySet<E>(m.tailMap(fromElement, inclusive)); } public SortedSet<E> subSet(E fromElement, E toElement) { return subSet(fromElement, true, toElement, false); @@ -1202,7 +1202,7 @@ */ static <K,V> Map.Entry<K,V> exportEntry(TreeMap.Entry<K,V> e) { return (e == null) ? null : - new AbstractMap.SimpleImmutableEntry<>(e); + new AbstractMap.SimpleImmutableEntry<K,V>(e); } /** @@ -2403,7 +2403,7 @@ value = (defaultVal != null ? defaultVal : (V) str.readObject()); } - Entry<K,V> middle = new Entry<>(key, value, null); + Entry<K,V> middle = new Entry<K,V>(key, value, null); // color nodes in non-full bottommost level red if (level == redLevel) diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/TreeSet.java openjdk-boot/jdk/src/share/classes/java/util/TreeSet.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/TreeSet.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/TreeSet.java 2017-04-26 16:05:48.607251762 +0100 @@ -138,7 +138,7 @@ * ordering} of the elements will be used. */ public TreeSet(Comparator<? super E> comparator) { - this(new TreeMap<>(comparator)); + this(new TreeMap<E,Object>(comparator)); } /** @@ -195,7 +195,7 @@ * @since 1.6 */ public NavigableSet<E> descendingSet() { - return new TreeSet<>(m.descendingMap()); + return new TreeSet<E>(m.descendingMap()); } /** @@ -322,7 +322,7 @@ */ public NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) { - return new TreeSet<>(m.subMap(fromElement, fromInclusive, + return new TreeSet<E>(m.subMap(fromElement, fromInclusive, toElement, toInclusive)); } @@ -335,7 +335,7 @@ * @since 1.6 */ public NavigableSet<E> headSet(E toElement, boolean inclusive) { - return new TreeSet<>(m.headMap(toElement, inclusive)); + return new TreeSet<E>(m.headMap(toElement, inclusive)); } /** @@ -347,7 +347,7 @@ * @since 1.6 */ public NavigableSet<E> tailSet(E fromElement, boolean inclusive) { - return new TreeSet<>(m.tailMap(fromElement, inclusive)); + return new TreeSet<E>(m.tailMap(fromElement, inclusive)); } /** @@ -477,7 +477,7 @@ throw new InternalError(); } - clone.m = new TreeMap<>(m); + clone.m = new TreeMap<E,Object>(m); return clone; } @@ -524,9 +524,9 @@ // Create backing TreeMap TreeMap<E,Object> tm; if (c==null) - tm = new TreeMap<>(); + tm = new TreeMap<E,Object>(); else - tm = new TreeMap<>(c); + tm = new TreeMap<E,Object>(c); m = tm; // Read in size diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/WeakHashMap.java openjdk-boot/jdk/src/share/classes/java/util/WeakHashMap.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/WeakHashMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/WeakHashMap.java 2017-04-26 16:05:48.607251762 +0100 @@ -172,7 +172,7 @@ /** * Reference queue for cleared WeakEntries */ - private final ReferenceQueue<Object> queue = new ReferenceQueue<>(); + private final ReferenceQueue<Object> queue = new ReferenceQueue<Object>(); /** * The number of times this WeakHashMap has been structurally modified. @@ -529,7 +529,7 @@ modCount++; Entry<K,V> e = tab[i]; - tab[i] = new Entry<>(k, value, queue, h, e); + tab[i] = new Entry<K,V>(k, value, queue, h, e); if (++size >= threshold) resize(tab.length * 2); return null; @@ -1052,9 +1052,10 @@ } private List<Map.Entry<K,V>> deepCopy() { - List<Map.Entry<K,V>> list = new ArrayList<>(size()); + List<Map.Entry<K,V>> list = + new ArrayList<Map.Entry<K,V>>(size()); for (Map.Entry<K,V> e : this) - list.add(new AbstractMap.SimpleEntry<>(e)); + list.add(new AbstractMap.SimpleEntry<K,V>(e)); return list; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/zip/ZipFile.java openjdk-boot/jdk/src/share/classes/java/util/zip/ZipFile.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/zip/ZipFile.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/zip/ZipFile.java 2017-04-26 16:05:48.607251762 +0100 @@ -321,7 +321,7 @@ // the outstanding inputstreams that need to be closed, // mapped to the inflater objects they use. - private final Map<InputStream, Inflater> streams = new WeakHashMap<>(); + private final Map<InputStream, Inflater> streams = new WeakHashMap<InputStream,Inflater>(); /** * Returns an input stream for reading the contents of the specified @@ -463,7 +463,7 @@ } // List of available Inflater objects for decompression - private Deque<Inflater> inflaterCache = new ArrayDeque<>(); + private Deque<Inflater> inflaterCache = new ArrayDeque<Inflater>(); /** * Returns the path name of the ZIP file. @@ -579,7 +579,7 @@ // Close streams, release their inflaters synchronized (streams) { if (false == streams.isEmpty()) { - Map<InputStream, Inflater> copy = new HashMap<>(streams); + Map<InputStream, Inflater> copy = new HashMap<InputStream,Inflater>(streams); streams.clear(); for (Map.Entry<InputStream, Inflater> e : copy.entrySet()) { e.getKey().close(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/util/zip/ZipOutputStream.java openjdk-boot/jdk/src/share/classes/java/util/zip/ZipOutputStream.java --- openjdk-boot.orig/jdk/src/share/classes/java/util/zip/ZipOutputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/java/util/zip/ZipOutputStream.java 2017-04-26 16:05:48.607251762 +0100 @@ -53,8 +53,8 @@ } private XEntry current; - private Vector<XEntry> xentries = new Vector<>(); - private HashSet<String> names = new HashSet<>(); + private Vector<XEntry> xentries = new Vector<XEntry>(); + private HashSet<String> names = new HashSet<String>(); private CRC32 crc = new CRC32(); private long written = 0; private long locoff = 0; diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/crypto/Cipher.java openjdk-boot/jdk/src/share/classes/javax/crypto/Cipher.java --- openjdk-boot.orig/jdk/src/share/classes/javax/crypto/Cipher.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/crypto/Cipher.java 2017-04-26 16:05:48.607251762 +0100 @@ -417,7 +417,7 @@ return Collections.singletonList(tr); } else { // if ((mode != null) && (pad != null)) { // DES/CBC/PKCS5Padding - List<Transform> list = new ArrayList<>(4); + List<Transform> list = new ArrayList<Transform>(4); list.add(new Transform(alg, "/" + mode + "/" + pad, null, null)); list.add(new Transform(alg, "/" + mode, null, pad)); list.add(new Transform(alg, "//" + pad, mode, null)); @@ -474,7 +474,7 @@ throws NoSuchAlgorithmException, NoSuchPaddingException { List<Transform> transforms = getTransforms(transformation); - List<ServiceId> cipherServices = new ArrayList<>(transforms.size()); + List<ServiceId> cipherServices = new ArrayList<ServiceId>(transforms.size()); for (Transform transform : transforms) { cipherServices.add(new ServiceId("Cipher", transform.transform)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/crypto/CryptoAllPermission.java openjdk-boot/jdk/src/share/classes/javax/crypto/CryptoAllPermission.java --- openjdk-boot.orig/jdk/src/share/classes/javax/crypto/CryptoAllPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/crypto/CryptoAllPermission.java 2017-04-26 16:05:48.607251762 +0100 @@ -172,7 +172,7 @@ * @return an enumeration of all the CryptoAllPermission objects. */ public Enumeration<Permission> elements() { - Vector<Permission> v = new Vector<>(1); + Vector<Permission> v = new Vector<Permission>(1); if (all_allowed) v.add(CryptoAllPermission.INSTANCE); return v.elements(); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/crypto/CryptoPermissions.java openjdk-boot/jdk/src/share/classes/javax/crypto/CryptoPermissions.java --- openjdk-boot.orig/jdk/src/share/classes/javax/crypto/CryptoPermissions.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/crypto/CryptoPermissions.java 2017-04-26 16:05:48.607251762 +0100 @@ -84,7 +84,7 @@ * no CryptoPermissionCollections. */ CryptoPermissions() { - perms = new ConcurrentHashMap<>(7); + perms = new ConcurrentHashMap<String,PermissionCollection>(7); } /** @@ -294,7 +294,7 @@ */ private CryptoPermission[] getMinimum(PermissionCollection thisPc, PermissionCollection thatPc) { - Vector<CryptoPermission> permVector = new Vector<>(2); + Vector<CryptoPermission> permVector = new Vector<CryptoPermission>(2); Enumeration<Permission> thisPcPermissions = thisPc.elements(); @@ -350,7 +350,7 @@ */ private CryptoPermission[] getMinimum(int maxKeySize, PermissionCollection pc) { - Vector<CryptoPermission> permVector = new Vector<>(1); + Vector<CryptoPermission> permVector = new Vector<CryptoPermission>(1); Enumeration<Permission> enum_ = pc.elements(); @@ -435,15 +435,15 @@ (Hashtable<String,PermissionCollection>) (fields.get("perms", null)); if (permTable != null) { - perms = new ConcurrentHashMap<>(permTable); + perms = new ConcurrentHashMap<String,PermissionCollection>(permTable); } else { - perms = new ConcurrentHashMap<>(); + perms = new ConcurrentHashMap<String,PermissionCollection>(); } } private void writeObject(ObjectOutputStream s) throws IOException { Hashtable<String,PermissionCollection> permTable = - new Hashtable<>(perms); + new Hashtable<String,PermissionCollection>(perms); ObjectOutputStream.PutField fields = s.putFields(); fields.put("perms", permTable); s.writeFields(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/crypto/CryptoPolicyParser.java openjdk-boot/jdk/src/share/classes/javax/crypto/CryptoPolicyParser.java --- openjdk-boot.orig/jdk/src/share/classes/javax/crypto/CryptoPolicyParser.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/crypto/CryptoPolicyParser.java 2017-04-26 16:05:48.607251762 +0100 @@ -252,7 +252,7 @@ // AlgorithmParameterSpec class name. String algParamSpecClassName = match("quoted string"); - Vector<Integer> paramsV = new Vector<>(1); + Vector<Integer> paramsV = new Vector<Integer>(1); while (peek(",")) { match(","); if (peek("number")) { @@ -456,7 +456,7 @@ } CryptoPermission[] getPermissions() { - Vector<CryptoPermission> result = new Vector<>(); + Vector<CryptoPermission> result = new Vector<CryptoPermission>(); Enumeration<GrantEntry> grantEnum = grantEntries.elements(); while (grantEnum.hasMoreElements()) { @@ -498,7 +498,7 @@ if (processedPermissions == null) { processedPermissions = new Hashtable<String, Vector<String>>(); - Vector<String> exemptionMechanisms = new Vector<>(1); + Vector<String> exemptionMechanisms = new Vector<String>(1); exemptionMechanisms.addElement(thisExemptionMechanism); processedPermissions.put(alg, exemptionMechanisms); return true; diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/crypto/JceSecurity.java openjdk-boot/jdk/src/share/classes/javax/crypto/JceSecurity.java --- openjdk-boot.orig/jdk/src/share/classes/javax/crypto/JceSecurity.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/crypto/JceSecurity.java 2017-04-26 16:05:48.607251762 +0100 @@ -58,11 +58,11 @@ // value == PROVIDER_VERIFIED is successfully verified // value is failure cause Exception in error case private final static Map<Provider, Object> verificationResults = - new IdentityHashMap<>(); + new IdentityHashMap<Provider, Object>(); // Map<Provider,?> of the providers currently being verified private final static Map<Provider, Object> verifyingProviders = - new IdentityHashMap<>(); + new IdentityHashMap<Provider, Object>(); // Set the default value. May be changed in the static initializer. private static boolean isRestricted = true; @@ -213,7 +213,7 @@ // reference to a Map we use as a cache for codebases private static final Map<Class<?>, URL> codeBaseCacheRef = - new WeakHashMap<>(); + new WeakHashMap<Class<?>, URL>(); /* * Returns the CodeBase for the given class. diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/crypto/JceSecurityManager.java openjdk-boot/jdk/src/share/classes/javax/crypto/JceSecurityManager.java --- openjdk-boot.orig/jdk/src/share/classes/javax/crypto/JceSecurityManager.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/crypto/JceSecurityManager.java 2017-04-26 16:05:48.607251762 +0100 @@ -52,9 +52,9 @@ private static final CryptoPermissions exemptPolicy; private static final CryptoAllPermission allPerm; private static final Vector<Class<?>> TrustedCallersCache = - new Vector<>(2); + new Vector<Class<?>>(2); private static final ConcurrentMap<URL,CryptoPermissions> exemptCache = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<URL,CryptoPermissions>(); private static final CryptoPermissions CACHE_NULL_MARK = new CryptoPermissions(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java openjdk-boot/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java --- openjdk-boot.orig/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java 2017-04-26 16:05:48.607251762 +0100 @@ -103,7 +103,7 @@ = (String[]) this.env.get(EnvHelp.CREDENTIAL_TYPES); List<String> types = null; if (credentialsTypes != null) { - types = new ArrayList<>(); + types = new ArrayList<String>(); for (String type : credentialsTypes) { if (type == null) { throw new IllegalArgumentException("A credential type is null."); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/directory/BasicAttribute.java openjdk-boot/jdk/src/share/classes/javax/naming/directory/BasicAttribute.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/directory/BasicAttribute.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/directory/BasicAttribute.java 2017-04-26 16:05:48.607251762 +0100 @@ -255,7 +255,7 @@ */ public BasicAttribute(String id, boolean ordered) { attrID = id; - values = new Vector<>(); + values = new Vector<Object>(); this.ordered = ordered; } @@ -515,7 +515,7 @@ throws java.io.IOException, ClassNotFoundException { s.defaultReadObject(); // read in the attrID int n = s.readInt(); // number of values - values = new Vector<>(n); + values = new Vector<Object>(n); while (--n >= 0) { values.addElement(s.readObject()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/directory/BasicAttributes.java openjdk-boot/jdk/src/share/classes/javax/naming/directory/BasicAttributes.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/directory/BasicAttributes.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/directory/BasicAttributes.java 2017-04-26 16:05:48.607251762 +0100 @@ -79,7 +79,7 @@ // If ignoreCase is true, key is aways lowercase. // If ignoreCase is false, key is stored as supplied by put(). // %%% Not declared "private" due to bug 4064984. - transient Hashtable<String,Attribute> attrs = new Hashtable<>(11); + transient Hashtable<String,Attribute> attrs = new Hashtable<String, Attribute>(11); /** * Constructs a new instance of Attributes. diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/InitialLdapContext.java openjdk-boot/jdk/src/share/classes/javax/naming/ldap/InitialLdapContext.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/InitialLdapContext.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/ldap/InitialLdapContext.java 2017-04-26 16:05:48.607251762 +0100 @@ -137,7 +137,7 @@ // Clone environment since caller owns it. Hashtable<Object,Object> env = (environment == null) - ? new Hashtable<>(11) + ? new Hashtable<Object,Object>(11) : (Hashtable<Object,Object>)environment.clone(); // Put connect controls into environment. Copy them first since diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/LdapName.java openjdk-boot/jdk/src/share/classes/javax/naming/ldap/LdapName.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/LdapName.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/ldap/LdapName.java 2017-04-26 16:05:48.607251762 +0100 @@ -142,7 +142,7 @@ // "Invalid entries, list entries must be of type Rdn"); // } - this.rdns = new ArrayList<>(rdns.size()); + this.rdns = new ArrayList<Rdn>(rdns.size()); for (int i = 0; i < rdns.size(); i++) { Object obj = rdns.get(i); if (!(obj instanceof Rdn)) { @@ -164,7 +164,7 @@ // this.rdns = rdns.subList(beg, end); List<Rdn> sList = rdns.subList(beg, end); - this.rdns = new ArrayList<>(sList); + this.rdns = new ArrayList<Rdn>(sList); } /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/Rdn.java openjdk-boot/jdk/src/share/classes/javax/naming/ldap/Rdn.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/Rdn.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/ldap/Rdn.java 2017-04-26 16:05:48.607251762 +0100 @@ -130,7 +130,7 @@ if (attrSet.size() == 0) { throw new InvalidNameException("Attributes cannot be empty"); } - entries = new ArrayList<>(attrSet.size()); + entries = new ArrayList<RdnEntry>(attrSet.size()); NamingEnumeration<? extends Attribute> attrs = attrSet.getAll(); try { for (int nEntries = 0; attrs.hasMore(); nEntries++) { @@ -161,7 +161,7 @@ * parsing of the rdnString. */ public Rdn(String rdnString) throws InvalidNameException { - entries = new ArrayList<>(DEFAULT_SIZE); + entries = new ArrayList<RdnEntry>(DEFAULT_SIZE); (new Rfc2253Parser(rdnString)).parseRdn(this); } @@ -172,7 +172,7 @@ * @param rdn The non-null Rdn to be copied. */ public Rdn(Rdn rdn) { - entries = new ArrayList<>(rdn.entries.size()); + entries = new ArrayList<RdnEntry>(rdn.entries.size()); entries.addAll(rdn.entries); } @@ -199,7 +199,7 @@ "type or value cannot be empty, type:" + type + " value:" + value); } - entries = new ArrayList<>(DEFAULT_SIZE); + entries = new ArrayList<RdnEntry>(DEFAULT_SIZE); put(type, value); } @@ -210,7 +210,7 @@ // An empty constructor used by the parser Rdn() { - entries = new ArrayList<>(DEFAULT_SIZE); + entries = new ArrayList<RdnEntry>(DEFAULT_SIZE); } /* @@ -747,7 +747,7 @@ private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException { s.defaultReadObject(); - entries = new ArrayList<>(DEFAULT_SIZE); + entries = new ArrayList<RdnEntry>(DEFAULT_SIZE); String unparsed = (String) s.readObject(); try { (new Rfc2253Parser(unparsed)).parseRdn(this); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/Rfc2253Parser.java openjdk-boot/jdk/src/share/classes/javax/naming/ldap/Rfc2253Parser.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/ldap/Rfc2253Parser.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/ldap/Rfc2253Parser.java 2017-04-26 16:05:48.607251762 +0100 @@ -61,7 +61,7 @@ // new ArrayList<Rdn>(len / 3 + 10); // leave room for growth ArrayList<Rdn> rdns = - new ArrayList<>(len / 3 + 10); // leave room for growth + new ArrayList<Rdn>(len / 3 + 10); // leave room for growth if (len == 0) { return rdns; diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/NameImpl.java openjdk-boot/jdk/src/share/classes/javax/naming/NameImpl.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/NameImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/NameImpl.java 2017-04-26 16:05:48.607251762 +0100 @@ -272,7 +272,7 @@ if (syntax != null) { recordNamingConvention(syntax); } - components = new Vector<>(); + components = new Vector<String>(); } NameImpl(Properties syntax, String n) throws InvalidNameException { diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/Reference.java openjdk-boot/jdk/src/share/classes/javax/naming/Reference.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/Reference.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/Reference.java 2017-04-26 16:05:48.607251762 +0100 @@ -120,7 +120,7 @@ */ public Reference(String className) { this.className = className; - addrs = new Vector<>(); + addrs = new Vector<RefAddr>(); } /** @@ -134,7 +134,7 @@ */ public Reference(String className, RefAddr addr) { this.className = className; - addrs = new Vector<>(); + addrs = new Vector<RefAddr>(); addrs.addElement(addr); } @@ -382,7 +382,7 @@ public Object clone() { Reference r = new Reference(className, classFactory, classFactoryLocation); Enumeration<RefAddr> a = getAll(); - r.addrs = new Vector<>(); + r.addrs = new Vector<RefAddr>(); while (a.hasMoreElements()) r.addrs.addElement(a.nextElement()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/spi/DirectoryManager.java openjdk-boot/jdk/src/share/classes/javax/naming/spi/DirectoryManager.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/spi/DirectoryManager.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/spi/DirectoryManager.java 2017-04-26 16:05:48.607251762 +0100 @@ -90,7 +90,7 @@ Hashtable<Object,Object> env = (Hashtable<Object,Object>)cpe.getEnvironment(); if (env == null) { - env = new Hashtable<>(7); + env = new Hashtable<Object, Object>(7); } else { // Make a (shallow) copy of the environment. env = (Hashtable<Object,Object>) env.clone(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/naming/spi/NamingManager.java openjdk-boot/jdk/src/share/classes/javax/naming/spi/NamingManager.java --- openjdk-boot.orig/jdk/src/share/classes/javax/naming/spi/NamingManager.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/naming/spi/NamingManager.java 2017-04-26 16:05:48.607251762 +0100 @@ -777,7 +777,7 @@ Hashtable<Object,Object> env = (Hashtable<Object,Object>)cpe.getEnvironment(); if (env == null) { - env = new Hashtable<>(7); + env = new Hashtable<Object, Object>(7); } else { // Make a (shallow) copy of the environment. env = (Hashtable<Object,Object>)env.clone(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/script/ScriptEngineManager.java openjdk-boot/jdk/src/share/classes/javax/script/ScriptEngineManager.java --- openjdk-boot.orig/jdk/src/share/classes/javax/script/ScriptEngineManager.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/script/ScriptEngineManager.java 2017-04-26 16:05:48.607251762 +0100 @@ -116,7 +116,7 @@ return null; } - final List<ScriptEngineFactory> facList = new ArrayList<>(); + final List<ScriptEngineFactory> facList = new ArrayList<ScriptEngineFactory>(); try { while (itr.hasNext()) { try { diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/kerberos/DelegationPermission.java openjdk-boot/jdk/src/share/classes/javax/security/auth/kerberos/DelegationPermission.java --- openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/kerberos/DelegationPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/security/auth/kerberos/DelegationPermission.java 2017-04-26 16:05:48.611251698 +0100 @@ -361,7 +361,7 @@ // Don't call out.defaultWriteObject() // Write out Vector - Vector<Permission> permissions = new Vector<>(perms.size()); + Vector<Permission> permissions = new Vector<Permission>(perms.size()); synchronized (this) { permissions.addAll(perms); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/kerberos/ServicePermission.java openjdk-boot/jdk/src/share/classes/javax/security/auth/kerberos/ServicePermission.java --- openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/kerberos/ServicePermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/security/auth/kerberos/ServicePermission.java 2017-04-26 16:05:48.611251698 +0100 @@ -590,7 +590,7 @@ // Don't call out.defaultWriteObject() // Write out Vector - Vector<Permission> permissions = new Vector<>(perms.size()); + Vector<Permission> permissions = new Vector<Permission>(perms.size()); synchronized (this) { permissions.addAll(perms); diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/PrivateCredentialPermission.java openjdk-boot/jdk/src/share/classes/javax/security/auth/PrivateCredentialPermission.java --- openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/PrivateCredentialPermission.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/security/auth/PrivateCredentialPermission.java 2017-04-26 16:05:48.611251698 +0100 @@ -329,7 +329,7 @@ throw new IllegalArgumentException("invalid empty name"); } - ArrayList<CredOwner> pList = new ArrayList<>(); + ArrayList<CredOwner> pList = new ArrayList<CredOwner>(); StringTokenizer tokenizer = new StringTokenizer(name, " ", true); String principalClass = null; String principalName = null; diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/SubjectDomainCombiner.java openjdk-boot/jdk/src/share/classes/javax/security/auth/SubjectDomainCombiner.java --- openjdk-boot.orig/jdk/src/share/classes/javax/security/auth/SubjectDomainCombiner.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/security/auth/SubjectDomainCombiner.java 2017-04-26 16:05:48.611251698 +0100 @@ -50,7 +50,7 @@ private Subject subject; private WeakKeyValueMap<ProtectionDomain, ProtectionDomain> cachedPDs = - new WeakKeyValueMap<>(); + new WeakKeyValueMap<ProtectionDomain, ProtectionDomain>(); private Set<Principal> principalSet; private Principal[] principals; diff -Nru openjdk-boot.orig/jdk/src/share/classes/javax/swing/JDesktopPane.java openjdk-boot/jdk/src/share/classes/javax/swing/JDesktopPane.java --- openjdk-boot.orig/jdk/src/share/classes/javax/swing/JDesktopPane.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/javax/swing/JDesktopPane.java 2017-04-26 16:05:48.611251698 +0100 @@ -267,7 +267,7 @@ private static Collection<JInternalFrame> getAllFrames(Container parent) { int i, count; - Collection<JInternalFrame> results = new LinkedHashSet<>(); + Collection<JInternalFrame> results = new LinkedHashSet<JInternalFrame>(); count = parent.getComponentCount(); for (i = 0; i < count; i++) { Component next = parent.getComponent(i); diff -Nru openjdk-boot.orig/jdk/src/share/classes/jdk/net/Sockets.java openjdk-boot/jdk/src/share/classes/jdk/net/Sockets.java --- openjdk-boot.orig/jdk/src/share/classes/jdk/net/Sockets.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/jdk/net/Sockets.java 2017-04-26 16:05:48.611251698 +0100 @@ -58,7 +58,7 @@ public class Sockets { private final static HashMap<Class<?>,Set<SocketOption<?>>> - options = new HashMap<>(); + options = new HashMap<Class<?>,Set<SocketOption<?>>>(); static { initOptionSets(); @@ -351,7 +351,7 @@ // Socket - Set<SocketOption<?>> set = new HashSet<>(); + Set<SocketOption<?>> set = new HashSet<SocketOption<?>>(); set.add(StandardSocketOptions.SO_KEEPALIVE); set.add(StandardSocketOptions.SO_SNDBUF); set.add(StandardSocketOptions.SO_RCVBUF); @@ -367,7 +367,7 @@ // ServerSocket - set = new HashSet<>(); + set = new HashSet<SocketOption<?>>(); set.add(StandardSocketOptions.SO_RCVBUF); set.add(StandardSocketOptions.SO_REUSEADDR); set.add(StandardSocketOptions.IP_TOS); @@ -376,7 +376,7 @@ // DatagramSocket - set = new HashSet<>(); + set = new HashSet<SocketOption<?>>(); set.add(StandardSocketOptions.SO_SNDBUF); set.add(StandardSocketOptions.SO_RCVBUF); set.add(StandardSocketOptions.SO_REUSEADDR); @@ -389,7 +389,7 @@ // MulticastSocket - set = new HashSet<>(); + set = new HashSet<SocketOption<?>>(); set.add(StandardSocketOptions.SO_SNDBUF); set.add(StandardSocketOptions.SO_RCVBUF); set.add(StandardSocketOptions.SO_REUSEADDR); diff -Nru openjdk-boot.orig/jdk/src/share/classes/org/jcp/xml/dsig/internal/dom/Policy.java openjdk-boot/jdk/src/share/classes/org/jcp/xml/dsig/internal/dom/Policy.java --- openjdk-boot.orig/jdk/src/share/classes/org/jcp/xml/dsig/internal/dom/Policy.java 2017-04-26 15:02:11.528826395 +0100 +++ openjdk-boot/jdk/src/share/classes/org/jcp/xml/dsig/internal/dom/Policy.java 2017-04-26 16:05:48.611251698 +0100 @@ -46,11 +46,11 @@ public final class Policy { // all restrictions are initialized to be unconstrained - private static Set<URI> disallowedAlgs = new HashSet<>(); + private static Set<URI> disallowedAlgs = new HashSet<URI>(); private static int maxTrans = Integer.MAX_VALUE; private static int maxRefs = Integer.MAX_VALUE; - private static Set<String> disallowedRefUriSchemes = new HashSet<>(); - private static Map<String, Integer> minKeyMap = new HashMap<>(); + private static Set<String> disallowedRefUriSchemes = new HashSet<String>(); + private static Map<String, Integer> minKeyMap = new HashMap<String, Integer>(); private static boolean noDuplicateIds = false; private static boolean noRMLoops = false; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/awt/im/ExecutableInputMethodManager.java openjdk-boot/jdk/src/share/classes/sun/awt/im/ExecutableInputMethodManager.java --- openjdk-boot.orig/jdk/src/share/classes/sun/awt/im/ExecutableInputMethodManager.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/awt/im/ExecutableInputMethodManager.java 2017-04-26 16:05:48.611251698 +0100 @@ -96,7 +96,7 @@ // IM preference stuff private static final String preferredIMNode = "/sun/awt/im/preferredInputMethod"; private static final String descriptorKey = "descriptor"; - private Hashtable<String, InputMethodLocator> preferredLocatorCache = new Hashtable<>(); + private Hashtable<String, InputMethodLocator> preferredLocatorCache = new Hashtable<String, InputMethodLocator>(); private Preferences userRoot; ExecutableInputMethodManager() { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/awt/im/InputContext.java openjdk-boot/jdk/src/share/classes/sun/awt/im/InputContext.java --- openjdk-boot.orig/jdk/src/share/classes/sun/awt/im/InputContext.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/awt/im/InputContext.java 2017-04-26 16:05:48.611251698 +0100 @@ -552,10 +552,10 @@ // keep the input method instance around for future use if (usedInputMethods == null) { - usedInputMethods = new HashMap<>(5); + usedInputMethods = new HashMap<InputMethodLocator, InputMethod>(5); } if (perInputMethodState == null) { - perInputMethodState = new HashMap<>(5); + perInputMethodState = new HashMap<InputMethod, Boolean>(5); } usedInputMethods.put(inputMethodLocator.deriveLocator(null), inputMethod); perInputMethodState.put(inputMethod, @@ -924,7 +924,7 @@ // method becomes the current one. if (requester != inputMethod) { if (perInputMethodState == null) { - perInputMethodState = new HashMap<>(5); + perInputMethodState = new HashMap<InputMethod, Boolean>(5); } perInputMethodState.put(requester, Boolean.valueOf(enable)); return; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/font/CreatedFontTracker.java openjdk-boot/jdk/src/share/classes/sun/font/CreatedFontTracker.java --- openjdk-boot.orig/jdk/src/share/classes/sun/font/CreatedFontTracker.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/font/CreatedFontTracker.java 2017-04-26 16:05:48.611251698 +0100 @@ -109,7 +109,7 @@ * Note that this only applies to createFont() from an InputStream object. */ private static class TempFileDeletionHook { - private static HashMap<File, OutputStream> files = new HashMap<>(); + private static HashMap<File, OutputStream> files = new HashMap<File, OutputStream>(); private static Thread t = null; static void init() { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/invoke/util/ValueConversions.java openjdk-boot/jdk/src/share/classes/sun/invoke/util/ValueConversions.java --- openjdk-boot.orig/jdk/src/share/classes/sun/invoke/util/ValueConversions.java 2017-04-26 15:02:12.612808977 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/invoke/util/ValueConversions.java 2017-04-26 16:05:48.611251698 +0100 @@ -60,7 +60,7 @@ EnumMap<Wrapper, MethodHandle>[] caches = (EnumMap<Wrapper, MethodHandle>[]) new EnumMap<?,?>[n]; for (int i = 0; i < n; i++) - caches[i] = new EnumMap<>(Wrapper.class); + caches[i] = new EnumMap<Wrapper, MethodHandle>(Wrapper.class); return caches; } @@ -943,7 +943,7 @@ Object a8, Object a9) { return makeArray(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9); } private static MethodHandle[] makeArrays() { - ArrayList<MethodHandle> mhs = new ArrayList<>(); + ArrayList<MethodHandle> mhs = new ArrayList<MethodHandle>(); for (;;) { MethodHandle mh = findCollector("array", mhs.size(), Object[].class); if (mh == null) break; @@ -999,7 +999,7 @@ Object a8, Object a9) { fillWithArguments(a, pos, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9); return a; } private static MethodHandle[] makeFillArrays() { - ArrayList<MethodHandle> mhs = new ArrayList<>(); + ArrayList<MethodHandle> mhs = new ArrayList<MethodHandle>(); mhs.add(null); // there is no empty fill; at least a0 is required for (;;) { MethodHandle mh = findCollector("fillArray", mhs.size(), Object[].class, Integer.class, Object[].class); @@ -1200,7 +1200,7 @@ Object a8, Object a9) { return makeList(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9); } private static MethodHandle[] makeLists() { - ArrayList<MethodHandle> mhs = new ArrayList<>(); + ArrayList<MethodHandle> mhs = new ArrayList<MethodHandle>(); for (;;) { MethodHandle mh = findCollector("list", mhs.size(), List.class); if (mh == null) break; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/io/CharacterEncoding.java openjdk-boot/jdk/src/share/classes/sun/io/CharacterEncoding.java --- openjdk-boot.orig/jdk/src/share/classes/sun/io/CharacterEncoding.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/io/CharacterEncoding.java 2017-04-26 16:05:48.611251698 +0100 @@ -54,7 +54,7 @@ private static volatile boolean installedAll; static { - aliasTable = new HashMap<>(460, 1.0f); /* MDA */ + aliasTable = new HashMap<String,String>(460, 1.0f); /* MDA */ aliasTable.put("us-ascii", "ASCII"); aliasTable.put("ascii", "ASCII"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/io/Converters.java openjdk-boot/jdk/src/share/classes/sun/io/Converters.java --- openjdk-boot.orig/jdk/src/share/classes/sun/io/Converters.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/io/Converters.java 2017-04-26 16:05:48.611251698 +0100 @@ -120,7 +120,7 @@ private static Class<?> cache(int type, Object encoding, Class<?> c) { SoftReference<Object[]>[] srs = classCache[type]; - srs[CACHE_SIZE - 1] = new SoftReference<>(new Object[] { c, encoding }); + srs[CACHE_SIZE - 1] = new SoftReference<Object[]>(new Object[] { c, encoding }); moveToFront(srs, CACHE_SIZE - 1); return c; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMSProfile.java openjdk-boot/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMSProfile.java --- openjdk-boot.orig/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMSProfile.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMSProfile.java 2017-04-26 16:05:48.611251698 +0100 @@ -61,7 +61,7 @@ TagCache(LCMSProfile p) { profile = p; - tags = new HashMap<>(); + tags = new HashMap<Integer, TagData>(); } TagData getTag(int sig) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java --- openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java 2017-04-26 15:02:12.596809236 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java 2017-04-26 16:05:48.611251698 +0100 @@ -171,7 +171,7 @@ private static void printProperties(PrintStream ostream) { Properties p = System.getProperties(); ostream.println(PROP_SETTINGS); - List<String> sortedPropertyKeys = new ArrayList<>(); + List<String> sortedPropertyKeys = new ArrayList<String>(); sortedPropertyKeys.addAll(p.stringPropertyNames()); Collections.sort(sortedPropertyKeys); for (String x : sortedPropertyKeys) { @@ -246,7 +246,7 @@ } // Locale does not implement Comparable so we convert it to String // and sort it for pretty printing. - Set<String> sortedSet = new TreeSet<>(); + Set<String> sortedSet = new TreeSet<String>(); for (Locale l : tlocales) { sortedSet.add(l.toString()); } @@ -532,7 +532,7 @@ } static String[] expandArgs(String[] argArray) { - List<StdArg> aList = new ArrayList<>(); + List<StdArg> aList = new ArrayList<StdArg>(); for (String x : argArray) { aList.add(new StdArg(x)); } @@ -540,7 +540,7 @@ } static String[] expandArgs(List<StdArg> argList) { - ArrayList<String> out = new ArrayList<>(); + ArrayList<String> out = new ArrayList<String>(); if (trace) { System.err.println("Incoming arguments:"); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/management/jdp/JdpPacketReader.java openjdk-boot/jdk/src/share/classes/sun/management/jdp/JdpPacketReader.java --- openjdk-boot.orig/jdk/src/share/classes/sun/management/jdp/JdpPacketReader.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/management/jdp/JdpPacketReader.java 2017-04-26 16:05:48.611251698 +0100 @@ -120,7 +120,7 @@ String key = null, value = null; - final Map<String, String> tmpMap = new HashMap<>(); + final Map<String, String> tmpMap = new HashMap<String, String>(); try { while (true) { key = getEntry(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java openjdk-boot/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java --- openjdk-boot.orig/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java 2017-04-26 16:05:48.611251698 +0100 @@ -205,7 +205,7 @@ private static List<BufferPoolMXBean> bufferPools = null; public static synchronized List<BufferPoolMXBean> getBufferPoolMXBeans() { if (bufferPools == null) { - bufferPools = new ArrayList<>(2); + bufferPools = new ArrayList<BufferPoolMXBean>(2); bufferPools.add(createBufferPoolMXBean(sun.misc.SharedSecrets.getJavaNioAccess() .getDirectBufferPool())); bufferPools.add(createBufferPoolMXBean(sun.nio.ch.FileChannelImpl diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/misc/ObjectInputFilter.java openjdk-boot/jdk/src/share/classes/sun/misc/ObjectInputFilter.java --- openjdk-boot.orig/jdk/src/share/classes/sun/misc/ObjectInputFilter.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/misc/ObjectInputFilter.java 2017-04-26 16:05:48.611251698 +0100 @@ -444,7 +444,7 @@ maxStreamBytes = Long.MAX_VALUE; String[] patterns = pattern.split(";"); - filters = new ArrayList<>(patterns.length); + filters = new ArrayList<GlobalFilter>(patterns.length); for (int i = 0; i < patterns.length; i++) { String p = patterns[i]; int nameLen = p.length(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java openjdk-boot/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/spi/nameservice/dns/DNSNameService.java 2017-04-26 16:05:48.611251698 +0100 @@ -52,7 +52,7 @@ // Per-thread soft cache of the last temporary context private static ThreadLocal<SoftReference<ThreadContext>> contextRef = - new ThreadLocal<>(); + new ThreadLocal<SoftReference<ThreadContext>>(); // Simple class to encapsulate the temporary context private static class ThreadContext { @@ -99,7 +99,7 @@ // new thread context needs to be created if (thrCtxt == null) { - final Hashtable<String,Object> env = new Hashtable<>(); + final Hashtable<String,Object> env = new Hashtable<String,Object>(); env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory"); @@ -165,7 +165,7 @@ final String[] ids, int depth) throws UnknownHostException { - ArrayList<String> results = new ArrayList<>(); + ArrayList<String> results = new ArrayList<String>(); Attributes attrs; // do the query diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/TransferProtocolClient.java openjdk-boot/jdk/src/share/classes/sun/net/TransferProtocolClient.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/TransferProtocolClient.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/TransferProtocolClient.java 2017-04-26 16:05:48.611251698 +0100 @@ -42,7 +42,7 @@ /** Array of strings (usually 1 entry) for the last reply from the server. */ - protected Vector<String> serverResponse = new Vector<>(1); + protected Vector<String> serverResponse = new Vector<String>(1); /** code for last reply */ protected int lastReplyCode; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationHeader.java openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationHeader.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationHeader.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationHeader.java 2017-04-26 16:05:48.611251698 +0100 @@ -139,7 +139,7 @@ this.dontUseNegotiate = dontUseNegotiate; this.rsp = response; this.hdrname = hdrname; - this.schemes = new HashMap<>(); + this.schemes = new HashMap<String, SchemeMapValue>(); parse(disabledSchemes); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java 2017-04-26 16:05:48.611251698 +0100 @@ -111,7 +111,7 @@ * at the same time, then all but the first will block until * the first completes its authentication. */ - static private HashMap<String,Thread> requests = new HashMap<>(); + static private HashMap<String,Thread> requests = new HashMap<String,Thread>(); /* check if a request for this destination is in progress * return false immediately if not. Otherwise block until diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java 2017-04-26 15:02:12.552809941 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java 2017-04-26 16:05:48.611251698 +0100 @@ -224,7 +224,7 @@ if (list == null || list.isEmpty()) return Collections.emptySet(); - Set<String> s = new HashSet<>(); + Set<String> s = new HashSet<String>(); String[] parts = list.split("\\s*,\\s*"); for (String part : parts) s.add(part.toLowerCase(Locale.ROOT)); @@ -2721,7 +2721,7 @@ if (filteredHeaders != null) return filteredHeaders; - Map<String, List<String>> headers, tmpMap = new HashMap<>(); + Map<String, List<String>> headers, tmpMap = new HashMap<String, List<String>>(); if (cachedHeaders != null) headers = cachedHeaders.getHeaders(); @@ -2730,7 +2730,7 @@ for (Map.Entry<String, List<String>> e: headers.entrySet()) { String key = e.getKey(); - List<String> values = e.getValue(), filteredVals = new ArrayList<>(); + List<String> values = e.getValue(), filteredVals = new ArrayList<String>(); for (String value : values) { String fVal = filterHeaderField(key, value); if (fVal != null) @@ -2912,7 +2912,7 @@ */ Map<String, List<String>> userCookiesMap = null; if (userCookies != null || userCookies2 != null) { - userCookiesMap = new HashMap<>(); + userCookiesMap = new HashMap<String, List<String>>(); if (userCookies != null) { userCookiesMap.put("Cookie", Arrays.asList(userCookies)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/www/URLConnection.java openjdk-boot/jdk/src/share/classes/sun/net/www/URLConnection.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/URLConnection.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/www/URLConnection.java 2017-04-26 16:05:48.611251698 +0100 @@ -234,7 +234,7 @@ url = null; } - private static HashMap<String,Void> proxiedHosts = new HashMap<>(); + private static HashMap<String,Void> proxiedHosts = new HashMap<String,Void>(); public synchronized static void setProxiedHost(String host) { proxiedHosts.put(host.toLowerCase(), null); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java openjdk-boot/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/cs/AbstractCharsetProvider.java 2017-04-26 16:05:48.611251698 +0100 @@ -49,22 +49,22 @@ /* Maps canonical names to class names */ private Map<String,String> classMap - = new TreeMap<>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); + = new TreeMap<String,String>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); /* Maps alias names to canonical names */ private Map<String,String> aliasMap - = new TreeMap<>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); + = new TreeMap<String,String>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); /* Maps canonical names to alias-name arrays */ private Map<String,String[]> aliasNameMap - = new TreeMap<>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); + = new TreeMap<String,String[]>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); /* Maps canonical names to soft references that hold cached instances */ private Map<String,SoftReference<Charset>> cache - = new TreeMap<>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); + = new TreeMap<String,SoftReference<Charset>>(ASCIICaseInsensitiveComparator.CASE_INSENSITIVE_ORDER); private String packagePrefix; @@ -167,7 +167,7 @@ final ArrayList<String> ks; synchronized (this) { init(); - ks = new ArrayList<>(classMap.keySet()); + ks = new ArrayList<String>(classMap.keySet()); } return new Iterator<Charset>() { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractAclFileAttributeView.java openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractAclFileAttributeView.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractAclFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractAclFileAttributeView.java 2017-04-26 16:05:48.615251633 +0100 @@ -84,7 +84,7 @@ throw new IllegalArgumentException("'" + name() + ":" + attribute + "' not recognized"); } - Map<String,Object> result = new HashMap<>(2); + Map<String,Object> result = new HashMap<String,Object>(2); if (acl) result.put(ACL_NAME, getAcl()); if (owner) diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractBasicFileAttributeView.java openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractBasicFileAttributeView.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractBasicFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractBasicFileAttributeView.java 2017-04-26 16:05:48.615251633 +0100 @@ -89,8 +89,8 @@ * Used to build a map of attribute name/values. */ static class AttributesBuilder { - private Set<String> names = new HashSet<>(); - private Map<String,Object> map = new HashMap<>(); + private Set<String> names = new HashSet<String>(); + private Map<String,Object> map = new HashMap<String,Object>(); private boolean copyAll; private AttributesBuilder(Set<String> allowed, String[] requested) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractPoller.java openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractPoller.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractPoller.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractPoller.java 2017-04-26 16:05:48.615251633 +0100 @@ -102,7 +102,7 @@ throw new NullPointerException(); if (events.length == 0) throw new IllegalArgumentException("No events to register"); - Set<WatchEvent.Kind<?>> eventSet = new HashSet<>(events.length); + Set<WatchEvent.Kind<?>> eventSet = new HashSet<WatchEvent.Kind<?>>(events.length); for (WatchEvent.Kind<?> event: events) { // standard events if (event == StandardWatchEventKinds.ENTRY_CREATE || diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractUserDefinedFileAttributeView.java openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractUserDefinedFileAttributeView.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/AbstractUserDefinedFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/fs/AbstractUserDefinedFileAttributeView.java 2017-04-26 16:05:48.615251633 +0100 @@ -77,7 +77,7 @@ throws IOException { // names of attributes to return - List<String> names = new ArrayList<>(); + List<String> names = new ArrayList<String>(); for (String name: attributes) { if (name.equals("*")) { names = list(); @@ -90,7 +90,7 @@ } // read each value and return in map - Map<String,Object> result = new HashMap<>(); + Map<String,Object> result = new HashMap<String,Object>(); for (String name: names) { int size = size(name); byte[] buf = new byte[size]; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/FileOwnerAttributeViewImpl.java openjdk-boot/jdk/src/share/classes/sun/nio/fs/FileOwnerAttributeViewImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/FileOwnerAttributeViewImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/fs/FileOwnerAttributeViewImpl.java 2017-04-26 16:05:48.615251633 +0100 @@ -71,7 +71,7 @@ @Override public Map<String,Object> readAttributes(String[] attributes) throws IOException { - Map<String,Object> result = new HashMap<>(); + Map<String,Object> result = new HashMap<String,Object>(); for (String attribute: attributes) { if (attribute.equals("*") || attribute.equals(OWNER_NAME)) { result.put(OWNER_NAME, getOwner()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/Util.java openjdk-boot/jdk/src/share/classes/sun/nio/fs/Util.java --- openjdk-boot.orig/jdk/src/share/classes/sun/nio/fs/Util.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/nio/fs/Util.java 2017-04-26 16:05:48.615251633 +0100 @@ -63,7 +63,7 @@ * Returns a Set containing the given elements. */ static <E> Set<E> newSet(E... elements) { - HashSet<E> set = new HashSet<>(); + HashSet<E> set = new HashSet<E>(); for (E e: elements) { set.add(e); } @@ -75,7 +75,7 @@ * the given elements. */ static <E> Set<E> newSet(Set<E> other, E... elements) { - HashSet<E> set = new HashSet<>(other); + HashSet<E> set = new HashSet<E>(other); for (E e: elements) { set.add(e); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java openjdk-boot/jdk/src/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java --- openjdk-boot.orig/jdk/src/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java 2017-04-26 15:02:11.524826459 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java 2017-04-26 16:05:48.615251633 +0100 @@ -442,7 +442,7 @@ Map<String, Class<?>> memberTypes = annotationType.memberTypes(); // consistent with runtime Map type - Map<String, Object> mv = new LinkedHashMap<>(); + Map<String, Object> mv = new LinkedHashMap<String, Object>(); // If there are annotation members without values, that // situation is handled by the invoke method. diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/reflect/generics/parser/SignatureParser.java openjdk-boot/jdk/src/share/classes/sun/reflect/generics/parser/SignatureParser.java --- openjdk-boot.orig/jdk/src/share/classes/sun/reflect/generics/parser/SignatureParser.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/reflect/generics/parser/SignatureParser.java 2017-04-26 16:05:48.615251633 +0100 @@ -229,7 +229,7 @@ * "<" FormalTypeParameter+ ">" */ private FormalTypeParameter[] parseFormalTypeParameters(){ - List<FormalTypeParameter> ftps = new ArrayList<>(3); + List<FormalTypeParameter> ftps = new ArrayList(3); assert(current() == '<'); // should not have been called at all if (current() != '<') { throw error("expected '<'");} advance(); @@ -308,7 +308,7 @@ assert(current() == 'L'); if (current() != 'L') { throw error("expected a class type");} advance(); - List<SimpleClassTypeSignature> scts = new ArrayList<>(5); + List<SimpleClassTypeSignature> scts = new ArrayList(5); scts.add(parsePackageNameAndSimpleClassTypeSignature()); parseClassTypeSignatureSuffix(scts); @@ -391,7 +391,7 @@ * "<" TypeArgument+ ">" */ private TypeArgument[] parseTypeArguments() { - List<TypeArgument> tas = new ArrayList<>(3); + List<TypeArgument> tas = new ArrayList(3); assert(current() == '<'); if (current() != '<') { throw error("expected '<'");} advance(); @@ -529,7 +529,7 @@ * ":" FieldTypeSignature */ private FieldTypeSignature[] parseBounds() { - List<FieldTypeSignature> fts = new ArrayList<>(3); + List<FieldTypeSignature> fts = new ArrayList(3); if (current() == ':') { advance(); @@ -557,7 +557,7 @@ * ClassTypeSignature */ private ClassTypeSignature[] parseSuperInterfaces() { - List<ClassTypeSignature> cts = new ArrayList<>(5); + List<ClassTypeSignature> cts = new ArrayList(5); while(current() == 'L') { cts.add(parseClassTypeSignature()); } @@ -592,7 +592,7 @@ // TypeSignature* private TypeSignature[] parseZeroOrMoreTypeSignatures() { - List<TypeSignature> ts = new ArrayList<>(); + List<TypeSignature> ts = new ArrayList(); boolean stop = false; while (!stop) { switch(current()) { @@ -631,7 +631,7 @@ // ThrowSignature* private FieldTypeSignature[] parseZeroOrMoreThrowsSignatures(){ - List<FieldTypeSignature> ets = new ArrayList<>(3); + List<FieldTypeSignature> ets = new ArrayList(3); while( current() == '^') { ets.add(parseThrowsSignature()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/registry/RegistryImpl.java openjdk-boot/jdk/src/share/classes/sun/rmi/registry/RegistryImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/registry/RegistryImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/registry/RegistryImpl.java 2017-04-26 16:05:48.615251633 +0100 @@ -82,9 +82,9 @@ /* indicate compatibility with JDK 1.1.x version of class */ private static final long serialVersionUID = 4666870661827494597L; private Hashtable<String, Remote> bindings - = new Hashtable<>(101); + = new Hashtable<String, Remote>(101); private static Hashtable<InetAddress, InetAddress> allowedAccessCache - = new Hashtable<>(3); + = new Hashtable<InetAddress, InetAddress>(3); private static RegistryImpl registry; private static ObjID id = new ObjID(ObjID.REGISTRY_ID); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/rmic/BatchEnvironment.java openjdk-boot/jdk/src/share/classes/sun/rmi/rmic/BatchEnvironment.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/rmic/BatchEnvironment.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/rmic/BatchEnvironment.java 2017-04-26 16:05:48.615251633 +0100 @@ -160,7 +160,7 @@ } /** list of generated source files created in this environment */ - private Vector<File> generatedFiles = new Vector<>(); + private Vector<File> generatedFiles = new Vector<File>(); /** * Remember a generated source file generated so that it diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/rmic/Main.java openjdk-boot/jdk/src/share/classes/sun/rmi/rmic/Main.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/rmic/Main.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/rmic/Main.java 2017-04-26 16:05:48.615251633 +0100 @@ -184,7 +184,7 @@ destDir = null; flags = F_WARNINGS; tm = System.currentTimeMillis(); - classes = new Vector<>(); + classes = new Vector<String>(); nowrite = false; nocompile = false; keepGenerated = false; @@ -192,7 +192,7 @@ if (generatorArgs == null) { return false; } - generators = new Vector<>(); + generators = new Vector<Generator>(); // Pre-process command line for @file arguments try { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/rmic/RMIGenerator.java openjdk-boot/jdk/src/share/classes/sun/rmi/rmic/RMIGenerator.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/rmic/RMIGenerator.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/rmic/RMIGenerator.java 2017-04-26 16:05:48.615251633 +0100 @@ -61,7 +61,7 @@ */ public class RMIGenerator implements RMIConstants, Generator { - private static final Hashtable<String, Integer> versionOptions = new Hashtable<>(); + private static final Hashtable<String, Integer> versionOptions = new Hashtable<String, Integer>(); static { versionOptions.put("-v1.1", new Integer(STUB_VERSION_1_1)); versionOptions.put("-vcompat", new Integer(STUB_VERSION_FAT)); @@ -651,7 +651,7 @@ * that no exceptions need to be caught. */ private Vector<ClassDefinition> computeUniqueCatchList(ClassDeclaration[] exceptions) { - Vector<ClassDefinition> uniqueList = new Vector<>(); // unique exceptions to catch + Vector<ClassDefinition> uniqueList = new Vector<ClassDefinition>(); // unique exceptions to catch uniqueList.addElement(defRuntimeException); uniqueList.addElement(defRemoteException); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/ActivationGroupImpl.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/ActivationGroupImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/ActivationGroupImpl.java 2017-04-26 15:02:12.544810070 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/ActivationGroupImpl.java 2017-04-26 16:05:48.615251633 +0100 @@ -66,10 +66,10 @@ /** maps persistent IDs to activated remote objects */ private final Hashtable<ActivationID,ActiveEntry> active = - new Hashtable<>(); + new Hashtable<ActivationID,ActiveEntry>(); private boolean groupInactive = false; private final ActivationGroupID groupID; - private final List<ActivationID> lockedIDs = new ArrayList<>(); + private final List<ActivationID> lockedIDs = new ArrayList<ActivationID>(); /** * Creates a default activation group implementation. diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/Activation.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/Activation.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/Activation.java 2017-04-26 15:02:12.596809236 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/Activation.java 2017-04-26 16:05:48.615251633 +0100 @@ -149,10 +149,10 @@ /** maps activation id to its respective group id */ private Map<ActivationID,ActivationGroupID> idTable = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<ActivationID,ActivationGroupID>(); /** maps group id to its GroupEntry groups */ private Map<ActivationGroupID,GroupEntry> groupTable = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<ActivationGroupID,GroupEntry>(); private byte majorVersion = MAJOR_VERSION; private byte minorVersion = MINOR_VERSION; @@ -288,10 +288,10 @@ { ois.defaultReadObject(); if (! (groupTable instanceof ConcurrentHashMap)) { - groupTable = new ConcurrentHashMap<>(groupTable); + groupTable = new ConcurrentHashMap<ActivationGroupID,GroupEntry>(groupTable); } if (! (idTable instanceof ConcurrentHashMap)) { - idTable = new ConcurrentHashMap<>(idTable); + idTable = new ConcurrentHashMap<ActivationID,ActivationGroupID>(idTable); } } @@ -805,8 +805,8 @@ ActivationGroupDesc desc = null; ActivationGroupID groupID = null; long incarnation = 0; - Map<ActivationID,ObjectEntry> objects = new HashMap<>(); - Set<ActivationID> restartSet = new HashSet<>(); + Map<ActivationID,ObjectEntry> objects = new HashMap<ActivationID,ObjectEntry>(); + Set<ActivationID> restartSet = new HashSet<ActivationID>(); transient ActivationInstantiator group = null; transient int status = NORMAL; @@ -1359,7 +1359,7 @@ cmdenv = desc.getCommandEnvironment(); // argv is the literal command to exec - List<String> argv = new ArrayList<>(); + List<String> argv = new ArrayList<String>(); // Command name/path argv.add((cmdenv != null && cmdenv.getCommandPath() != null) @@ -1964,7 +1964,7 @@ } String log = null; - List<String> childArgs = new ArrayList<>(); + List<String> childArgs = new ArrayList<String>(); /* * Parse arguments diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/LoaderHandler.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/LoaderHandler.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/LoaderHandler.java 2017-04-26 15:02:12.544810070 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/LoaderHandler.java 2017-04-26 16:05:48.615251633 +0100 @@ -113,11 +113,11 @@ * garbage collected. */ private static final HashMap<LoaderKey, LoaderEntry> loaderTable - = new HashMap<>(5); + = new HashMap<LoaderKey, LoaderEntry>(5); /** reference queue for cleared class loader entries */ private static final ReferenceQueue<Loader> refQueue - = new ReferenceQueue<>(); + = new ReferenceQueue<Loader>(); /* * Disallow anyone from creating one of these. @@ -780,7 +780,7 @@ /** map from weak(key=string) to [URL[], soft(key)] */ private static final Map<String, Object[]> pathToURLsCache - = new WeakHashMap<>(5); + = new WeakHashMap<String, Object[]>(5); /** * Convert an array of URL objects into a corresponding string diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/MarshalInputStream.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/MarshalInputStream.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/MarshalInputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/MarshalInputStream.java 2017-04-26 16:05:48.615251633 +0100 @@ -76,14 +76,14 @@ /** table to hold sun classes to which access is explicitly permitted */ protected static Map<String, Class<?>> permittedSunClasses - = new HashMap<>(3); + = new HashMap<String, Class<?>>(3); /** if true, don't try superclass first in resolveClass() */ private boolean skipDefaultResolveClass = false; /** callbacks to make when done() called: maps Object to Runnable */ private final Map<Object, Runnable> doneCallbacks - = new HashMap<>(3); + = new HashMap<Object, Runnable>(3); /** * if true, load classes (if not available locally) only from the diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/UnicastServerRef.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/UnicastServerRef.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/UnicastServerRef.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/UnicastServerRef.java 2017-04-26 16:05:48.615251633 +0100 @@ -577,7 +577,7 @@ HashToMethod_Maps() {} protected Map<Long,Method> computeValue(Class<?> remoteClass) { - Map<Long,Method> map = new HashMap<>(); + Map<Long,Method> map = new HashMap<Long,Method>(); for (Class<?> cl = remoteClass; cl != null; cl = cl.getSuperclass()) diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/Util.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/Util.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/Util.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/Util.java 2017-04-26 16:05:48.615251633 +0100 @@ -207,7 +207,7 @@ * @throws NullPointerException if remoteClass is null */ private static Class<?>[] getRemoteInterfaces(Class<?> remoteClass) { - ArrayList<Class<?>> list = new ArrayList<>(); + ArrayList<Class<?>> list = new ArrayList<Class<?>>(); getRemoteInterfaces(list, remoteClass); return list.toArray(new Class<?>[list.size()]); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/WeakClassHashMap.java openjdk-boot/jdk/src/share/classes/sun/rmi/server/WeakClassHashMap.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/server/WeakClassHashMap.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/server/WeakClassHashMap.java 2017-04-26 16:05:48.615251633 +0100 @@ -46,7 +46,7 @@ **/ public abstract class WeakClassHashMap<V> { - private Map<Class<?>,ValueCell<V>> internalMap = new WeakHashMap<>(); + private Map<Class<?>,ValueCell<V>> internalMap = new WeakHashMap<Class<?>,ValueCell<V>>(); protected WeakClassHashMap() { } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/ConnectionInputStream.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/ConnectionInputStream.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/ConnectionInputStream.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/ConnectionInputStream.java 2017-04-26 16:05:48.615251633 +0100 @@ -43,7 +43,7 @@ private boolean dgcAckNeeded = false; /** Hashtable mapping Endpoints to lists of LiveRefs to register */ - private Map<Endpoint, List<LiveRef>> incomingRefTable = new HashMap<>(5); + private Map<Endpoint, List<LiveRef>> incomingRefTable = new HashMap<Endpoint, List<LiveRef>>(5); /** identifier for gc ack*/ private UID ackID; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/DGCAckHandler.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/DGCAckHandler.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/DGCAckHandler.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/DGCAckHandler.java 2017-04-26 16:05:48.615251633 +0100 @@ -78,7 +78,7 @@ Collections.synchronizedMap(new HashMap<UID,DGCAckHandler>()); private final UID id; - private List<Object> objList = new ArrayList<>(); // null if released + private List<Object> objList = new ArrayList<Object>(); // null if released private Future<?> task = null; /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/DGCClient.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/DGCClient.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/DGCClient.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/DGCClient.java 2017-04-26 16:05:48.615251633 +0100 @@ -193,9 +193,9 @@ private DGC dgc; /** table of refs held for endpoint: maps LiveRef to RefEntry */ - private Map<LiveRef, RefEntry> refTable = new HashMap<>(5); + private Map<LiveRef, RefEntry> refTable = new HashMap<LiveRef, RefEntry>(5); /** set of RefEntry instances from last (failed) dirty call */ - private Set<RefEntry> invalidRefs = new HashSet<>(5); + private Set<RefEntry> invalidRefs = new HashSet<RefEntry>(5); /** true if this entry has been removed from the global table */ private boolean removed = false; @@ -217,12 +217,12 @@ private boolean interruptible = false; /** reference queue for phantom references */ - private ReferenceQueue<LiveRef> refQueue = new ReferenceQueue<>(); + private ReferenceQueue<LiveRef> refQueue = new ReferenceQueue<LiveRef>(); /** set of clean calls that need to be made */ - private Set<CleanRequest> pendingCleans = new HashSet<>(5); + private Set<CleanRequest> pendingCleans = new HashSet<CleanRequest>(5); /** global endpoint table: maps Endpoint to EndpointEntry */ - private static Map<Endpoint,EndpointEntry> endpointTable = new HashMap<>(5); + private static Map<Endpoint,EndpointEntry> endpointTable = new HashMap<Endpoint,EndpointEntry>(5); /** handle for GC latency request (for future cancellation) */ private static GC.LatencyRequest gcLatencyRequest = null; @@ -299,7 +299,7 @@ refEntry = new RefEntry(refClone); refTable.put(refClone, refEntry); if (refsToDirty == null) { - refsToDirty = new HashSet<>(5); + refsToDirty = new HashSet<RefEntry>(5); } refsToDirty.add(refEntry); } @@ -581,7 +581,7 @@ needRenewal = true; if (!invalidRefs.isEmpty()) { refsToDirty = invalidRefs; - invalidRefs = new HashSet<>(5); + invalidRefs = new HashSet<RefEntry>(5); } sequenceNum = getNextSequenceNum(); } @@ -627,12 +627,12 @@ if (refEntry.isRefSetEmpty()) { if (refEntry.hasDirtyFailed()) { if (strongCleans == null) { - strongCleans = new HashSet<>(5); + strongCleans = new HashSet<RefEntry>(5); } strongCleans.add(refEntry); } else { if (normalCleans == null) { - normalCleans = new HashSet<>(5); + normalCleans = new HashSet<RefEntry>(5); } normalCleans.add(refEntry); } @@ -728,7 +728,7 @@ /** LiveRef value for this entry (not a registered instance) */ private LiveRef ref; /** set of phantom references to registered instances */ - private Set<PhantomLiveRef> refSet = new HashSet<>(5); + private Set<PhantomLiveRef> refSet = new HashSet<PhantomLiveRef>(5); /** true if a dirty call containing this ref has failed */ private boolean dirtyFailed = false; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/DGCImpl.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/DGCImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/DGCImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/DGCImpl.java 2017-04-26 16:05:48.615251633 +0100 @@ -93,7 +93,7 @@ /** remote implementation of DGC interface for this VM */ private static DGCImpl dgc; /** table that maps VMID to LeaseInfo */ - private Map<VMID,LeaseInfo> leaseTable = new HashMap<>(); + private Map<VMID,LeaseInfo> leaseTable = new HashMap<VMID,LeaseInfo>(); /** checks for lease expiration */ private Future<?> checker = null; @@ -289,7 +289,7 @@ long time = System.currentTimeMillis(); /* List of vmids that need to be removed from the leaseTable */ - List<LeaseInfo> toUnregister = new ArrayList<>(); + List<LeaseInfo> toUnregister = new ArrayList<LeaseInfo>(); /* Build a list of leaseInfo objects that need to have * targets removed from their notifySet. Remove expired @@ -429,7 +429,7 @@ private static class LeaseInfo { VMID vmid; long expiration; - Set<Target> notifySet = new HashSet<>(); + Set<Target> notifySet = new HashSet<Target>(); LeaseInfo(VMID vmid, long lease) { this.vmid = vmid; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/ObjectTable.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/ObjectTable.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/ObjectTable.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/ObjectTable.java 2017-04-26 16:05:48.615251633 +0100 @@ -62,9 +62,9 @@ /** tables mapping to Target, keyed from ObjectEndpoint and impl object */ private static final Map<ObjectEndpoint,Target> objTable = - new HashMap<>(); + new HashMap<ObjectEndpoint,Target>(); private static final Map<WeakRef,Target> implTable = - new HashMap<>(); + new HashMap<WeakRef,Target>(); /** * lock guarding keepAliveCount, reaper, and gcLatencyRequest. @@ -79,7 +79,7 @@ private static Thread reaper = null; /** queue notified when weak refs in the table are cleared */ - static final ReferenceQueue<Object> reapQueue = new ReferenceQueue<>(); + static final ReferenceQueue<Object> reapQueue = new ReferenceQueue<Object>(); /** handle for GC latency request (for future cancellation) */ private static GC.LatencyRequest gcLatencyRequest = null; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/proxy/CGIHandler.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/proxy/CGIHandler.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/proxy/CGIHandler.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/proxy/CGIHandler.java 2017-04-26 16:05:48.615251633 +0100 @@ -116,7 +116,7 @@ /* construct table mapping command strings to handlers */ private static Hashtable<String, CGICommandHandler> commandLookup; static { - commandLookup = new Hashtable<>(); + commandLookup = new Hashtable<String, CGICommandHandler>(); for (int i = 0; i < commands.length; ++ i) commandLookup.put(commands[i].getName(), commands[i]); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/proxy/RMIMasterSocketFactory.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/proxy/RMIMasterSocketFactory.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/proxy/RMIMasterSocketFactory.java 2017-04-26 15:02:12.596809236 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/proxy/RMIMasterSocketFactory.java 2017-04-26 16:05:48.615251633 +0100 @@ -75,13 +75,13 @@ /** table of hosts successfully connected to and the factory used */ private Hashtable<String, RMISocketFactory> successTable = - new Hashtable<>(); + new Hashtable<String, RMISocketFactory>(); /** maximum number of hosts to remember successful connection to */ private static final int MaxRememberedHosts = 64; /** list of the hosts in successTable in initial connection order */ - private Vector<String> hostList = new Vector<>(MaxRememberedHosts); + private Vector<String> hostList = new Vector<String>(MaxRememberedHosts); /** default factory for initial use for direct socket connection */ protected RMISocketFactory initialFactory = new RMIDirectSocketFactory(); @@ -96,7 +96,7 @@ * socket connection fails. */ public RMIMasterSocketFactory() { - altFactoryList = new Vector<>(2); + altFactoryList = new Vector<RMISocketFactory>(2); boolean setFactories = false; try { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/Target.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/Target.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/Target.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/Target.java 2017-04-26 16:05:48.619251568 +0100 @@ -53,10 +53,10 @@ /** stub for remote object */ private final Remote stub; /** set of clients that hold references to this target */ - private final Vector<VMID> refSet = new Vector<>(); + private final Vector<VMID> refSet = new Vector<VMID>(); /** table that maps client endpoints to sequence numbers */ private final Hashtable<VMID, SequenceEntry> sequenceTable = - new Hashtable<>(5); + new Hashtable<VMID, SequenceEntry>(5); /** access control context in which target was created */ private final AccessControlContext acc; /** context class loader in which target was created */ diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/ConnectionMultiplexer.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/ConnectionMultiplexer.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/ConnectionMultiplexer.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/ConnectionMultiplexer.java 2017-04-26 16:05:48.619251568 +0100 @@ -85,7 +85,7 @@ private DataOutputStream dataOut; /** table holding currently open connection IDs and related info */ - private Hashtable<Integer, MultiplexConnectionInfo> connectionTable = new Hashtable<>(7); + private Hashtable<Integer, MultiplexConnectionInfo> connectionTable = new Hashtable<Integer, MultiplexConnectionInfo>(7); /** number of currently open connections */ private int numConnections = 0; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/TCPChannel.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/TCPChannel.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/TCPChannel.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/TCPChannel.java 2017-04-26 16:05:48.619251568 +0100 @@ -64,7 +64,7 @@ private final TCPTransport tr; /** list of cached connections */ private final List<TCPConnection> freeList = - new ArrayList<>(); + new ArrayList<TCPConnection>(); /** frees cached connections that have expired (guarded by freeList) */ private Future<?> reaper = null; @@ -480,7 +480,7 @@ private TCPTransport transport; /** queue of connections to be accepted */ - private List<Connection> queue = new ArrayList<>(); + private List<Connection> queue = new ArrayList<Connection>(); /** thread ID counter */ private static int threadNum = 0; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/TCPEndpoint.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/TCPEndpoint.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/TCPEndpoint.java 2017-04-26 15:02:12.544810070 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/TCPEndpoint.java 2017-04-26 16:05:48.619251568 +0100 @@ -148,7 +148,7 @@ // TBD: should this be a weak hash table? private static final Map<TCPEndpoint,LinkedList<TCPEndpoint>> localEndpoints = - new HashMap<>(); + new HashMap<TCPEndpoint,LinkedList<TCPEndpoint>>(); /** * Create an endpoint for a specified host and port. diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java 2017-04-26 16:05:48.619251568 +0100 @@ -123,7 +123,7 @@ /** client host for the current thread's connection */ private static final ThreadLocal<ConnectionHandler> - threadConnectionHandler = new ThreadLocal<>(); + threadConnectionHandler = new ThreadLocal<ConnectionHandler>(); /** an AccessControlContext with no permissions */ private static final AccessControlContext NOPERMS_ACC; @@ -141,7 +141,7 @@ private ServerSocket server = null; /** table mapping endpoints to channels */ private final Map<TCPEndpoint,Reference<TCPChannel>> channelTable = - new WeakHashMap<>(); + new WeakHashMap<TCPEndpoint,Reference<TCPChannel>>(); static final RMISocketFactory defaultSocketFactory = RMISocketFactory.getDefaultSocketFactory(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/Transport.java openjdk-boot/jdk/src/share/classes/sun/rmi/transport/Transport.java --- openjdk-boot.orig/jdk/src/share/classes/sun/rmi/transport/Transport.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/rmi/transport/Transport.java 2017-04-26 16:05:48.619251568 +0100 @@ -66,7 +66,7 @@ Log.getLog("sun.rmi.transport.misc", "transport", Transport.logLevel); /** References the current transport when a call is being serviced */ - private static final ThreadLocal<Transport> currentTransport = new ThreadLocal<>(); + private static final ThreadLocal<Transport> currentTransport = new ThreadLocal<Transport>(); /** ObjID for DGCImpl */ private static final ObjID dgcID = new ObjID(ObjID.DGC_ID); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/acl/AclEntryImpl.java openjdk-boot/jdk/src/share/classes/sun/security/acl/AclEntryImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/acl/AclEntryImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/acl/AclEntryImpl.java 2017-04-26 16:05:48.619251568 +0100 @@ -36,7 +36,7 @@ */ public class AclEntryImpl implements AclEntry { private Principal user = null; - private Vector<Permission> permissionSet = new Vector<>(10, 10); + private Vector<Permission> permissionSet = new Vector<Permission>(10, 10); private boolean negative = false; /** diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/acl/AclImpl.java openjdk-boot/jdk/src/share/classes/sun/security/acl/AclImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/acl/AclImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/acl/AclImpl.java 2017-04-26 16:05:48.619251568 +0100 @@ -41,15 +41,15 @@ // or principal. // private Hashtable<Principal, AclEntry> allowedUsersTable = - new Hashtable<>(23); + new Hashtable<Principal,AclEntry>(23); private Hashtable<Principal, AclEntry> allowedGroupsTable = - new Hashtable<>(23); + new Hashtable<Principal, AclEntry>(23); private Hashtable<Principal, AclEntry> deniedUsersTable = - new Hashtable<>(23); + new Hashtable<Principal, AclEntry>(23); private Hashtable<Principal, AclEntry> deniedGroupsTable = - new Hashtable<>(23); + new Hashtable<Principal, AclEntry>(23); private String aclName = null; - private Vector<Permission> zeroSet = new Vector<>(1,1); + private Vector<Permission> zeroSet = new Vector<Permission>(1,1); /** @@ -294,7 +294,7 @@ // private static Enumeration<Permission> union(Enumeration<Permission> e1, Enumeration<Permission> e2) { - Vector<Permission> v = new Vector<>(20, 20); + Vector<Permission> v = new Vector<Permission>(20, 20); while (e1.hasMoreElements()) v.addElement(e1.nextElement()); @@ -313,7 +313,7 @@ // private Enumeration<Permission> subtract(Enumeration<Permission> e1, Enumeration<Permission> e2) { - Vector<Permission> v = new Vector<>(20, 20); + Vector<Permission> v = new Vector<Permission>(20, 20); while (e1.hasMoreElements()) v.addElement(e1.nextElement()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/acl/GroupImpl.java openjdk-boot/jdk/src/share/classes/sun/security/acl/GroupImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/acl/GroupImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/acl/GroupImpl.java 2017-04-26 16:05:48.619251568 +0100 @@ -34,7 +34,7 @@ * @author Satish Dharmaraj */ public class GroupImpl implements Group { - private Vector<Principal> groupMembers = new Vector<>(50, 100); + private Vector<Principal> groupMembers = new Vector<Principal>(50, 100); private String group; /** @@ -131,7 +131,7 @@ if (groupMembers.contains(member)) { return true; } else { - Vector<Group> alreadySeen = new Vector<>(10); + Vector<Group> alreadySeen = new Vector<Group>(10); return isMemberRecurse(member, alreadySeen); } } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/jca/ProviderList.java openjdk-boot/jdk/src/share/classes/sun/security/jca/ProviderList.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/jca/ProviderList.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/jca/ProviderList.java 2017-04-26 16:05:48.619251568 +0100 @@ -97,7 +97,7 @@ if (providerList.getProvider(p.getName()) != null) { return providerList; } - List<ProviderConfig> list = new ArrayList<> + List<ProviderConfig> list = new ArrayList<ProviderConfig> (Arrays.asList(providerList.configs)); int n = list.size(); if ((position < 0) || (position > n)) { @@ -161,7 +161,7 @@ * Return a new ProviderList parsed from the java.security Properties. */ private ProviderList() { - List<ProviderConfig> configList = new ArrayList<>(); + List<ProviderConfig> configList = new ArrayList<ProviderConfig>(); for (int i = 1; true; i++) { String entry = Security.getProperty("security.provider." + i); if (entry == null) { @@ -201,7 +201,7 @@ * possible recursion and deadlock during verification. */ ProviderList getJarList(String[] jarClassNames) { - List<ProviderConfig> newConfigs = new ArrayList<>(); + List<ProviderConfig> newConfigs = new ArrayList<ProviderConfig>(); for (String className : jarClassNames) { ProviderConfig newConfig = new ProviderConfig(className); for (ProviderConfig config : configs) { @@ -357,7 +357,7 @@ */ @Deprecated public List<Service> getServices(String type, List<String> algorithms) { - List<ServiceId> ids = new ArrayList<>(); + List<ServiceId> ids = new ArrayList<ServiceId>(); for (String alg : algorithms) { ids.add(new ServiceId(type, alg)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/jca/Providers.java openjdk-boot/jdk/src/share/classes/sun/security/jca/Providers.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/jca/Providers.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/jca/Providers.java 2017-04-26 16:05:48.619251568 +0100 @@ -37,7 +37,7 @@ public class Providers { private static final ThreadLocal<ProviderList> threadLists = - new InheritableThreadLocal<>(); + new InheritableThreadLocal<ProviderList>(); // number of threads currently using thread-local provider lists // tracked to allow an optimization if == 0 diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/jgss/krb5/Krb5Util.java openjdk-boot/jdk/src/share/classes/sun/security/jgss/krb5/Krb5Util.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/jgss/krb5/Krb5Util.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/jgss/krb5/Krb5Util.java 2017-04-26 16:05:48.619251568 +0100 @@ -251,7 +251,7 @@ } public KerberosKey[] getKKeys() { - List<KerberosKey> keys = new ArrayList<>(); + List<KerberosKey> keys = new ArrayList<KerberosKey>(); for (KerberosKey k: kk) { keys.add(k); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/Config.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/Config.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/Config.java 2017-04-26 15:02:11.524826459 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/Config.java 2017-04-26 16:05:48.619251568 +0100 @@ -610,7 +610,7 @@ } }))); String Line; - Vector<String> v = new Vector<>(); + Vector<String> v = new Vector<String>(); String previous = null; while ((Line = br.readLine()) != null) { // ignore comments and blank line in the configuration file. @@ -671,7 +671,7 @@ throw new KrbException("I/O error while reading" + " configuration file."); } - Hashtable<String,Object> table = new Hashtable<>(); + Hashtable<String,Object> table = new Hashtable<String,Object>(); for (int i = 0; i < v.size(); i++) { String line = v.elementAt(i).trim(); if (line.equalsIgnoreCase("[realms]")) { @@ -680,7 +680,7 @@ if ((count == v.size()) || (v.elementAt(count).startsWith("["))) { Hashtable<String,Hashtable<String,Vector<String>>> temp = - new Hashtable<>(); + new Hashtable<String,Hashtable<String,Vector<String>>>(); temp = parseRealmField(v, i + 1, count); table.put("realms", temp); i = count - 1; @@ -693,7 +693,7 @@ if ((count == v.size()) || (v.elementAt(count).startsWith("["))) { Hashtable<String,Hashtable<String,Vector<String>>> temp = - new Hashtable<>(); + new Hashtable<String,Hashtable<String,Vector<String>>>(); temp = parseRealmField(v, i + 1, count); table.put("capaths", temp); i = count - 1; @@ -845,7 +845,7 @@ * Parses key-value pairs under a stanza name. */ private Hashtable<String,String> parseField(Vector<String> v, int start, int end) { - Hashtable<String,String> table = new Hashtable<>(); + Hashtable<String,String> table = new Hashtable<String,String>(); String line; for (int i = start; i < end; i++) { line = v.elementAt(i); @@ -867,7 +867,7 @@ * information for the realm given within a pair of braces. */ private Hashtable<String,Hashtable<String,Vector<String>>> parseRealmField(Vector<String> v, int start, int end) { - Hashtable<String,Hashtable<String,Vector<String>>> table = new Hashtable<>(); + Hashtable<String,Hashtable<String,Vector<String>>> table = new Hashtable<String,Hashtable<String,Vector<String>>>(); String line; for (int i = start; i < end; i++) { line = v.elementAt(i).trim(); @@ -907,9 +907,9 @@ * Parses key-value pairs within each braces under [realms]. */ private Hashtable<String,Vector<String>> parseRealmFieldEx(Vector<String> v, int start, int end) { - Hashtable<String,Vector<String>> table = new Hashtable<>(); - Vector<String> keyVector = new Vector<>(); - Vector<String> nameVector = new Vector<>(); + Hashtable<String,Vector<String>> table = new Hashtable<String,Vector<String>>(); + Vector<String> keyVector = new Vector<String>(); + Vector<String> nameVector = new Vector<String>(); String line = ""; String key; for (int i = start; i < end; i++) { @@ -1016,7 +1016,7 @@ } st = new StringTokenizer(default_enctypes, delim); int len = st.countTokens(); - ArrayList<Integer> ls = new ArrayList<>(len); + ArrayList<Integer> ls = new ArrayList<Integer>(len); int type; for (int i = 0; i < len; i++) { type = getType(st.nextToken()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/Authenticator.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/Authenticator.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/Authenticator.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/Authenticator.java 2017-04-26 16:05:48.619251568 +0100 @@ -173,7 +173,7 @@ * @exception IOException if an I/O error occurs while reading encoded data. */ public byte[] asn1Encode() throws Asn1Exception, IOException { - Vector<DerValue> v = new Vector<>(); + Vector<DerValue> v = new Vector<DerValue>(); DerOutputStream temp = new DerOutputStream(); temp.putInteger(BigInteger.valueOf(authenticator_vno)); v.addElement(new DerValue(DerValue.createTag(DerValue.TAG_CONTEXT, true, (byte) 0x00), temp.toByteArray())); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/AuthorizationData.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/AuthorizationData.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/AuthorizationData.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/AuthorizationData.java 2017-04-26 16:05:48.619251568 +0100 @@ -99,7 +99,7 @@ * @exception IOException if an I/O error occurs while reading encoded data. */ public AuthorizationData(DerValue der) throws Asn1Exception, IOException { - Vector<AuthorizationDataEntry> v = new Vector<>(); + Vector<AuthorizationDataEntry> v = new Vector<AuthorizationDataEntry>(); if (der.getTag() != DerValue.tag_Sequence) { throw new Asn1Exception(Krb5.ASN1_BAD_ID); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java 2017-04-26 15:02:12.596809236 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java 2017-04-26 16:05:48.619251568 +0100 @@ -569,7 +569,7 @@ private static String exec(String c) { StringTokenizer st = new StringTokenizer(c); - Vector<String> v = new Vector<>(); + Vector<String> v = new Vector<String>(); while (st.hasMoreTokens()) { v.addElement(st.nextToken()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/crypto/EType.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/crypto/EType.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/crypto/EType.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/crypto/EType.java 2017-04-26 16:05:48.619251568 +0100 @@ -257,7 +257,7 @@ + configName); } - List<Integer> list = new ArrayList<>(answer.length); + List<Integer> list = new ArrayList<Integer>(answer.length); for (int i = 0; i < answer.length; i++) { if (EncryptionKey.findKey(answer[i], keys) != null) { list.add(answer[i]); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/EncAPRepPart.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/EncAPRepPart.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/EncAPRepPart.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/EncAPRepPart.java 2017-04-26 16:05:48.619251568 +0100 @@ -133,7 +133,7 @@ * @exception IOException if an I/O error occurs while reading encoded data. */ public byte[] asn1Encode() throws Asn1Exception, IOException { - Vector<DerValue> v = new Vector<>(); + Vector<DerValue> v = new Vector<DerValue>(); DerOutputStream temp = new DerOutputStream(); v.addElement(new DerValue(DerValue.createTag(DerValue.TAG_CONTEXT, true, (byte) 0x00), ctime.asn1Encode())); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/HostAddresses.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/HostAddresses.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/HostAddresses.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/HostAddresses.java 2017-04-26 16:05:48.619251568 +0100 @@ -179,7 +179,7 @@ */ public HostAddresses(DerValue encoding) throws Asn1Exception, IOException { - Vector<HostAddress> tempAddresses = new Vector<>(); + Vector<HostAddress> tempAddresses = new Vector<HostAddress>(); DerValue der = null; while (encoding.getData().available() > 0) { der = encoding.getData().getDerValue(); @@ -265,7 +265,7 @@ if (addresses == null || addresses.length == 0) return null; - ArrayList<InetAddress> ipAddrs = new ArrayList<>(addresses.length); + ArrayList<InetAddress> ipAddrs = new ArrayList<InetAddress>(addresses.length); for (int i = 0; i < addresses.length; i++) { try { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KDCReqBody.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KDCReqBody.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KDCReqBody.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KDCReqBody.java 2017-04-26 16:05:48.619251568 +0100 @@ -165,7 +165,7 @@ throw new Asn1Exception(Krb5.ASN1_BAD_ID); } der = encoding.getData().getDerValue(); - Vector<Integer> v = new Vector<>(); + Vector<Integer> v = new Vector<Integer>(); if ((der.getTag() & (byte)0x1F) == (byte)0x08) { subDer = der.getData().getDerValue(); @@ -190,7 +190,7 @@ encAuthorizationData = EncryptedData.parse(encoding.getData(), (byte)0x0A, true); } if (encoding.getData().available() > 0) { - Vector<Ticket> tempTickets = new Vector<>(); + Vector<Ticket> tempTickets = new Vector<Ticket>(); der = encoding.getData().getDerValue(); if ((der.getTag() & (byte)0x1F) == (byte)0x0B) { subDer = der.getData().getDerValue(); @@ -223,7 +223,7 @@ * */ public byte[] asn1Encode(int msgType) throws Asn1Exception, IOException { - Vector<DerValue> v = new Vector<>(); + Vector<DerValue> v = new Vector<DerValue>(); v.addElement(new DerValue(DerValue.createTag(DerValue.TAG_CONTEXT, true, (byte)0x00), kdcOptions.asn1Encode())); if (msgType == Krb5.KRB_AS_REQ) { if (cname != null) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KDCReq.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KDCReq.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KDCReq.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KDCReq.java 2017-04-26 16:05:48.619251568 +0100 @@ -150,7 +150,7 @@ if (subsubDer.getTag() != DerValue.tag_SequenceOf) { throw new Asn1Exception(Krb5.ASN1_BAD_ID); } - Vector<PAData> v = new Vector<>(); + Vector<PAData> v = new Vector<PAData>(); while (subsubDer.getData().available() > 0) { v.addElement(new PAData(subsubDer.getData().getDerValue())); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KrbCredInfo.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KrbCredInfo.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KrbCredInfo.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KrbCredInfo.java 2017-04-26 16:05:48.619251568 +0100 @@ -150,7 +150,7 @@ * @exception IOException if an I/O error occurs while reading encoded data. */ public byte[] asn1Encode() throws Asn1Exception, IOException { - Vector<DerValue> v = new Vector<>(); + Vector<DerValue> v = new Vector<DerValue>(); v.addElement(new DerValue(DerValue.createTag(DerValue.TAG_CONTEXT, true, (byte)0x00), key.asn1Encode())); if (pname != null) { v.addElement(new DerValue(DerValue.createTag(DerValue.TAG_CONTEXT, true, (byte)0x01), pname.getRealm().asn1Encode())); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KRBCred.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KRBCred.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KRBCred.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KRBCred.java 2017-04-26 16:05:48.619251568 +0100 @@ -134,7 +134,7 @@ if (subsubDer.getTag() != DerValue.tag_SequenceOf) { throw new Asn1Exception(Krb5.ASN1_BAD_ID); } - Vector<Ticket> v = new Vector<>(); + Vector<Ticket> v = new Vector<Ticket>(); while (subsubDer.getData().available() > 0) { v.addElement(new Ticket(subsubDer.getData().getDerValue())); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java 2017-04-26 16:05:48.619251568 +0100 @@ -249,7 +249,7 @@ private void parsePAData(byte[] data) throws IOException, Asn1Exception { DerValue derPA = new DerValue(data); - List<PAData> paList = new ArrayList<>(); + List<PAData> paList = new ArrayList<PAData>(); while (derPA.data.available() > 0) { // read the PA-DATA DerValue tmp = derPA.data.getDerValue(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java 2017-04-26 15:02:12.596809236 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java 2017-04-26 16:05:48.619251568 +0100 @@ -67,7 +67,7 @@ // Attention: Currently there is no way to remove a keytab from this map, // this might lead to a memory leak. - private static Map<String,KeyTab> map = new HashMap<>(); + private static Map<String,KeyTab> map = new HashMap<String,KeyTab>(); // KeyTab file does not exist. Note: a missing keytab is still valid private boolean isMissing = false; @@ -79,7 +79,7 @@ private long lastModified; private int kt_vno = KRB5_KT_VNO; - private Vector<KeyTabEntry> entries = new Vector<>(); + private Vector<KeyTabEntry> entries = new Vector<KeyTabEntry>(); /** * Constructs a KeyTab object. @@ -282,7 +282,7 @@ KeyTabEntry entry; EncryptionKey key; int size = entries.size(); - ArrayList<EncryptionKey> keys = new ArrayList<>(size); + ArrayList<EncryptionKey> keys = new ArrayList<EncryptionKey>(size); for (int i = size-1; i >= 0; i--) { entry = entries.elementAt(i); if (entry.service.match(service)) { @@ -484,7 +484,7 @@ int count = 0; // Remember the highest KVNO for each etype. Used for kvno == -2 - Map<Integer,Integer> highest = new HashMap<>(); + Map<Integer,Integer> highest = new HashMap<Integer, Integer>(); for (int i = entries.size()-1; i >= 0; i--) { KeyTabEntry e = entries.get(i); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/LastReq.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/LastReq.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/internal/LastReq.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/internal/LastReq.java 2017-04-26 16:05:48.619251568 +0100 @@ -77,7 +77,7 @@ */ public LastReq(DerValue encoding) throws Asn1Exception, IOException { - Vector<LastReqEntry> v= new Vector<>(); + Vector<LastReqEntry> v= new Vector<LastReqEntry>(); if (encoding.getTag() != DerValue.tag_Sequence) { throw new Asn1Exception(Krb5.ASN1_BAD_ID); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/KdcComm.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/KdcComm.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/KdcComm.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/KdcComm.java 2017-04-26 16:05:48.619251568 +0100 @@ -466,7 +466,7 @@ */ static class KdcAccessibility { // Known bad KDCs - private static Set<String> bads = new HashSet<>(); + private static Set<String> bads = new HashSet<String>(); private static synchronized void addBad(String kdc) { if (DEBUG) { @@ -496,9 +496,9 @@ // Returns a preferred KDC list by putting the bad ones at the end private static synchronized String[] list(String kdcList) { StringTokenizer st = new StringTokenizer(kdcList); - List<String> list = new ArrayList<>(); + List<String> list = new ArrayList<String>(); if (badPolicy == BpType.TRY_LAST) { - List<String> badkdcs = new ArrayList<>(); + List<String> badkdcs = new ArrayList<String>(); while (st.hasMoreTokens()) { String t = st.nextToken(); if (bads.contains(t)) badkdcs.add(t); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/KrbServiceLocator.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/KrbServiceLocator.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/KrbServiceLocator.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/KrbServiceLocator.java 2017-04-26 16:05:48.619251568 +0100 @@ -85,7 +85,7 @@ // the initial context constructor. This avoids having the initial // context constructor call itself (when processing the URL // argument in the getAttributes call). - final Context ctx = NamingManager.getURLContext("dns", new Hashtable<>(0)); + final Context ctx = NamingManager.getURLContext("dns", new Hashtable<Object,Object>(0)); if (!(ctx instanceof DirContext)) { return null; // cannot create a DNS context } @@ -158,7 +158,7 @@ // the initial context constructor. This avoids having the initial // context constructor call itself (when processing the URL // argument in the getAttributes call). - final Context ctx = NamingManager.getURLContext("dns", new Hashtable<>(0)); + final Context ctx = NamingManager.getURLContext("dns", new Hashtable<Object,Object>(0)); if (!(ctx instanceof DirContext)) { return null; // cannot create a DNS context } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/PrincipalName.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/PrincipalName.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/PrincipalName.java 2017-04-26 15:02:12.544810070 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/PrincipalName.java 2017-04-26 16:05:48.619251568 +0100 @@ -265,7 +265,7 @@ if (subDer.getTag() != DerValue.tag_SequenceOf) { throw new Asn1Exception(Krb5.ASN1_BAD_ID); } - Vector<String> v = new Vector<>(); + Vector<String> v = new Vector<String>(); DerValue subSubDer; while(subDer.getData().available() > 0) { subSubDer = subDer.getData().getDerValue(); @@ -321,7 +321,7 @@ // Code repetition, realm parsed again by class Realm private static String[] parseName(String name) { - Vector<String> tempStrings = new Vector<>(); + Vector<String> tempStrings = new Vector<String>(); String temp = name; int i = 0; int componentStart = 0; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/Realm.java openjdk-boot/jdk/src/share/classes/sun/security/krb5/Realm.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/krb5/Realm.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/krb5/Realm.java 2017-04-26 16:05:48.623251503 +0100 @@ -375,7 +375,7 @@ return null; } - LinkedList<String> path = new LinkedList<>(); + LinkedList<String> path = new LinkedList<String>(); String head = sRealm; while (true) { @@ -437,7 +437,7 @@ // DEVEL.EXAMPLE.COM 3 2 // PROD.EXAMPLE.ORG 3 2 - LinkedList<String> path = new LinkedList<>(); + LinkedList<String> path = new LinkedList<String>(); // Un-common ones for client side for (int i=0; i<=cPos; i++) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java openjdk-boot/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/pkcs12/PKCS12KeyStore.java 2017-04-26 16:05:48.623251503 +0100 @@ -894,7 +894,7 @@ // Check for loops in the chain. If there are repeated certs, // the Set of certs in the chain will contain fewer certs than // the chain - Set<Certificate> set = new HashSet<>(Arrays.asList(certChain)); + Set<Certificate> set = new HashSet<Certificate>(Arrays.asList(certChain)); return set.size() == certChain.length; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/CertStoreHelper.java openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/CertStoreHelper.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/CertStoreHelper.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/CertStoreHelper.java 2017-04-26 16:05:48.623251503 +0100 @@ -50,7 +50,7 @@ public abstract class CertStoreHelper { private static final int NUM_TYPES = 2; - private final static Map<String,String> classMap = new HashMap<>(NUM_TYPES); + private final static Map<String,String> classMap = new HashMap<String,String>(NUM_TYPES); static { classMap.put( "LDAP", diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/DistributionPointFetcher.java openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/DistributionPointFetcher.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/DistributionPointFetcher.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/DistributionPointFetcher.java 2017-04-26 16:05:48.623251503 +0100 @@ -586,7 +586,7 @@ // Except the performance improvement, another benefit is to break // the dead loop while looking for the issuer back and forth // between the delegated self-issued certificate and its issuer. - Set<TrustAnchor> newTrustAnchors = new HashSet<>(trustAnchors); + Set<TrustAnchor> newTrustAnchors = new HashSet<TrustAnchor>(trustAnchors); if (prevKey != null) { // Add the previous certificate as a trust anchor. diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/ssl/SSLServerCertStore.java openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/ssl/SSLServerCertStore.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/ssl/SSLServerCertStore.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/ssl/SSLServerCertStore.java 2017-04-26 16:05:48.623251503 +0100 @@ -138,7 +138,7 @@ if (selector == null) { return certs; } - List<X509Certificate> matchedCerts = new ArrayList<>(certs.size()); + List<X509Certificate> matchedCerts = new ArrayList<X509Certificate>(certs.size()); for (X509Certificate cert : certs) { if (selector.match(cert)) { matchedCerts.add(cert); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/URICertStore.java openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/URICertStore.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/certpath/URICertStore.java 2017-04-26 15:02:12.600809170 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/certpath/URICertStore.java 2017-04-26 16:05:48.623251503 +0100 @@ -339,7 +339,7 @@ if (selector == null) { return certs; } - List<X509Certificate> matchedCerts = new ArrayList<>(certs.size()); + List<X509Certificate> matchedCerts = new ArrayList<X509Certificate>(certs.size()); for (X509Certificate cert : certs) { if (selector.match(cert)) { matchedCerts.add(cert); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java openjdk-boot/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/JavaKeyStore.java 2017-04-26 16:05:48.623251503 +0100 @@ -683,7 +683,7 @@ // Read the certificate chain int numOfCerts = dis.readInt(); if (numOfCerts > 0) { - List<Certificate> certs = new ArrayList<>( + List<Certificate> certs = new ArrayList<Certificate>( numOfCerts > 10 ? 10 : numOfCerts); for (int j = 0; j < numOfCerts; j++) { if (xVersion == 2) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/PolicyFile.java openjdk-boot/jdk/src/share/classes/sun/security/provider/PolicyFile.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/PolicyFile.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/PolicyFile.java 2017-04-26 16:05:48.623251503 +0100 @@ -292,7 +292,7 @@ private static final int DEFAULT_CACHE_SIZE = 1; // contains the policy grant entries, PD cache, and alias mapping - private AtomicReference<PolicyInfo> policyInfo = new AtomicReference<>(); + private AtomicReference<PolicyInfo> policyInfo = new AtomicReference<PolicyInfo>(); private boolean constructed = false; private boolean expandProperties = true; @@ -1326,7 +1326,7 @@ List<PolicyParser.PrincipalEntry> entryPs = entry.getPrincipals(); if (debug != null) { - ArrayList<PolicyParser.PrincipalEntry> accPs = new ArrayList<>(); + ArrayList<PolicyParser.PrincipalEntry> accPs = new ArrayList<PolicyParser.PrincipalEntry>(); if (principals != null) { for (int i = 0; i < principals.length; i++) { accPs.add(new PolicyParser.PrincipalEntry @@ -1407,7 +1407,7 @@ // check if the PrincipalComparator // implies the current thread's principals - Set<Principal> pSet = new HashSet<>(principals.length); + Set<Principal> pSet = new HashSet<Principal>(principals.length); for (int j = 0; j < principals.length; j++) { pSet.add(principals[j]); } @@ -1690,7 +1690,7 @@ // build an info array for every principal // in the current domain which has a principal class // that is equal to policy entry principal class name - List<Principal> plist = new ArrayList<>(); + List<Principal> plist = new ArrayList<Principal>(); for (int i = 0; i < pdp.length; i++) { if(pe.principalClass.equals(pdp[i].getClass().getName())) plist.add(pdp[i]); @@ -1760,7 +1760,7 @@ // Done return certs; - ArrayList<Certificate> userCertList = new ArrayList<>(); + ArrayList<Certificate> userCertList = new ArrayList<Certificate>(); i = 0; while (i < certs.length) { userCertList.add(certs[i]); @@ -2239,7 +2239,7 @@ if (this.certs == null) { // extract the signer certs ArrayList<Certificate> signerCerts = - new ArrayList<>(); + new ArrayList<Certificate>(); i = 0; while (i < certs.length) { signerCerts.add(certs[i]); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/Sun.java openjdk-boot/jdk/src/share/classes/sun/security/provider/Sun.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/Sun.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/Sun.java 2017-04-26 16:05:48.623251503 +0100 @@ -55,7 +55,7 @@ SunEntries.putEntries(this); } else { // use LinkedHashMap to preserve the order of the PRNGs - Map<Object, Object> map = new LinkedHashMap<>(); + Map<Object, Object> map = new LinkedHashMap<Object, Object>(); SunEntries.putEntries(map); AccessController.doPrivileged(new PutAllAction(this, map)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/VerificationProvider.java openjdk-boot/jdk/src/share/classes/sun/security/provider/VerificationProvider.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/VerificationProvider.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/VerificationProvider.java 2017-04-26 16:05:48.623251503 +0100 @@ -76,7 +76,7 @@ SunRsaSignEntries.putEntries(this); } else { // use LinkedHashMap to preserve the order of the PRNGs - Map<Object, Object> map = new LinkedHashMap<>(); + Map<Object, Object> map = new LinkedHashMap<Object, Object>(); SunEntries.putEntries(map); SunRsaSignEntries.putEntries(map); AccessController.doPrivileged(new PutAllAction(this, map)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/X509Factory.java openjdk-boot/jdk/src/share/classes/sun/security/provider/X509Factory.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/provider/X509Factory.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/provider/X509Factory.java 2017-04-26 16:05:48.623251503 +0100 @@ -431,7 +431,7 @@ int peekByte; byte[] data; PushbackInputStream pbis = new PushbackInputStream(is); - Collection<X509CertImpl> coll = new ArrayList<>(); + Collection<X509CertImpl> coll = new ArrayList<X509CertImpl>(); // Test the InputStream for end-of-stream. If the stream's // initial state is already at end-of-stream then return @@ -439,7 +439,7 @@ // stream and let readOneBlock look for the first certificate. peekByte = pbis.read(); if (peekByte == -1) { - return new ArrayList<>(0); + return new ArrayList<Certificate>(0); } else { pbis.unread(peekByte); data = readOneBlock(pbis); @@ -459,7 +459,7 @@ return Arrays.asList(certs); } else { // no certificates provided - return new ArrayList<>(0); + return new ArrayList<Certificate>(0); } } catch (ParsingException e) { while (data != null) { @@ -482,7 +482,7 @@ int peekByte; byte[] data; PushbackInputStream pbis = new PushbackInputStream(is); - Collection<X509CRLImpl> coll = new ArrayList<>(); + Collection<X509CRLImpl> coll = new ArrayList<X509CRLImpl>(); // Test the InputStream for end-of-stream. If the stream's // initial state is already at end-of-stream then return @@ -490,7 +490,7 @@ // stream and let readOneBlock look for the first CRL. peekByte = pbis.read(); if (peekByte == -1) { - return new ArrayList<>(0); + return new ArrayList<CRL>(0); } else { pbis.unread(peekByte); data = readOneBlock(pbis); @@ -510,7 +510,7 @@ return Arrays.asList(crls); } else { // no crls provided - return new ArrayList<>(0); + return new ArrayList<java.security.cert.CRL>(0); } } catch (ParsingException e) { while (data != null) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/rsa/RSACore.java openjdk-boot/jdk/src/share/classes/sun/security/rsa/RSACore.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/rsa/RSACore.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/rsa/RSACore.java 2017-04-26 16:05:48.623251503 +0100 @@ -57,7 +57,7 @@ // use a weak hashmap so that cached values are automatically cleared // when the modulus is GC'ed private final static Map<BigInteger, BlindingParameters> - blindingCache = new WeakHashMap<>(); + blindingCache = new WeakHashMap<BigInteger, BlindingParameters>(); private RSACore() { // empty diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/rsa/SunRsaSign.java openjdk-boot/jdk/src/share/classes/sun/security/rsa/SunRsaSign.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/rsa/SunRsaSign.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/rsa/SunRsaSign.java 2017-04-26 16:05:48.623251503 +0100 @@ -52,7 +52,7 @@ SunRsaSignEntries.putEntries(this); } else { // use LinkedHashMap to preserve the order of the PRNGs - Map<Object, Object> map = new HashMap<>(); + Map<Object, Object> map = new HashMap<Object, Object>(); SunRsaSignEntries.putEntries(map); AccessController.doPrivileged(new PutAllAction(this, map)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/CipherSuite.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/CipherSuite.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/CipherSuite.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/CipherSuite.java 2017-04-26 16:05:48.623251503 +0100 @@ -399,7 +399,7 @@ // Map BulkCipher -> Boolean(available) private final static Map<BulkCipher,Boolean> availableCache = - new HashMap<>(8); + new HashMap<BulkCipher,Boolean>(8); // descriptive name including key size, e.g. AES/128 final String description; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ClientHandshaker.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/ClientHandshaker.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ClientHandshaker.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/ClientHandshaker.java 2017-04-26 16:05:48.623251503 +0100 @@ -755,7 +755,7 @@ if (certRequest != null) { X509ExtendedKeyManager km = sslContext.getX509KeyManager(); - ArrayList<String> keytypesTmp = new ArrayList<>(4); + ArrayList<String> keytypesTmp = new ArrayList<String>(4); for (int i = 0; i < certRequest.types.length; i++) { String typeName; @@ -1287,7 +1287,7 @@ "Can't reuse existing SSL client session"); } - Collection<CipherSuite> cipherList = new ArrayList<>(2); + Collection<CipherSuite> cipherList = new ArrayList<CipherSuite>(2); cipherList.add(sessionSuite); if (!secureRenegotiation && cipherSuites.contains(CipherSuite.C_SCSV)) { @@ -1305,7 +1305,7 @@ // exclude SCSV for secure renegotiation if (secureRenegotiation && cipherSuites.contains(CipherSuite.C_SCSV)) { Collection<CipherSuite> cipherList = - new ArrayList<>(cipherSuites.size() - 1); + new ArrayList<CipherSuite>(cipherSuites.size() - 1); for (CipherSuite suite : cipherSuites.collection()) { if (suite != CipherSuite.C_SCSV) { cipherList.add(suite); @@ -1575,7 +1575,7 @@ if ((subAltDnsName != null) && !subAltDnsName.isEmpty()) { if (subAltDnsNames == null) { subAltDnsNames = - new HashSet<>(subjectAltNames.size()); + new HashSet<String>(subjectAltNames.size()); } subAltDnsNames.add(subAltDnsName); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/DHCrypt.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/DHCrypt.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/DHCrypt.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/DHCrypt.java 2017-04-26 16:05:48.623251503 +0100 @@ -367,7 +367,7 @@ } } - Map<Integer,DHParameterSpec> defaultParams = new HashMap<>(); + Map<Integer,DHParameterSpec> defaultParams = new HashMap<Integer,DHParameterSpec>(); if (property != null && !property.isEmpty()) { Matcher syntaxMatcher = syntaxPattern.matcher(property); if (syntaxMatcher.matches()) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ExtensionType.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/ExtensionType.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ExtensionType.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/ExtensionType.java 2017-04-26 16:05:48.623251503 +0100 @@ -42,7 +42,7 @@ return name; } - static List<ExtensionType> knownExtensions = new ArrayList<>(9); + static List<ExtensionType> knownExtensions = new ArrayList<ExtensionType>(9); static ExtensionType get(int id) { for (ExtensionType ext : knownExtensions) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/HandshakeMessage.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/HandshakeMessage.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/HandshakeMessage.java 2017-04-26 15:02:11.524826459 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/HandshakeMessage.java 2017-04-26 16:05:48.623251503 +0100 @@ -255,7 +255,7 @@ // add server_name extension void addServerNameIndicationExtension(String hostname) { // We would have checked that the hostname ia a FQDN. - ArrayList<String> hostnames = new ArrayList<>(1); + ArrayList<String> hostnames = new ArrayList<String>(1); hostnames.add(hostname); try { @@ -431,7 +431,7 @@ CertificateMsg(HandshakeInStream input) throws IOException { int chainLen = input.getInt24(); - List<Certificate> v = new ArrayList<>(4); + List<Certificate> v = new ArrayList<Certificate>(4); CertificateFactory cf = null; while (chainLen > 0) { @@ -1341,7 +1341,7 @@ // read the certificate_authorities int len = input.getInt16(); - ArrayList<DistinguishedName> v = new ArrayList<>(); + ArrayList<DistinguishedName> v = new ArrayList<DistinguishedName>(); while (len >= 3) { DistinguishedName dn = new DistinguishedName(input); v.add(dn); @@ -1732,7 +1732,7 @@ // Note that this will prevent the Spi classes from being GC'd. We assume // that is not a problem. private final static Map<Class<?>,Object> methodCache = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<Class<?>,Object>(); private static void digestKey(MessageDigest md, SecretKey key) { try { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/Handshaker.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/Handshaker.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/Handshaker.java 2017-04-26 15:02:12.548810007 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/Handshaker.java 2017-04-26 16:05:48.623251503 +0100 @@ -592,7 +592,7 @@ activeProtocols = getActiveProtocols(); } - ArrayList<CipherSuite> suites = new ArrayList<>(); + ArrayList<CipherSuite> suites = new ArrayList<CipherSuite>(); if (!(activeProtocols.collection().isEmpty()) && activeProtocols.min.v != ProtocolVersion.NONE.v) { boolean checkedCurves = false; @@ -668,7 +668,7 @@ boolean enabledSSL20Hello = false; boolean checkedCurves = false; boolean hasCurves = false; - ArrayList<ProtocolVersion> protocols = new ArrayList<>(4); + ArrayList<ProtocolVersion> protocols = new ArrayList<ProtocolVersion>(4); EnumSet<CryptoPrimitive> cryptoPrimitives = EnumSet.<CryptoPrimitive>of(CryptoPrimitive.KEY_AGREEMENT); for (ProtocolVersion protocol : enabledProtocols.collection()) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ProtocolList.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/ProtocolList.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ProtocolList.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/ProtocolList.java 2017-04-26 16:05:48.623251503 +0100 @@ -79,7 +79,7 @@ throw new IllegalArgumentException("Protocols may not be null"); } - ArrayList<ProtocolVersion> versions = new ArrayList<>(3); + ArrayList<ProtocolVersion> versions = new ArrayList<ProtocolVersion>(3); for (int i = 0; i < names.length; i++ ) { ProtocolVersion version = ProtocolVersion.valueOf(names[i]); if (versions.contains(version) == false) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ProtocolVersion.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/ProtocolVersion.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/ProtocolVersion.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/ProtocolVersion.java 2017-04-26 16:05:48.623251503 +0100 @@ -106,7 +106,7 @@ // Initialize the available protocols. static { - Set<ProtocolVersion> protocols = new HashSet<>(5); + Set<ProtocolVersion> protocols = new HashSet<ProtocolVersion>(5); ProtocolVersion[] pvs = new ProtocolVersion[] { SSL20Hello, SSL30, TLS10, TLS11, TLS12}; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java 2017-04-26 16:05:48.623251503 +0100 @@ -156,7 +156,7 @@ static Collection<SignatureAndHashAlgorithm> getSupportedAlgorithms(AlgorithmConstraints constraints) { - Collection<SignatureAndHashAlgorithm> supported = new ArrayList<>(); + Collection<SignatureAndHashAlgorithm> supported = new ArrayList<SignatureAndHashAlgorithm>(); synchronized (priorityMap) { for (SignatureAndHashAlgorithm sigAlg : priorityMap.values()) { if (sigAlg.priority <= SUPPORTED_ALG_PRIORITY_MAX_NUM && @@ -174,7 +174,8 @@ static Collection<SignatureAndHashAlgorithm> getSupportedAlgorithms( AlgorithmConstraints constraints, Collection<SignatureAndHashAlgorithm> algorithms ) { - Collection<SignatureAndHashAlgorithm> supported = new ArrayList<>(); + Collection<SignatureAndHashAlgorithm> supported = + new ArrayList<SignatureAndHashAlgorithm>(); for (SignatureAndHashAlgorithm sigAlg : algorithms) { if (sigAlg.priority <= SUPPORTED_ALG_PRIORITY_MAX_NUM && constraints.permits(SIGNATURE_PRIMITIVE_SET, @@ -188,7 +189,7 @@ static String[] getAlgorithmNames( Collection<SignatureAndHashAlgorithm> algorithms) { - ArrayList<String> algorithmNames = new ArrayList<>(); + ArrayList<String> algorithmNames = new ArrayList<String>(); if (algorithms != null) { for (SignatureAndHashAlgorithm sigAlg : algorithms) { algorithmNames.add(sigAlg.algorithm); @@ -201,7 +202,7 @@ static Set<String> getHashAlgorithmNames( Collection<SignatureAndHashAlgorithm> algorithms) { - Set<String> algorithmNames = new HashSet<>(); + Set<String> algorithmNames = new HashSet<String>(); if (algorithms != null) { for (SignatureAndHashAlgorithm sigAlg : algorithms) { if (sigAlg.hash.value > 0) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLAlgorithmDecomposer.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLAlgorithmDecomposer.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLAlgorithmDecomposer.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLAlgorithmDecomposer.java 2017-04-26 16:05:48.623251503 +0100 @@ -48,7 +48,7 @@ } private Set<String> decomposes(CipherSuite.KeyExchange keyExchange) { - Set<String> components = new HashSet<>(); + Set<String> components = new HashSet<String>(); switch (keyExchange) { case K_NULL: if (!onlyX509) { @@ -143,7 +143,7 @@ } private Set<String> decomposes(CipherSuite.BulkCipher bulkCipher) { - Set<String> components = new HashSet<>(); + Set<String> components = new HashSet<String>(); if (bulkCipher.transformation != null) { components.addAll(super.decompose(bulkCipher.transformation)); @@ -175,7 +175,7 @@ private Set<String> decomposes(CipherSuite.MacAlg macAlg, BulkCipher cipher) { - Set<String> components = new HashSet<>(); + Set<String> components = new HashSet<String>(); if (macAlg == M_NULL) { components.add("M_NULL"); @@ -201,7 +201,7 @@ private Set<String> decompose(KeyExchange keyExchange, BulkCipher cipher, MacAlg macAlg) { - Set<String> components = new HashSet<>(); + Set<String> components = new HashSet<String>(); if (keyExchange != null) { components.addAll(decomposes(keyExchange)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java 2017-04-26 16:05:48.627251438 +0100 @@ -328,7 +328,7 @@ Collection<CipherSuite> allowedCipherSuites = CipherSuite.allowedCipherSuites(); - TreeSet<CipherSuite> suites = new TreeSet<>(); + TreeSet<CipherSuite> suites = new TreeSet<CipherSuite>(); if (!(protocols.collection().isEmpty()) && protocols.min.v != ProtocolVersion.NONE.v) { for (CipherSuite suite : allowedCipherSuites) { @@ -386,7 +386,7 @@ List<String> availableProtocols = Collections.<String>emptyList(); if (protocolCandidates != null && protocolCandidates.length != 0) { - availableProtocols = new ArrayList<>(protocolCandidates.length); + availableProtocols = new ArrayList<String>(protocolCandidates.length); for (ProtocolVersion p : protocolCandidates) { if (ProtocolVersion.availableProtocols.contains(p)) { availableProtocols.add(p.name); @@ -769,7 +769,7 @@ return defaultKeyManagers; } - final Map<String,String> props = new HashMap<>(); + final Map<String,String> props = new HashMap<String,String>(); AccessController.doPrivileged( new PrivilegedExceptionAction<Object>() { public Object run() throws Exception { @@ -1015,7 +1015,7 @@ // Does the certificate chain end with a trusted certificate? int checkedLength = chain.length - 1; - Collection<X509Certificate> trustedCerts = new HashSet<>(); + Collection<X509Certificate> trustedCerts = new HashSet<X509Certificate>(); X509Certificate[] certs = tm.getAcceptedIssuers(); if ((certs != null) && (certs.length > 0)){ Collections.addAll(trustedCerts, certs); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLSessionImpl.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLSessionImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLSessionImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLSessionImpl.java 2017-04-26 16:05:48.627251438 +0100 @@ -642,7 +642,7 @@ * key and the calling security context. This is important since * sessions can be shared across different protection domains. */ - private Hashtable<SecureKey, Object> table = new Hashtable<>(); + private Hashtable<SecureKey, Object> table = new Hashtable<SecureKey, Object>(); /** * Assigns a session value. Session change events are given if @@ -710,7 +710,7 @@ */ public String[] getValueNames() { Enumeration<SecureKey> e; - Vector<Object> v = new Vector<>(); + Vector<Object> v = new Vector<Object>(); SecureKey key; Object securityCtx = SecureKey.getCurrentSecurityContext(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLSocketImpl.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLSocketImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SSLSocketImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SSLSocketImpl.java 2017-04-26 16:05:48.627251438 +0100 @@ -2561,7 +2561,7 @@ entrySet, HandshakeCompletedEvent e) { super("HandshakeCompletedNotify-Thread"); - targets = new HashSet<>(entrySet); // clone the entry set + targets = new HashSet(entrySet); // clone the entry set event = e; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java 2017-04-26 16:05:48.627251438 +0100 @@ -337,7 +337,7 @@ X500Principal[] x500Issuers = (X500Principal[])issuers; // the algorithm below does not produce duplicates, so avoid Set - List<String> aliases = new ArrayList<>(); + List<String> aliases = new ArrayList<String>(); for (Map.Entry<String,X509Credentials> entry : credentialsMap.entrySet()) { @@ -397,7 +397,7 @@ * possible. Principals that cannot be converted are ignored. */ private static X500Principal[] convertPrincipals(Principal[] principals) { - List<X500Principal> list = new ArrayList<>(principals.length); + List<X500Principal> list = new ArrayList<X500Principal>(principals.length); for (int i = 0; i < principals.length; i++) { Principal p = principals[i]; if (p instanceof X500Principal) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java 2017-04-26 15:02:09.376860972 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SupportedEllipticCurvesExtension.java 2017-04-26 16:05:48.627251438 +0100 @@ -50,12 +50,12 @@ private static final int ARBITRARY_CHAR2 = 0xff02; // speed up the searching - private static final Map<String, Integer> oidToIdMap = new HashMap<>(); - private static final Map<Integer, String> idToOidMap = new HashMap<>(); + private static final Map<String, Integer> oidToIdMap = new HashMap<String, Integer>(); + private static final Map<Integer, String> idToOidMap = new HashMap<Integer, String>(); // speed up the parameters construction private static final Map<Integer, - AlgorithmParameters> idToParams = new HashMap<>(); + AlgorithmParameters> idToParams = new HashMap<Integer, AlgorithmParameters>(); // the supported elliptic curves private static final int[] supportedCurveIds; @@ -126,7 +126,7 @@ ArrayList<Integer> idList; if (property != null && property.length() != 0) { // customized curves String[] curves = property.split(","); - idList = new ArrayList<>(curves.length); + idList = new ArrayList<Integer>(curves.length); for (String curve : curves) { curve = curve.trim(); if (!curve.isEmpty()) { @@ -150,7 +150,7 @@ 23, 24, 25 }; - idList = new ArrayList<>(ids.length); + idList = new ArrayList<Integer>(ids.length); for (int curveId : ids) { if (isAvailableCurve(curveId)) { idList.add(curveId); @@ -225,7 +225,7 @@ static SupportedEllipticCurvesExtension createExtension( AlgorithmConstraints constraints) { - ArrayList<Integer> idList = new ArrayList<>(supportedCurveIds.length); + ArrayList<Integer> idList = new ArrayList<Integer>(supportedCurveIds.length); for (int curveId : supportedCurveIds) { if (constraints.permits( EnumSet.of(CryptoPrimitive.KEY_AGREEMENT), diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SupportedEllipticPointFormatsExtension.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/SupportedEllipticPointFormatsExtension.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/SupportedEllipticPointFormatsExtension.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/SupportedEllipticPointFormatsExtension.java 2017-04-26 16:05:48.627251438 +0100 @@ -92,7 +92,7 @@ } public String toString() { - List<String> list = new ArrayList<>(); + List<String> list = new ArrayList<String>(); for (byte format : formats) { list.add(toString(format)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java 2017-04-26 16:05:48.627251438 +0100 @@ -134,7 +134,7 @@ FileInputStream fis = null; String defaultTrustStoreType; String defaultTrustStoreProvider; - final HashMap<String,String> props = new HashMap<>(); + final HashMap<String,String> props = new HashMap<String,String>(); final String sep = File.separator; KeyStore ks = null; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/X509KeyManagerImpl.java openjdk-boot/jdk/src/share/classes/sun/security/ssl/X509KeyManagerImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/ssl/X509KeyManagerImpl.java 2017-04-26 15:02:11.524826459 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/ssl/X509KeyManagerImpl.java 2017-04-26 16:05:48.627251438 +0100 @@ -309,7 +309,7 @@ (keyTypes.length == 0) || (keyTypes[0] == null)) { return null; } - List<KeyType> list = new ArrayList<>(keyTypes.length); + List<KeyType> list = new ArrayList<KeyType>(keyTypes.length); for (String keyType : keyTypes) { list.add(new KeyType(keyType)); } @@ -431,7 +431,7 @@ // make a Set out of the array private Set<Principal> getIssuerSet(Principal[] issuers) { if ((issuers != null) && (issuers.length != 0)) { - return new HashSet<>(Arrays.asList(issuers)); + return new HashSet<Principal>(Arrays.asList(issuers)); } else { return null; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/tools/jarsigner/Main.java openjdk-boot/jdk/src/share/classes/sun/security/tools/jarsigner/Main.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/tools/jarsigner/Main.java 2017-04-26 15:02:12.600809170 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/tools/jarsigner/Main.java 2017-04-26 16:05:48.627251438 +0100 @@ -134,14 +134,14 @@ boolean token = false; // token-based keystore String jarfile; // jar files to sign or verify String alias; // alias to sign jar with - List<String> ckaliases = new ArrayList<>(); // aliases in -verify + List<String> ckaliases = new ArrayList<String>(); // aliases in -verify char[] storepass; // keystore password boolean protectedPath; // protected authentication path String storetype; // keystore type String providerName; // provider name Vector<String> providers = null; // list of providers // arguments for provider constructors - HashMap<String,String> providerArgs = new HashMap<>(); + HashMap<String,String> providerArgs = new HashMap<String,String>(); char[] keypass; // private key password String sigfile; // name of .SF file String sigalg; // name of signature algorithm @@ -592,14 +592,14 @@ { boolean anySigned = false; // if there exists entry inside jar signed JarFile jf = null; - Map<String,String> digestMap = new HashMap<>(); - Map<String,PKCS7> sigMap = new HashMap<>(); - Map<String,String> sigNameMap = new HashMap<>(); - Map<String,String> unparsableSignatures = new HashMap<>(); + Map<String,String> digestMap = new HashMap<String,String>(); + Map<String,PKCS7> sigMap = new HashMap<String,PKCS7>(); + Map<String,String> sigNameMap = new HashMap<String,String>(); + Map<String,String> unparsableSignatures = new HashMap<String,String>(); try { jf = new JarFile(jarName, true); - Vector<JarEntry> entriesVec = new Vector<>(); + Vector<JarEntry> entriesVec = new Vector<JarEntry>(); byte[] buffer = new byte[8192]; Enumeration<JarEntry> entries = jf.entries(); @@ -664,7 +664,7 @@ // The map to record display info, only used when -verbose provided // key: signer info string // value: the list of files with common key - Map<String,List<String>> output = new LinkedHashMap<>(); + Map<String,List<String>> output = new LinkedHashMap<String,List<String>>(); if (man != null) { if (verbose != null) System.out.println(); @@ -1169,7 +1169,7 @@ .append(signTimeForm.format(source)).append("]").toString(); } - private Map<CodeSigner,Integer> cacheForInKS = new IdentityHashMap<>(); + private Map<CodeSigner,Integer> cacheForInKS = new IdentityHashMap<CodeSigner,Integer>(); private int inKeyStoreForOneSigner(CodeSigner signer) { if (cacheForInKS.containsKey(signer)) { @@ -1212,7 +1212,7 @@ return result; } - Hashtable<Certificate, String> storeHash = new Hashtable<>(); + Hashtable<Certificate, String> storeHash = new Hashtable<Certificate,String>(); int inKeyStore(CodeSigner[] signers) { @@ -1342,7 +1342,7 @@ * generated one. (This may invalidate existing signatures!) */ BASE64Encoder encoder = new JarBASE64Encoder(); - Vector<ZipEntry> mfFiles = new Vector<>(); + Vector<ZipEntry> mfFiles = new Vector<ZipEntry>(); boolean wasSigned = false; @@ -1711,7 +1711,7 @@ return SignatureFileVerifier.isSigningRelated(name); } - Map<CodeSigner,String> cacheForSignerInfo = new IdentityHashMap<>(); + Map<CodeSigner,String> cacheForSignerInfo = new IdentityHashMap<CodeSigner,String>(); /** * Returns a string of singer info, with a newline at the end @@ -1812,7 +1812,7 @@ certificateFactory = CertificateFactory.getInstance("X.509"); validator = CertPathValidator.getInstance("PKIX"); - Set<TrustAnchor> tas = new HashSet<>(); + Set<TrustAnchor> tas = new HashSet<TrustAnchor>(); try { KeyStore caks = KeyStoreUtil.getCacertsKeyStore(); if (caks != null) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/tools/keytool/Main.java openjdk-boot/jdk/src/share/classes/sun/security/tools/keytool/Main.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/tools/keytool/Main.java 2017-04-26 15:02:12.600809170 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/tools/keytool/Main.java 2017-04-26 16:05:48.631251373 +0100 @@ -151,11 +151,11 @@ private KeyStore caks = null; // "cacerts" keystore private char[] srcstorePass = null; private String srcstoretype = null; - private Set<char[]> passwords = new HashSet<>(); + private Set<char[]> passwords = new HashSet<char[]>(); private String startDate = null; - private List<String> ids = new ArrayList<>(); // used in GENCRL - private List<String> v3ext = new ArrayList<>(); + private List<String> ids = new ArrayList<String>(); // used in GENCRL + private List<String> v3ext = new ArrayList<String>(); enum Command { CERTREQ("Generates.a.certificate.request", @@ -2090,7 +2090,7 @@ */ public static List<CRL> readCRLsFromCert(X509Certificate cert) throws Exception { - List<CRL> crls = new ArrayList<>(); + List<CRL> crls = new ArrayList<CRL>(); CRLDistributionPointsExtension ext = X509CertImpl.toImpl(cert).getCRLDistributionPointsExtension(); if (ext == null) return crls; @@ -2258,7 +2258,7 @@ if (jarfile != null) { JarFile jf = new JarFile(jarfile, true); Enumeration<JarEntry> entries = jf.entries(); - Set<CodeSigner> ss = new HashSet<>(); + Set<CodeSigner> ss = new HashSet<CodeSigner>(); byte[] buffer = new byte[8192]; int pos = 0; while (entries.hasMoreElements()) { @@ -3302,7 +3302,7 @@ } // start building chain - Vector<Certificate> chain = new Vector<>(2); + Vector<Certificate> chain = new Vector<Certificate>(2); if (buildChain((X509Certificate)certToVerify, chain, certs)) { Certificate[] newChain = new Certificate[chain.size()]; // buildChain() returns chain with self-signed root-cert first and @@ -3801,7 +3801,7 @@ break; case 2: // EKU if(value != null) { - Vector<ObjectIdentifier> v = new Vector<>(); + Vector<ObjectIdentifier> v = new Vector<ObjectIdentifier>(); for (String s: value.split(",")) { int p = oneOf(s, "anyExtendedKeyUsage", @@ -3871,7 +3871,7 @@ } if(value != null) { List<AccessDescription> accessDescriptions = - new ArrayList<>(); + new ArrayList<AccessDescription>(); String[] ps = value.split(","); for(String item: ps) { colonpos = item.indexOf(':'); @@ -4107,7 +4107,7 @@ } public static <A,B> Pair<A,B> of(A a, B b) { - return new Pair<>(a,b); + return new Pair<A,B>(a,b); } } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/tools/policytool/PolicyTool.java openjdk-boot/jdk/src/share/classes/sun/security/tools/policytool/PolicyTool.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/tools/policytool/PolicyTool.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/tools/policytool/PolicyTool.java 2017-04-26 16:05:48.631251373 +0100 @@ -645,7 +645,7 @@ Class<?> pc = Class.forName(type, true, Thread.currentThread().getContextClassLoader()); Constructor<?> c = null; - Vector<String> objects = new Vector<>(2); + Vector<String> objects = new Vector<String>(2); if (name != null) objects.add(name); if (actions != null) objects.add(actions); switch (objects.size()) { @@ -1725,7 +1725,7 @@ new PolicyParser.GrantEntry(signedby, codebase); // get the new Principals - LinkedList<PolicyParser.PrincipalEntry> prins = new LinkedList<>(); + LinkedList<PolicyParser.PrincipalEntry> prins = new LinkedList<PolicyParser.PrincipalEntry>(); TaggedList prinList = (TaggedList)getComponent(PE_PRIN_LIST); for (int i = 0; i < prinList.getItemCount(); i++) { prins.add((PolicyParser.PrincipalEntry)prinList.getObject(i)); @@ -1733,7 +1733,7 @@ ge.principals = prins; // get the new Permissions - Vector<PolicyParser.PermissionEntry> perms = new Vector<>(); + Vector<PolicyParser.PermissionEntry> perms = new Vector<PolicyParser.PermissionEntry>(); TaggedList permList = (TaggedList)getComponent(PE_PERM_LIST); for (int i = 0; i < permList.getItemCount(); i++) { perms.addElement((PolicyParser.PermissionEntry)permList.getObject(i)); @@ -3665,7 +3665,7 @@ class TaggedList extends List { private static final long serialVersionUID = -5676238110427785853L; - private java.util.List<Object> data = new LinkedList<>(); + private java.util.List<Object> data = new LinkedList<Object>(); public TaggedList(int i, boolean b) { super(i, b); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/util/AlgorithmDecomposer.java openjdk-boot/jdk/src/share/classes/sun/security/util/AlgorithmDecomposer.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/util/AlgorithmDecomposer.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/util/AlgorithmDecomposer.java 2017-04-26 16:05:48.631251373 +0100 @@ -43,7 +43,7 @@ // algorithm/mode/padding String[] transTockens = transPattern.split(algorithm); - Set<String> elements = new HashSet<>(); + Set<String> elements = new HashSet<String>(); for (String transTocken : transTockens) { if (transTocken == null || transTocken.length() == 0) { continue; @@ -78,7 +78,7 @@ */ public Set<String> decompose(String algorithm) { if (algorithm == null || algorithm.length() == 0) { - return new HashSet<>(); + return new HashSet<String>(); } Set<String> elements = decomposeImpl(algorithm); @@ -148,7 +148,7 @@ */ public static Set<String> decomposeOneHash(String algorithm) { if (algorithm == null || algorithm.length() == 0) { - return new HashSet<>(); + return new HashSet<String>(); } Set<String> elements = decomposeImpl(algorithm); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/util/AnchorCertificates.java openjdk-boot/jdk/src/share/classes/sun/security/util/AnchorCertificates.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/util/AnchorCertificates.java 2017-04-26 15:02:12.600809170 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/util/AnchorCertificates.java 2017-04-26 16:05:48.631251373 +0100 @@ -60,7 +60,7 @@ try { fis = new FileInputStream(f); cacerts.load(fis, null); - certs = new HashSet<>(); + certs = new HashSet<String>(); Enumeration<String> list = cacerts.aliases(); String alias; while (list.hasMoreElements()) { diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java 2017-04-26 15:02:11.524826459 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java 2017-04-26 16:05:48.631251373 +0100 @@ -235,7 +235,7 @@ */ private static class Constraints { - private Map<String, Set<Constraint>> constraintsMap = new HashMap<>(); + private Map<String, Set<Constraint>> constraintsMap = new HashMap<String, Set<Constraint>>(); private static final Pattern keySizePattern = Pattern.compile( "keySize\\s*(<=|<|==|!=|>|>=)\\s*(\\d+)"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/x509/X509CertImpl.java openjdk-boot/jdk/src/share/classes/sun/security/x509/X509CertImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/x509/X509CertImpl.java 2017-04-26 15:02:12.552809941 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/x509/X509CertImpl.java 2017-04-26 16:05:48.631251373 +0100 @@ -1252,7 +1252,7 @@ if (exts == null) { return null; } - Set<String> extSet = new TreeSet<>(); + Set<String> extSet = new TreeSet<String>(); for (Extension ex : exts.getAllExtensions()) { if (ex.isCritical()) { extSet.add(ex.getExtensionId().toString()); @@ -1282,7 +1282,7 @@ if (exts == null) { return null; } - Set<String> extSet = new TreeSet<>(); + Set<String> extSet = new TreeSet<String>(); for (Extension ex : exts.getAllExtensions()) { if (!ex.isCritical()) { extSet.add(ex.getExtensionId().toString()); @@ -1519,10 +1519,10 @@ if (names.isEmpty()) { return Collections.<List<?>>emptySet(); } - List<List<?>> newNames = new ArrayList<>(); + List<List<?>> newNames = new ArrayList<List<?>>(); for (GeneralName gname : names.names()) { GeneralNameInterface name = gname.getName(); - List<Object> nameEntry = new ArrayList<>(2); + List<Object> nameEntry = new ArrayList<Object>(2); nameEntry.add(Integer.valueOf(name.getType())); switch (name.getType()) { case GeneralNameInterface.NAME_RFC822: @@ -1580,12 +1580,12 @@ } } if (mustClone) { - List<List<?>> namesCopy = new ArrayList<>(); + List<List<?>> namesCopy = new ArrayList<List<?>>(); for (List<?> nameEntry : altNames) { Object nameObject = nameEntry.get(1); if (nameObject instanceof byte[]) { List<Object> nameEntryCopy = - new ArrayList<>(nameEntry); + new ArrayList<Object>(nameEntry); nameEntryCopy.set(1, ((byte[])nameObject).clone()); namesCopy.add(Collections.unmodifiableList(nameEntryCopy)); } else { @@ -1904,7 +1904,7 @@ } private ConcurrentHashMap<String,String> fingerprints = - new ConcurrentHashMap<>(2); + new ConcurrentHashMap<String,String>(2); public String getFingerprint(String algorithm) { String fingerprint = null; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/x509/X509CRLEntryImpl.java openjdk-boot/jdk/src/share/classes/sun/security/x509/X509CRLEntryImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/x509/X509CRLEntryImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/x509/X509CRLEntryImpl.java 2017-04-26 16:05:48.631251373 +0100 @@ -350,7 +350,7 @@ if (extensions == null) { return null; } - Set<String> extSet = new TreeSet<>(); + Set<String> extSet = new TreeSet<String>(); for (Extension ex : extensions.getAllExtensions()) { if (ex.isCritical()) { extSet.add(ex.getExtensionId().toString()); @@ -371,7 +371,7 @@ if (extensions == null) { return null; } - Set<String> extSet = new TreeSet<>(); + Set<String> extSet = new TreeSet<String>(); for (Extension ex : extensions.getAllExtensions()) { if (!ex.isCritical()) { extSet.add(ex.getExtensionId().toString()); @@ -508,7 +508,7 @@ return Collections.emptyMap(); } Collection<Extension> exts = extensions.getAllExtensions(); - Map<String, java.security.cert.Extension> map = new TreeMap<>(); + Map<String, java.security.cert.Extension> map = new TreeMap<String, java.security.cert.Extension>(); for (Extension ext : exts) { map.put(ext.getId(), ext); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/x509/X509CRLImpl.java openjdk-boot/jdk/src/share/classes/sun/security/x509/X509CRLImpl.java --- openjdk-boot.orig/jdk/src/share/classes/sun/security/x509/X509CRLImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/security/x509/X509CRLImpl.java 2017-04-26 16:05:48.631251373 +0100 @@ -103,8 +103,8 @@ private X500Principal issuerPrincipal = null; private Date thisUpdate = null; private Date nextUpdate = null; - private Map<X509IssuerSerial,X509CRLEntry> revokedMap = new TreeMap<>(); - private List<X509CRLEntry> revokedList = new LinkedList<>(); + private Map<X509IssuerSerial,X509CRLEntry> revokedMap = new TreeMap<X509IssuerSerial,X509CRLEntry>(); + private List<X509CRLEntry> revokedList = new LinkedList<X509CRLEntry>(); private CRLExtensions extensions = null; private final static boolean isExplicit = true; private static final long YR_2050 = 2524636800000L; @@ -903,7 +903,7 @@ if (extensions == null) { return null; } - Set<String> extSet = new TreeSet<>(); + Set<String> extSet = new TreeSet<String>(); for (Extension ex : extensions.getAllExtensions()) { if (ex.isCritical()) { extSet.add(ex.getExtensionId().toString()); @@ -924,7 +924,7 @@ if (extensions == null) { return null; } - Set<String> extSet = new TreeSet<>(); + Set<String> extSet = new TreeSet<String>(); for (Extension ex : extensions.getAllExtensions()) { if (!ex.isCritical()) { extSet.add(ex.getExtensionId().toString()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/tools/native2ascii/Main.java openjdk-boot/jdk/src/share/classes/sun/tools/native2ascii/Main.java --- openjdk-boot.orig/jdk/src/share/classes/sun/tools/native2ascii/Main.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/tools/native2ascii/Main.java 2017-04-26 16:05:48.631251373 +0100 @@ -95,7 +95,7 @@ * Run the converter */ public synchronized boolean convert(String argv[]){ - List<String> v = new ArrayList<>(2); + List<String> v = new ArrayList<String>(2); File outputFile = null; boolean createOutputFile = false; diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/InternalLocaleBuilder.java openjdk-boot/jdk/src/share/classes/sun/util/locale/InternalLocaleBuilder.java --- openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/InternalLocaleBuilder.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/util/locale/InternalLocaleBuilder.java 2017-04-26 16:05:48.631251373 +0100 @@ -113,7 +113,7 @@ } // Use case insensitive string to prevent duplication if (uattributes == null) { - uattributes = new HashSet<>(4); + uattributes = new HashSet<CaseInsensitiveString>(4); } uattributes.add(new CaseInsensitiveString(attribute)); return this; @@ -157,7 +157,7 @@ } } if (ukeywords == null) { - ukeywords = new HashMap<>(4); + ukeywords = new HashMap<CaseInsensitiveString,String>(4); } ukeywords.put(cikey, type); } @@ -211,7 +211,7 @@ setUnicodeLocaleExtension(val); } else { if (extensions == null) { - extensions = new HashMap<>(4); + extensions = new HashMap<CaseInsensitiveChar,String>(4); } extensions.put(key, val); } @@ -262,7 +262,7 @@ } if (extensions == null) { - extensions = new ArrayList<>(4); + extensions = new ArrayList<String>(4); } extensions.add(sb.toString()); } else { @@ -313,7 +313,7 @@ clearExtensions(); if (!LocaleUtils.isEmpty(bcpExtensions)) { - Set<CaseInsensitiveChar> done = new HashSet<>(bcpExtensions.size()); + Set<CaseInsensitiveChar> done = new HashSet<CaseInsensitiveChar>(bcpExtensions.size()); for (String bcpExt : bcpExtensions) { CaseInsensitiveChar key = new CaseInsensitiveChar(bcpExt); // ignore duplicates @@ -323,7 +323,7 @@ setUnicodeLocaleExtension(bcpExt.substring(2)); } else { if (extensions == null) { - extensions = new HashMap<>(4); + extensions = new HashMap<CaseInsensitiveChar,String>(4); } extensions.put(key, bcpExt.substring(2)); } @@ -334,7 +334,7 @@ if (privateuse != null && privateuse.length() > 0) { // privateuse string contains prefix, e.g. "x-abc-def" if (extensions == null) { - extensions = new HashMap<>(1); + extensions = new HashMap<CaseInsensitiveChar,String>(1); } extensions.put(new CaseInsensitiveChar(privateuse), privateuse.substring(2)); } @@ -442,19 +442,19 @@ UnicodeLocaleExtension ue = (UnicodeLocaleExtension)e; for (String uatr : ue.getUnicodeLocaleAttributes()) { if (uattributes == null) { - uattributes = new HashSet<>(4); + uattributes = new HashSet<CaseInsensitiveString>(4); } uattributes.add(new CaseInsensitiveString(uatr)); } for (String ukey : ue.getUnicodeLocaleKeys()) { if (ukeywords == null) { - ukeywords = new HashMap<>(4); + ukeywords = new HashMap<CaseInsensitiveString,String>(4); } ukeywords.put(new CaseInsensitiveString(ukey), ue.getUnicodeLocaleType(ukey)); } } else { if (extensions == null) { - extensions = new HashMap<>(4); + extensions = new HashMap<CaseInsensitiveChar,String>(4); } extensions.put(new CaseInsensitiveChar(key), e.getValue()); } @@ -604,7 +604,7 @@ break; } if (uattributes == null) { - uattributes = new HashSet<>(4); + uattributes = new HashSet<CaseInsensitiveString>(4); } uattributes.add(new CaseInsensitiveString(itr.current())); itr.next(); @@ -622,7 +622,7 @@ assert(typeStart == -1 || typeEnd != -1); type = (typeStart == -1) ? "" : subtags.substring(typeStart, typeEnd); if (ukeywords == null) { - ukeywords = new HashMap<>(4); + ukeywords = new HashMap<CaseInsensitiveString,String>(4); } ukeywords.put(key, type); @@ -652,7 +652,7 @@ assert(typeStart == -1 || typeEnd != -1); type = (typeStart == -1) ? "" : subtags.substring(typeStart, typeEnd); if (ukeywords == null) { - ukeywords = new HashMap<>(4); + ukeywords = new HashMap<CaseInsensitiveString,String>(4); } ukeywords.put(key, type); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/LanguageTag.java openjdk-boot/jdk/src/share/classes/sun/util/locale/LanguageTag.java --- openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/LanguageTag.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/util/locale/LanguageTag.java 2017-04-26 16:05:48.631251373 +0100 @@ -62,7 +62,7 @@ // Map contains grandfathered tags and its preferred mappings from // http://www.ietf.org/rfc/rfc5646.txt // Keys are lower-case strings. - private static final Map<String, String[]> GRANDFATHERED = new HashMap<>(); + private static final Map<String, String[]> GRANDFATHERED = new HashMap<String,String[]>(); static { // grandfathered = irregular ; non-redundant tags registered @@ -257,7 +257,7 @@ } found = true; if (extlangs.isEmpty()) { - extlangs = new ArrayList<>(3); + extlangs = new ArrayList<String>(3); } extlangs.add(s); sts.parseLength = itr.currentEnd(); @@ -322,7 +322,7 @@ } found = true; if (variants.isEmpty()) { - variants = new ArrayList<>(3); + variants = new ArrayList<String>(3); } variants.add(s); sts.parseLength = itr.currentEnd(); @@ -365,7 +365,7 @@ } if (extensions.isEmpty()) { - extensions = new ArrayList<>(4); + extensions = new ArrayList<String>(4); } extensions.add(sb.toString()); found = true; @@ -462,7 +462,7 @@ break; } if (variants == null) { - variants = new ArrayList<>(); + variants = new ArrayList<String>(); } variants.add(var); // Do not canonicalize! varitr.next(); @@ -503,7 +503,7 @@ privateuse = ext.getValue(); } else { if (extensions == null) { - extensions = new ArrayList<>(); + extensions = new ArrayList<String>(); } extensions.add(locextKey.toString() + SEP + ext.getValue()); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/LocaleExtensions.java openjdk-boot/jdk/src/share/classes/sun/util/locale/LocaleExtensions.java --- openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/LocaleExtensions.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/util/locale/LocaleExtensions.java 2017-04-26 16:05:48.631251373 +0100 @@ -81,7 +81,7 @@ } // Build extension map - SortedMap<Character, Extension> map = new TreeMap<>(); + SortedMap<Character, Extension> map = new TreeMap<Character,Extension>(); if (hasExtension) { for (Entry<CaseInsensitiveChar, String> ext : extensions.entrySet()) { char key = LocaleUtils.toLower(ext.getKey().value()); @@ -104,14 +104,14 @@ SortedMap<String, String> ukmap = null; if (hasUAttributes) { - uaset = new TreeSet<>(); + uaset = new TreeSet<String>(); for (CaseInsensitiveString cis : uattributes) { uaset.add(LocaleUtils.toLowerString(cis.value())); } } if (hasUKeywords) { - ukmap = new TreeMap<>(); + ukmap = new TreeMap<String,String>(); for (Entry<CaseInsensitiveString, String> kwd : ukeywords.entrySet()) { String key = LocaleUtils.toLowerString(kwd.getKey().value()); String type = LocaleUtils.toLowerString(kwd.getValue()); diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/LocaleObjectCache.java openjdk-boot/jdk/src/share/classes/sun/util/locale/LocaleObjectCache.java --- openjdk-boot.orig/jdk/src/share/classes/sun/util/locale/LocaleObjectCache.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/util/locale/LocaleObjectCache.java 2017-04-26 16:05:48.631251373 +0100 @@ -38,14 +38,14 @@ public abstract class LocaleObjectCache<K, V> { private ConcurrentMap<K, CacheEntry<K, V>> map; - private ReferenceQueue<V> queue = new ReferenceQueue<>(); + private ReferenceQueue<V> queue = new ReferenceQueue<V>(); public LocaleObjectCache() { this(16, 0.75f, 16); } public LocaleObjectCache(int initialCapacity, float loadFactor, int concurrencyLevel) { - map = new ConcurrentHashMap<>(initialCapacity, loadFactor, concurrencyLevel); + map = new ConcurrentHashMap<K, CacheEntry<K,V>>(initialCapacity, loadFactor, concurrencyLevel); } public V get(K key) { @@ -66,7 +66,7 @@ return null; } - CacheEntry<K, V> newEntry = new CacheEntry<>(key, newVal, queue); + CacheEntry<K, V> newEntry = new CacheEntry<K,V>(key, newVal, queue); entry = map.putIfAbsent(key, newEntry); if (entry == null) { @@ -83,7 +83,7 @@ } protected V put(K key, V value) { - CacheEntry<K, V> entry = new CacheEntry<>(key, value, queue); + CacheEntry<K, V> entry = new CacheEntry<K,V>(key, value, queue); CacheEntry<K, V> oldEntry = map.put(key, entry); return (oldEntry == null) ? null : oldEntry.get(); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/util/LocaleServiceProviderPool.java openjdk-boot/jdk/src/share/classes/sun/util/LocaleServiceProviderPool.java --- openjdk-boot.orig/jdk/src/share/classes/sun/util/LocaleServiceProviderPool.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/util/LocaleServiceProviderPool.java 2017-04-26 16:05:48.631251373 +0100 @@ -59,7 +59,7 @@ * set of provider implementations of a particular locale sensitive service. */ private static ConcurrentMap<Class<? extends LocaleServiceProvider>, LocaleServiceProviderPool> poolOfPools = - new ConcurrentHashMap<>(); + new ConcurrentHashMap<Class<? extends LocaleServiceProvider>, LocaleServiceProviderPool>(); /** * A Set containing locale service providers that implement the @@ -264,7 +264,7 @@ synchronized (LocaleServiceProviderPool.class) { if (availableJRELocales == null) { Locale[] allLocales = LocaleData.getAvailableLocales(); - List<Locale> tmpList = new ArrayList<>(allLocales.length); + List<Locale> tmpList = new ArrayList<Locale>(allLocales.length); for (Locale locale : allLocales) { tmpList.add(getLookupLocale(locale)); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/util/logging/PlatformLogger.java openjdk-boot/jdk/src/share/classes/sun/util/logging/PlatformLogger.java --- openjdk-boot.orig/jdk/src/share/classes/sun/util/logging/PlatformLogger.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/util/logging/PlatformLogger.java 2017-04-26 16:05:48.631251373 +0100 @@ -187,7 +187,7 @@ // Table of known loggers. Maps names to PlatformLoggers. private static Map<String,WeakReference<PlatformLogger>> loggers = - new HashMap<>(); + new HashMap<String,WeakReference<PlatformLogger>>(); /** * Returns a PlatformLogger of a given name. @@ -200,7 +200,7 @@ } if (log == null) { log = new PlatformLogger(name); - loggers.put(name, new WeakReference<>(log)); + loggers.put(name, new WeakReference<PlatformLogger>(log)); } return log; } diff -Nru openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/Demo.java openjdk-boot/jdk/src/share/demo/nio/zipfs/Demo.java --- openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/Demo.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/demo/nio/zipfs/Demo.java 2017-04-26 16:05:48.635251308 +0100 @@ -160,7 +160,7 @@ } Action action = Action.valueOf(args[0]); - Map<String, Object> env = env = new HashMap<>(); + Map<String, Object> env = env = new HashMap<String,Object>(); if (action == Action.create) env.put("create", "true"); try (FileSystem fs = provider.newFileSystem(Paths.get(args[1]), env)) { @@ -656,9 +656,9 @@ private static void fchCopy(Path src, Path dst) throws IOException { - Set<OpenOption> read = new HashSet<>(); + Set<OpenOption> read = new HashSet<OpenOption>(); read.add(READ); - Set<OpenOption> openwrite = new HashSet<>(); + Set<OpenOption> openwrite = new HashSet<OpenOption>(); openwrite.add(CREATE_NEW); openwrite.add(WRITE); @@ -676,9 +676,9 @@ private static void chCopy(Path src, Path dst) throws IOException { - Set<OpenOption> read = new HashSet<>(); + Set<OpenOption> read = new HashSet<OpenOption>(); read.add(READ); - Set<OpenOption> openwrite = new HashSet<>(); + Set<OpenOption> openwrite = new HashSet<OpenOption>(); openwrite.add(CREATE_NEW); openwrite.add(WRITE); diff -Nru openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java --- openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java 2017-04-26 16:05:48.635251308 +0100 @@ -142,8 +142,8 @@ return new ZipCoder(Charset.defaultCharset()); } - private final ThreadLocal<CharsetDecoder> decTL = new ThreadLocal<>(); - private final ThreadLocal<CharsetEncoder> encTL = new ThreadLocal<>(); + private final ThreadLocal<CharsetDecoder> decTL = new ThreadLocal<CharsetDecoder>(); + private final ThreadLocal<CharsetEncoder> encTL = new ThreadLocal<CharsetEncoder>();r private CharsetDecoder decoder() { CharsetDecoder dec = decTL.get(); diff -Nru openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java --- openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java 2017-04-26 16:05:48.635251308 +0100 @@ -134,7 +134,7 @@ throws IOException { ZipFileAttributes zfas = readAttributes(); - LinkedHashMap<String, Object> map = new LinkedHashMap<>(); + LinkedHashMap<String, Object> map = new LinkedHashMap<String,Object>(); if ("*".equals(attributes)) { for (AttrID id : AttrID.values()) { try { diff -Nru openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java --- openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java 2017-04-26 16:05:48.635251308 +0100 @@ -157,7 +157,7 @@ @Override public Iterable<Path> getRootDirectories() { - ArrayList<Path> pathArr = new ArrayList<>(); + ArrayList<Path> pathArr = new ArrayList<Path>(); pathArr.add(new ZipPath(this, new byte[]{'/'})); return pathArr; } @@ -202,7 +202,7 @@ @Override public Iterable<FileStore> getFileStores() { - ArrayList<FileStore> list = new ArrayList<>(1); + ArrayList<FileStore> list = new ArrayList<FileStore>(1); list.add(new ZipFileStore(new ZipPath(this, new byte[]{'/'}))); return list; } @@ -268,7 +268,7 @@ endWrite(); } if (!streams.isEmpty()) { // unlock and close all remaining streams - Set<InputStream> copy = new HashSet<>(streams); + Set<InputStream> copy = new HashSet<InputStream>(streams); for (InputStream is: copy) is.close(); } @@ -396,7 +396,7 @@ IndexNode inode = getInode(path); if (inode == null) throw new NotDirectoryException(getString(path)); - List<Path> list = new ArrayList<>(); + List<Path> list = new ArrayList<Path>(); IndexNode child = inode.child; while (child != null) { ZipPath zp = toZipPath(child.name); @@ -832,7 +832,7 @@ // the ex-channel and ex-path that need to close when their outstanding // input streams are all closed by the obtainers. - private Set<ExChannelCloser> exChClosers = new HashSet<>(); + private Set<ExChannelCloser> exChClosers = new HashSet<ExChannelCloser>(); private Set<Path> tmppaths = Collections.synchronizedSet(new HashSet<Path>()); private Path getTempPathForEntry(byte[] path) throws IOException { @@ -1029,7 +1029,7 @@ private byte[] initCEN() throws IOException { end = findEND(); if (end.endpos == 0) { - inodes = new LinkedHashMap<>(10); + inodes = new LinkedHashMap<IndexNode,IndexNode>(10); locpos = 0; buildNodeTree(); return null; // only END header present @@ -1050,7 +1050,7 @@ zerror("read CEN tables failed"); } // Iterate through the entries in the central directory - inodes = new LinkedHashMap<>(end.centot + 1); + inodes = new LinkedHashMap<IndexNode,IndexNode>(end.centot + 1); int pos = 0; int limit = cen.length - ENDHDR; while (pos < limit) { @@ -1197,7 +1197,7 @@ Path tmpFile = createTempFileInSameDirectoryAs(zfpath); try (OutputStream os = new BufferedOutputStream(Files.newOutputStream(tmpFile, WRITE))) { - ArrayList<Entry> elist = new ArrayList<>(inodes.size()); + ArrayList<Entry> elist = new ArrayList(inodes.size()); long written = 0; byte[] buf = new byte[8192]; Entry e = null; @@ -1608,7 +1608,7 @@ // Maxmum number of de/inflater we cache private final int MAX_FLATER = 20; // List of available Inflater objects for decompression - private final List<Inflater> inflaters = new ArrayList<>(); + private final List<Inflater> inflaters = new ArrayList<Inflater>(); // Gets an inflater from the list of available inflaters or allocates // a new one. @@ -1637,7 +1637,7 @@ } // List of available Deflater objects for compression - private final List<Deflater> deflaters = new ArrayList<>(); + private final List<Deflater> deflaters = new ArrayList<Deflater>(); // Gets an deflater from the list of available deflaters or allocates // a new one. @@ -2347,7 +2347,7 @@ private void buildNodeTree() throws IOException { beginWrite(); try { - HashSet<IndexNode> dirs = new HashSet<>(); + HashSet<IndexNode> dirs = new HashSet<IndexNode>(); IndexNode root = new IndexNode(ROOTPATH, -1); inodes.put(root, root); dirs.add(root); diff -Nru openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java --- openjdk-boot.orig/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java 2017-04-26 16:05:48.635251308 +0100 @@ -62,7 +62,7 @@ public class ZipFileSystemProvider extends FileSystemProvider { - private final Map<Path, ZipFileSystem> filesystems = new HashMap<>(); + private final Map<Path, ZipFileSystem> filesystems = new HashMap<Path,ZipFileSystem>(); public ZipFileSystemProvider() {} diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/java/lang/ProcessEnvironment.java openjdk-boot/jdk/src/solaris/classes/java/lang/ProcessEnvironment.java --- openjdk-boot.orig/jdk/src/solaris/classes/java/lang/ProcessEnvironment.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/java/lang/ProcessEnvironment.java 2017-04-26 16:05:48.635251308 +0100 @@ -68,7 +68,7 @@ // We cache the C environment. This means that subsequent calls // to putenv/setenv from C will not be visible from Java code. byte[][] environ = environ(); - theEnvironment = new HashMap<>(environ.length/2 + 3); + theEnvironment = new HashMap<Variable,Value>(environ.length/2 + 3); // Read environment variables back to front, // so that earlier variables override later ones. for (int i = environ.length-1; i > 0; i-=2) diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/java/util/prefs/FileSystemPreferences.java openjdk-boot/jdk/src/solaris/classes/java/util/prefs/FileSystemPreferences.java --- openjdk-boot.orig/jdk/src/solaris/classes/java/util/prefs/FileSystemPreferences.java 2017-04-26 15:02:12.600809170 +0100 +++ openjdk-boot/jdk/src/solaris/classes/java/util/prefs/FileSystemPreferences.java 2017-04-26 16:05:48.635251308 +0100 @@ -354,7 +354,7 @@ * log against that map. The resulting map is then written back * to the disk. */ - final List<Change> changeLog = new ArrayList<>(); + final List<Change> changeLog = new ArrayList<Change>(); /** * Represents a change to a preference. @@ -507,7 +507,7 @@ }); if (newNode) { // These 2 things guarantee node will get wrtten at next flush/sync - prefsCache = new TreeMap<>(); + prefsCache = new TreeMap<String, String>(); nodeCreate = new NodeCreate(); changeLog.add(nodeCreate); } @@ -550,7 +550,7 @@ loadCache(); } catch(Exception e) { // assert lastSyncTime == 0; - prefsCache = new TreeMap<>(); + prefsCache = new TreeMap<String, String>(); } } @@ -567,7 +567,7 @@ AccessController.doPrivileged( new PrivilegedExceptionAction<Void>() { public Void run() throws BackingStoreException { - Map<String, String> m = new TreeMap<>(); + Map<String, String> m = new TreeMap<String, String>(); long newLastSyncTime = 0; FileInputStream fis = null; try { @@ -581,7 +581,7 @@ prefsFile.renameTo( new File( prefsFile.getParentFile(), "IncorrectFormatPrefs.xml")); - m = new TreeMap<>(); + m = new TreeMap<String, String>(); } else if (e instanceof FileNotFoundException) { getLogger().warning("Prefs file removed in background " + prefsFile.getPath()); @@ -662,7 +662,7 @@ return AccessController.doPrivileged( new PrivilegedAction<String[]>() { public String[] run() { - List<String> result = new ArrayList<>(); + List<String> result = new ArrayList<String>(); File[] dirContents = dir.listFiles(); if (dirContents != null) { for (int i = 0; i < dirContents.length; i++) @@ -810,7 +810,7 @@ } else if (lastSyncTime != 0 && !dir.exists()) { // This node was removed in the background. Playback any changes // against a virgin (empty) Map. - prefsCache = new TreeMap<>(); + prefsCache = new TreeMap<String, String>(); replayChanges(); } if (!changeLog.isEmpty()) { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2017-04-26 16:05:48.635251308 +0100 @@ -60,7 +60,7 @@ int maxperkeyword, int maxkeywords) { - LinkedList<String> ll = new LinkedList<>(); + LinkedList<String> ll = new LinkedList<String>(); try { BufferedReader in = @@ -209,7 +209,7 @@ // no local domain so try fallback (RPC) domain or // hostName - sl = new LinkedList<>(); + sl = new LinkedList<String>(); String domain = fallbackDomain0(); if (domain != null && domain.length() > 0) { sl.add(domain); diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/net/www/protocol/jar/JarFileFactory.java openjdk-boot/jdk/src/solaris/classes/sun/net/www/protocol/jar/JarFileFactory.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/net/www/protocol/jar/JarFileFactory.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/net/www/protocol/jar/JarFileFactory.java 2017-04-26 16:05:48.635251308 +0100 @@ -43,10 +43,10 @@ class JarFileFactory implements URLJarFile.URLJarFileCloseController { /* the url to file cache */ - private static final HashMap<String, JarFile> fileCache = new HashMap<>(); + private static final HashMap<String, JarFile> fileCache = new HashMap<String, JarFile>(); /* the file to url cache */ - private static final HashMap<JarFile, URL> urlCache = new HashMap<>(); + private static final HashMap<JarFile, URL> urlCache = new HashMap<JarFile, URL>(); private static final JarFileFactory instance = new JarFileFactory(); diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/DevPollArrayWrapper.java openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/DevPollArrayWrapper.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/DevPollArrayWrapper.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/DevPollArrayWrapper.java 2017-04-26 16:05:48.635251308 +0100 @@ -133,7 +133,7 @@ pollArrayAddress = pollArray.address(); wfd = init(); if (OPEN_MAX > MAX_UPDATE_ARRAY_SIZE) - eventsHigh = new HashMap<>(); + eventsHigh = new HashMap<Integer,Byte>(); } void initInterrupt(int fd0, int fd1) { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EPollArrayWrapper.java openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EPollArrayWrapper.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EPollArrayWrapper.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EPollArrayWrapper.java 2017-04-26 16:05:48.635251308 +0100 @@ -136,7 +136,7 @@ // eventHigh needed when using file descriptors > 64k if (OPEN_MAX > MAX_UPDATE_ARRAY_SIZE) - eventsHigh = new HashMap<>(); + eventsHigh = new HashMap<Integer, Byte>(); } void initInterrupt(int fd0, int fd1) { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EPollSelectorImpl.java openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EPollSelectorImpl.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EPollSelectorImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EPollSelectorImpl.java 2017-04-26 16:05:48.635251308 +0100 @@ -67,7 +67,7 @@ fd1 = (int) pipeFds; pollWrapper = new EPollArrayWrapper(); pollWrapper.initInterrupt(fd0, fd1); - fdToKey = new HashMap<>(); + fdToKey = new HashMap<Integer, SelectionKeyImpl>(); } protected int doSelect(long timeout) throws IOException { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EventPortSelectorImpl.java openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EventPortSelectorImpl.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EventPortSelectorImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EventPortSelectorImpl.java 2017-04-26 16:05:48.635251308 +0100 @@ -58,7 +58,7 @@ EventPortSelectorImpl(SelectorProvider sp) throws IOException { super(sp); pollWrapper = new EventPortWrapper(); - fdToKey = new HashMap<>(); + fdToKey = new HashMap<Integer, SelectionKeyImpl>(); } protected int doSelect(long timeout) throws IOException { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EventPortWrapper.java openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EventPortWrapper.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/EventPortWrapper.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/EventPortWrapper.java 2017-04-26 16:05:48.635251308 +0100 @@ -96,7 +96,7 @@ pollArrayAddress = pollArray.address(); this.pfd = port_create(); if (OPEN_MAX > MAX_UPDATE_ARRAY_SIZE) - eventsHigh = new HashMap<>(); + eventsHigh = new HashMap<Integer, Byte>(); } void close() throws IOException { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/SctpNet.java openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/SctpNet.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/ch/SctpNet.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/ch/SctpNet.java 2017-04-26 16:05:48.635251308 +0100 @@ -113,7 +113,7 @@ SocketAddress[] saa) { SecurityManager sm = System.getSecurityManager(); - Set<SocketAddress> set = new HashSet<>(saa.length); + Set<SocketAddress> set = new HashSet<SocketAddress>(saa.length); for (SocketAddress sa : saa) { set.add(getRevealedLocalAddress(sa, sm)); } diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java openjdk-boot/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/cs/ext/CompoundTextSupport.java 2017-04-26 16:05:48.635251308 +0100 @@ -153,12 +153,12 @@ static { HashMap<ControlSequence, String> tSequenceToEncodingMap = - new HashMap<>(33, 1.0f); + new HashMap<ControlSequence, String>(33, 1.0f); HashMap<ControlSequence, Boolean> tHighBitsMap = - new HashMap<>(31, 1.0f); + new HashMap<ControlSequence, Boolean>(31, 1.0f); HashMap<String, ControlSequence> tEncodingToSequenceMap = - new HashMap<>(21, 1.0f); - ArrayList<String> tEncodings = new ArrayList<>(21); + new HashMap<String, ControlSequence>(21, 1.0f); + ArrayList<String> tEncodings = new ArrayList<String>(21); if (!(isEncodingSupported("US-ASCII") && isEncodingSupported("ISO-8859-1"))) diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/LinuxFileSystem.java openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/LinuxFileSystem.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/LinuxFileSystem.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/LinuxFileSystem.java 2017-04-26 16:05:48.635251308 +0100 @@ -53,7 +53,7 @@ static final Set<String> supportedFileAttributeViews = supportedFileAttributeViews(); private static Set<String> supportedFileAttributeViews() { - Set<String> result = new HashSet<>(); + Set<String> result = new HashSet<String>(); result.addAll(standardFileAttributeViews()); // additional Linux-specific views result.add("dos"); @@ -76,7 +76,7 @@ * Returns object to iterate over the mount entries in the given fstab file. */ Iterable<UnixMountEntry> getMountEntries(String fstab) { - ArrayList<UnixMountEntry> entries = new ArrayList<>(); + ArrayList<UnixMountEntry> entries = new ArrayList<UnixMountEntry>(); try { long fp = setmntent(fstab.getBytes(), "r".getBytes()); try { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java 2017-04-26 16:05:48.635251308 +0100 @@ -63,7 +63,7 @@ // Parses buffer as array of NULL-terminated C strings. private List<String> asList(long address, int size) { - List<String> list = new ArrayList<>(); + List<String> list = new ArrayList<String>(); int start = 0; int pos = 0; while (pos < size) { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/SolarisAclFileAttributeView.java openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/SolarisAclFileAttributeView.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/SolarisAclFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/SolarisAclFileAttributeView.java 2017-04-26 16:05:48.635251308 +0100 @@ -198,7 +198,7 @@ * Decode the buffer, returning an ACL */ private static List<AclEntry> decode(long address, int n) { - ArrayList<AclEntry> acl = new ArrayList<>(n); + ArrayList<AclEntry> acl = new ArrayList<AclEntry>(n); for (int i=0; i<n; i++) { long offset = address + i*SIZEOF_ACE_T; diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/SolarisFileSystem.java openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/SolarisFileSystem.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/SolarisFileSystem.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/SolarisFileSystem.java 2017-04-26 16:05:48.635251308 +0100 @@ -76,7 +76,7 @@ static final Set<String> supportedFileAttributeViews = supportedFileAttributeViews(); private static Set<String> supportedFileAttributeViews() { - Set<String> result = new HashSet<>(); + Set<String> result = new HashSet<String>(); result.addAll(standardFileAttributeViews()); // additional Solaris-specific views result.add("acl"); @@ -101,7 +101,7 @@ */ @Override Iterable<UnixMountEntry> getMountEntries() { - ArrayList<UnixMountEntry> entries = new ArrayList<>(); + ArrayList<UnixMountEntry> entries = new ArrayList<UnixMountEntry>(); try { UnixPath mnttab = new UnixPath(this, "/etc/mnttab"); long fp = fopen(mnttab, "r"); diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java 2017-04-26 16:05:48.635251308 +0100 @@ -83,7 +83,7 @@ } // read list of extended attributes - List<String> list = new ArrayList<>(); + List<String> list = new ArrayList<String>(); try { byte[] name; while ((name = readdir(dp)) != null) { diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/UnixFileAttributes.java openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/UnixFileAttributes.java --- openjdk-boot.orig/jdk/src/solaris/classes/sun/nio/fs/UnixFileAttributes.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/sun/nio/fs/UnixFileAttributes.java 2017-04-26 16:05:48.635251308 +0100 @@ -194,7 +194,7 @@ @Override public Set<PosixFilePermission> permissions() { int bits = (st_mode & UnixConstants.S_IAMB); - HashSet<PosixFilePermission> perms = new HashSet<>(); + HashSet<PosixFilePermission> perms = new HashSet<PosixFilePermission>(); if ((bits & UnixConstants.S_IRUSR) > 0) perms.add(PosixFilePermission.OWNER_READ); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/java/lang/ProcessEnvironment.java openjdk-boot/jdk/src/windows/classes/java/lang/ProcessEnvironment.java --- openjdk-boot.orig/jdk/src/windows/classes/java/lang/ProcessEnvironment.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/java/lang/ProcessEnvironment.java 2017-04-26 16:05:48.635251308 +0100 @@ -250,7 +250,8 @@ envblock.substring(eql+1,end)); } - theCaseInsensitiveEnvironment = new TreeMap<>(nameComparator); + theCaseInsensitiveEnvironment + = new TreeMap<String,String>(nameComparator); theCaseInsensitiveEnvironment.putAll(theEnvironment); } @@ -295,7 +296,8 @@ // Only for use by ProcessImpl.start() String toEnvironmentBlock() { // Sort Unicode-case-insensitively by name - List<Map.Entry<String,String>> list = new ArrayList<>(entrySet()); + List<Map.Entry<String,String>> list + = new ArrayList<Map.Entry<String,String>>(entrySet()); Collections.sort(list, entryComparator); StringBuilder sb = new StringBuilder(size()*30); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/java/lang/ProcessImpl.java openjdk-boot/jdk/src/windows/classes/java/lang/ProcessImpl.java --- openjdk-boot.orig/jdk/src/windows/classes/java/lang/ProcessImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/java/lang/ProcessImpl.java 2017-04-26 16:05:48.635251308 +0100 @@ -162,7 +162,7 @@ * There are no escape sequences. */ private static String[] getTokensFromCommand(String command) { - ArrayList<String> matchList = new ArrayList<>(8); + ArrayList<String> matchList = new ArrayList<String>(8); Matcher regexMatcher = LazyPattern.PATTERN.matcher(command); while (regexMatcher.find()) matchList.add(regexMatcher.group()); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk-boot/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2017-04-26 16:05:48.635251308 +0100 @@ -63,7 +63,7 @@ // Parse string that consists of token delimited by space or commas // and return LinkedHashMap private LinkedList<String> stringToList(String str) { - LinkedList<String> ll = new LinkedList<>(); + LinkedList<String> ll = new LinkedList<String>(); // comma and space are valid delimites StringTokenizer st = new StringTokenizer(str, ", "); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/net/www/protocol/jar/JarFileFactory.java openjdk-boot/jdk/src/windows/classes/sun/net/www/protocol/jar/JarFileFactory.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/net/www/protocol/jar/JarFileFactory.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/net/www/protocol/jar/JarFileFactory.java 2017-04-26 16:05:48.635251308 +0100 @@ -43,10 +43,10 @@ class JarFileFactory implements URLJarFile.URLJarFileCloseController { /* the url to file cache */ - private static final HashMap<String, JarFile> fileCache = new HashMap<>(); + private static final HashMap<String, JarFile> fileCache = new HashMap<String,JarFile>(); /* the file to url cache */ - private static final HashMap<JarFile, URL> urlCache = new HashMap<>(); + private static final HashMap<JarFile, URL> urlCache = new HashMap<JarFile, URL>(); private static final JarFileFactory instance = new JarFileFactory(); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsFileSystem.java openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsFileSystem.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsFileSystem.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsFileSystem.java 2017-04-26 16:05:48.635251308 +0100 @@ -128,7 +128,7 @@ } // iterate over roots, ignoring those that the security manager denies - ArrayList<Path> result = new ArrayList<>(); + ArrayList<Path> result = new ArrayList<Path>(); SecurityManager sm = System.getSecurityManager(); for (int i = 0; i <= 25; i++) { // 0->A, 1->B, 2->C... if ((drives & (1 << i)) != 0) { diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsPath.java openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsPath.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsPath.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsPath.java 2017-04-26 16:05:48.635251308 +0100 @@ -575,7 +575,7 @@ // generate offset array private void initOffsets() { if (offsets == null) { - ArrayList<Integer> list = new ArrayList<>(); + ArrayList<Integer> list = new ArrayList<Integer>(); if (isEmpty()) { // empty path considered to have one name element list.add(0); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsSecurityDescriptor.java openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsSecurityDescriptor.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsSecurityDescriptor.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsSecurityDescriptor.java 2017-04-26 16:05:48.635251308 +0100 @@ -378,7 +378,7 @@ AclInformation aclInfo = GetAclInformation(aclAddress); aceCount = aclInfo.aceCount(); } - ArrayList<AclEntry> result = new ArrayList<>(aceCount); + ArrayList<AclEntry> result = new ArrayList<AclEntry>(aceCount); // decode each of the ACEs to AclEntry objects for (int i=0; i<aceCount; i++) { diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsUserDefinedFileAttributeView.java openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsUserDefinedFileAttributeView.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsUserDefinedFileAttributeView.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsUserDefinedFileAttributeView.java 2017-04-26 16:05:48.639251244 +0100 @@ -65,7 +65,7 @@ // enumerates the file streams using FindFirstStream/FindNextStream APIs. private List<String> listUsingStreamEnumeration() throws IOException { - List<String> list = new ArrayList<>(); + List<String> list = new ArrayList<String>(); try { FirstStream first = FindFirstStream(file.getPathForWin32Calls()); if (first != null) { @@ -114,7 +114,7 @@ NativeBuffer buffer = null; // result with names of alternative data streams - final List<String> list = new ArrayList<>(); + final List<String> list = new ArrayList<String>(); try { buffer = NativeBuffers.getNativeBuffer(BUFFER_SIZE); @@ -216,7 +216,7 @@ // wrap with channel FileChannel fc = null; try { - Set<OpenOption> opts = new HashSet<>(); + Set<OpenOption> opts = new HashSet<OpenOption>(); opts.add(READ); if (!followLinks) opts.add(WindowsChannelFactory.OPEN_REPARSE_POINT); @@ -243,7 +243,7 @@ // wrap with channel FileChannel fc = null; try { - Set<OpenOption> opts = new HashSet<>(); + Set<OpenOption> opts = new HashSet<OpenOption>(); opts.add(READ); if (!followLinks) opts.add(WindowsChannelFactory.OPEN_REPARSE_POINT); @@ -298,7 +298,7 @@ x.rethrowAsIOException(file); } try { - Set<OpenOption> opts = new HashSet<>(); + Set<OpenOption> opts = new HashSet<OpenOption>(); if (!followLinks) opts.add(WindowsChannelFactory.OPEN_REPARSE_POINT); opts.add(CREATE); diff -Nru openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsWatchService.java openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsWatchService.java --- openjdk-boot.orig/jdk/src/windows/classes/sun/nio/fs/WindowsWatchService.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/src/windows/classes/sun/nio/fs/WindowsWatchService.java 2017-04-26 16:05:48.639251244 +0100 @@ -289,8 +289,8 @@ this.fs = fs; this.watcher = watcher; this.port = port; - this.ck2key = new HashMap<>(); - this.fk2key = new HashMap<>(); + this.ck2key = new HashMap<Integer,WindowsWatchKey>(); + this.fk2key = new HashMap<FileKey,WindowsWatchKey>(); this.lastCompletionKey = 0; } diff -Nru openjdk-boot.orig/jdk/test/java/io/Serializable/NPEProvoker/NPEProvoker.java openjdk-boot/jdk/test/java/io/Serializable/NPEProvoker/NPEProvoker.java --- openjdk-boot.orig/jdk/test/java/io/Serializable/NPEProvoker/NPEProvoker.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/test/java/io/Serializable/NPEProvoker/NPEProvoker.java 2017-04-26 16:05:48.639251244 +0100 @@ -56,7 +56,7 @@ public static void main(String[] args) { System.err.println("\n Regression test for bug 6541870\n"); try { - ArrayList<NPEProvoker> list = new ArrayList<>(); + ArrayList<NPEProvoker> list = new ArrayList<NPEProvoker>(); list.add(new NPEProvoker()); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(baos); diff -Nru openjdk-boot.orig/jdk/test/java/lang/instrument/ilib/InjectBytecodes.java openjdk-boot/jdk/test/java/lang/instrument/ilib/InjectBytecodes.java --- openjdk-boot.orig/jdk/test/java/lang/instrument/ilib/InjectBytecodes.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/test/java/lang/instrument/ilib/InjectBytecodes.java 2017-04-26 16:05:48.639251244 +0100 @@ -50,7 +50,7 @@ private final Injector[] after = new Injector[256]; private final String className; private final String methodName; - private final Map<Integer,byte[]> snippets = new HashMap<>(); + private final Map<Integer,byte[]> snippets = new HashMap<Integer,byte[]>(); private int pos; private int newPos; diff -Nru openjdk-boot.orig/jdk/test/java/lang/instrument/ilib/Inject.java openjdk-boot/jdk/test/java/lang/instrument/ilib/Inject.java --- openjdk-boot.orig/jdk/test/java/lang/instrument/ilib/Inject.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/test/java/lang/instrument/ilib/Inject.java 2017-04-26 16:05:48.639251244 +0100 @@ -107,7 +107,7 @@ class IndexedInjector implements TrackerInjector { int counter = 0; int tracker; - List<Info> infoList = new ArrayList<>(); + List<Info> infoList = new ArrayList<Info>(); public int stackSize(int currentSize) { return currentSize + 1; diff -Nru openjdk-boot.orig/jdk/test/java/lang/reflect/Generics/TestPlainArrayNotGeneric.java openjdk-boot/jdk/test/java/lang/reflect/Generics/TestPlainArrayNotGeneric.java --- openjdk-boot.orig/jdk/test/java/lang/reflect/Generics/TestPlainArrayNotGeneric.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/test/java/lang/reflect/Generics/TestPlainArrayNotGeneric.java 2017-04-26 16:05:48.639251244 +0100 @@ -103,7 +103,7 @@ } } - private static final Set<Type> checking = new HashSet<>(); + private static final Set<Type> checking = new HashSet<Type>(); private static void check(Type t, String what) { if (t == null || !checking.add(t)) diff -Nru openjdk-boot.orig/jdk/test/java/util/logging/ClassLoaderLeakTest.java openjdk-boot/jdk/test/java/util/logging/ClassLoaderLeakTest.java --- openjdk-boot.orig/jdk/test/java/util/logging/ClassLoaderLeakTest.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/test/java/util/logging/ClassLoaderLeakTest.java 2017-04-26 16:05:48.639251244 +0100 @@ -89,7 +89,7 @@ MyClassLoader appClassLoader = new MyClassLoader(urls, "test0"); WeakReference<MyClassLoader> ref = - new WeakReference<>(appClassLoader); + new WeakReference<MyClassLoader>(appClassLoader); Thread appThread = new Thread(appsThreadGroup, launcher, "AppThread-0"); diff -Nru openjdk-boot.orig/jdk/test/java/util/Random/DistinctSeeds.java openjdk-boot/jdk/test/java/util/Random/DistinctSeeds.java --- openjdk-boot.orig/jdk/test/java/util/Random/DistinctSeeds.java 2017-04-26 05:22:52.000000000 +0100 +++ openjdk-boot/jdk/test/java/util/Random/DistinctSeeds.java 2017-04-26 16:05:48.639251244 +0100 @@ -59,7 +59,7 @@ } } final int threadCount = 2; - List<RandomCollector> collectors = new ArrayList<>(); + List<RandomCollector> collectors = new ArrayList<RandomCollector>(); List<Thread> threads = new ArrayList<Thread>(); for (int i = 0; i < threadCount; i++) { RandomCollector r = new RandomCollector(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/awt/Cursor.java openjdk-boot/jdk/src/share/classes/java/awt/Cursor.java --- openjdk-boot.orig/jdk/src/share/classes/java/awt/Cursor.java 2017-07-14 17:51:22.731719319 +0100 +++ openjdk-boot/jdk/src/share/classes/java/awt/Cursor.java 2017-07-14 17:53:52.713265358 +0100 @@ -163,7 +163,7 @@ * hashtable, filesystem dir prefix, filename, and properties for custom cursors support */ - private static final Hashtable<String,Cursor> systemCustomCursors = new Hashtable<>(1); + private static final Hashtable<String,Cursor> systemCustomCursors = new Hashtable<String,Cursor>(1); private static final String systemCustomCursorDirPrefix = initCursorDir(); private static String initCursorDir() { diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/awt/datatransfer/Clipboard.java openjdk-boot/jdk/src/share/classes/java/awt/datatransfer/Clipboard.java --- openjdk-boot.orig/jdk/src/share/classes/java/awt/datatransfer/Clipboard.java 2017-07-14 17:51:22.739719188 +0100 +++ openjdk-boot/jdk/src/share/classes/java/awt/datatransfer/Clipboard.java 2017-07-14 17:53:43.673413243 +0100 @@ -341,7 +341,7 @@ * @since 1.5 */ private Set<DataFlavor> getAvailableDataFlavorSet() { - Set<DataFlavor> set = new HashSet<>(); + Set<DataFlavor> set = new HashSet<DataFlavor>(); Transferable contents = getContents(null); if (contents != null) { DataFlavor[] flavors = contents.getTransferDataFlavors(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/awt/EventQueue.java openjdk-boot/jdk/src/share/classes/java/awt/EventQueue.java --- openjdk-boot.orig/jdk/src/share/classes/java/awt/EventQueue.java 2017-07-14 17:51:22.751718992 +0100 +++ openjdk-boot/jdk/src/share/classes/java/awt/EventQueue.java 2017-07-14 17:53:17.321844353 +0100 @@ -1183,7 +1183,7 @@ return; } - currentEvent = new WeakReference<>(e); + currentEvent = new WeakReference<AWTEvent>(e); // This series of 'instanceof' checks should be replaced with a // polymorphic type (for example, an interface which declares a diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/awt/MenuBar.java openjdk-boot/jdk/src/share/classes/java/awt/MenuBar.java --- openjdk-boot.orig/jdk/src/share/classes/java/awt/MenuBar.java 2017-07-14 17:51:22.759718861 +0100 +++ openjdk-boot/jdk/src/share/classes/java/awt/MenuBar.java 2017-07-14 17:52:41.754426272 +0100 @@ -94,7 +94,7 @@ * @serial * @see #countMenus() */ - Vector<Menu> menus = new Vector<>(); + Vector<Menu> menus = new Vector<Menu>(); /** * This menu is a special menu dedicated to @@ -323,7 +323,7 @@ * @since JDK1.1 */ public synchronized Enumeration<MenuShortcut> shortcuts() { - Vector<MenuShortcut> shortcuts = new Vector<>(); + Vector<MenuShortcut> shortcuts = new Vector<MenuShortcut>(); int nmenus = getMenuCount(); for (int i = 0 ; i < nmenus ; i++) { Enumeration<MenuShortcut> e = getMenu(i).shortcuts(); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/awt/Menu.java openjdk-boot/jdk/src/share/classes/java/awt/Menu.java --- openjdk-boot.orig/jdk/src/share/classes/java/awt/Menu.java 2017-07-14 17:51:22.775718599 +0100 +++ openjdk-boot/jdk/src/share/classes/java/awt/Menu.java 2017-07-14 17:52:30.842604809 +0100 @@ -78,7 +78,7 @@ * @serial * @see #countItems() */ - Vector<MenuComponent> items = new Vector<>(); + Vector<MenuComponent> items = new Vector<MenuComponent>(); /** * This field indicates whether the menu has the @@ -313,7 +313,7 @@ } int nitems = getItemCount(); - Vector<MenuItem> tempItems = new Vector<>(); + Vector<MenuItem> tempItems = new Vector<MenuItem>(); /* Remove the item at index, nitems-index times storing them in a temporary vector in the @@ -379,7 +379,7 @@ } int nitems = getItemCount(); - Vector<MenuItem> tempItems = new Vector<>(); + Vector<MenuItem> tempItems = new Vector<MenuItem>(); /* Remove the item at index, nitems-index times storing them in a temporary vector in the @@ -476,7 +476,7 @@ } synchronized Enumeration<MenuShortcut> shortcuts() { - Vector<MenuShortcut> shortcuts = new Vector<>(); + Vector<MenuShortcut> shortcuts = new Vector<MenuShortcut>(); int nitems = getItemCount(); for (int i = 0 ; i < nitems ; i++) { MenuItem mi = getItem(i); diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/awt/RenderingHints.java openjdk-boot/jdk/src/share/classes/java/awt/RenderingHints.java --- openjdk-boot.orig/jdk/src/share/classes/java/awt/RenderingHints.java 2017-07-14 17:51:22.783718468 +0100 +++ openjdk-boot/jdk/src/share/classes/java/awt/RenderingHints.java 2017-07-14 17:53:34.281566890 +0100 @@ -92,7 +92,7 @@ * {@code equals()} method. */ public abstract static class Key { - private static HashMap<Object,Object> identitymap = new HashMap<>(17); + private static HashMap<Object,Object> identitymap = new HashMap<Object,Object>(17); private String getIdentity() { // Note that the identity string is dependent on 3 variables: @@ -195,7 +195,7 @@ } } - HashMap<Object,Object> hintmap = new HashMap<>(7); + HashMap<Object,Object> hintmap = new HashMap<Object,Object>(7); /** * Antialiasing hint key. diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java --- openjdk-boot.orig/jdk/src/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java 2017-07-14 17:51:22.803718141 +0100 +++ openjdk-boot/jdk/src/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java 2017-07-14 17:52:10.078944551 +0100 @@ -128,7 +128,7 @@ */ private static synchronized boolean isSupportedImpl(HttpCallerInfo hci) { if (supported == null) { - supported = new HashMap<>(); + supported = new HashMap<String, Boolean>(); } String hostname = hci.host; hostname = hostname.toLowerCase(); @@ -145,7 +145,7 @@ cache = new ThreadLocal<HashMap<String, Negotiator>>() { @Override protected HashMap<String, Negotiator> initialValue() { - return new HashMap<>(); + return new HashMap<String, Negotiator>(); } }; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java 2017-07-14 18:43:02.445291208 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Connections.java 2017-07-14 18:43:42.736642459 +0100 @@ -292,9 +292,9 @@ boolean expire(long threshold) { List<ConnectionDesc> clonedConns; synchronized(this) { - clonedConns = new ArrayList<>(conns); + clonedConns = new ArrayList<ConnectionDesc>(conns); } - List<ConnectionDesc> expired = new ArrayList<>(); + List<ConnectionDesc> expired = new ArrayList<ConnectionDesc>(); for (ConnectionDesc entry : clonedConns) { d("expire(): ", entry); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java --- openjdk-boot.orig/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java 2017-07-14 18:43:02.457291013 +0100 +++ openjdk-boot/jdk/src/share/classes/com/sun/jndi/ldap/pool/Pool.java 2017-07-14 18:43:25.888913736 +0100 @@ -165,10 +165,10 @@ public void expire(long threshold) { Collection<ConnectionsRef> copy; synchronized (map) { - copy = new ArrayList<>(map.values()); + copy = new ArrayList<ConnectionsRef>(map.values()); } - ArrayList<ConnectionsRef> removed = new ArrayList<>(); + ArrayList<ConnectionsRef> removed = new ArrayList<ConnectionsRef>(); Connections conns; for (ConnectionsRef ref : copy) { conns = ref.getConnections();