test/java/awt/datatransfer/SystemFlavorMap/AddFlavorTest.java

Print this page

        

@@ -21,15 +21,14 @@
  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
 
-import sun.awt.datatransfer.DataTransferer;
-
 import java.awt.datatransfer.DataFlavor;
 import java.awt.datatransfer.SystemFlavorMap;
 import java.util.*;
+import java.nio.charset.Charset;
 
 /*
  * @test
  * @summary To test SystemFlavorMap method:
  *          addFlavorForUnencodedNative(String nat, DataFlavor flav)

@@ -68,21 +67,12 @@
         for (String key : flavorMap.getFlavorsForNatives(null).keySet()) {
             Set<DataFlavor> flavorsSet = new HashSet<>(flavorMap.getFlavorsForNative(key));
             // construct a unique String native
             key = key.concat("TEST");
 
-            for (DataFlavor element : flavorsSet)
+            for (DataFlavor element : flavorsSet) {
                 flavorMap.addFlavorForUnencodedNative(key, element);
-
-            // This part is valid only for X-based graphical systems
-            if (!System.getProperty("os.name").startsWith("Win") && !System.getProperty("os.name").startsWith("Mac") ) {
-                if (key.contains("/")) {
-                    Set<DataFlavor> fls = DataTransferer.getInstance().getPlatformMappingsForNative(key);
-                    flavorsSet.addAll(fls);
-                    if (!fls.isEmpty() && key.startsWith("text/"))
-                        flavorsSet.addAll(convertMimeTypeToDataFlavors(key));
-                }
             }
             hashVerify.put(key, new Vector(flavorsSet));
         }
 
         // Assertions: After establishing "new" mappings, verify that the defined

@@ -101,16 +91,14 @@
             compareFlavors(flavorMap.getFlavorsForNative(key), hashVerify.get(key), key);
         }
     }
 
     void compareFlavors(List<DataFlavor> flavors1, List<DataFlavor> flavors2, String key){
-        DataTransferer.DataFlavorComparator comparator = new DataTransferer.DataFlavorComparator();
         for (DataFlavor flavor1 : flavors1) {
             boolean result = false;
             for (DataFlavor flavor2 : flavors2) {
-                if (comparator.compare(flavor1, flavor2) == 0)
-                    result = true;
+                if (flavor1.equals(flavor2)) result = true;
             }
             if (!result)
                 throw new RuntimeException("\n*** Error in verifyNewMappings()" +
                         "\nmethod1: addFlavorForUnencodedNative(String nat, DataFlavor flav)"  +
                         "\nmethod2: List getFlavorsForNative(String nat)" +

@@ -123,11 +111,11 @@
     }
 
     Set<DataFlavor> convertMimeTypeToDataFlavors(String baseType) throws Exception {
         Set<DataFlavor> result = new LinkedHashSet<>();
 
-        for (String charset : DataTransferer.standardEncodings()) {
+        for (String charset : getStandardEncodings()) {
             for (String txtClass : new String[]{"java.io.InputStream", "java.nio.ByteBuffer", "\"[B\""}) {
                 String mimeType = baseType + ";charset=" + charset + ";class=" + txtClass;
 
                 if ("text/html".equals(baseType)) {
                     for (String documentType : new String[]{"all", "selection", "fragment"})

@@ -140,7 +128,19 @@
                 }
             }
         }
         return result;
     }
+
+    Set<String> getStandardEncodings() {
+        Set<String> tempSet = new HashSet<>();
+        tempSet.add("US-ASCII");
+        tempSet.add("ISO-8859-1");
+        tempSet.add("UTF-8");
+        tempSet.add("UTF-16BE");
+        tempSet.add("UTF-16LE");
+        tempSet.add("UTF-16");
+        tempSet.add(Charset.defaultCharset().name());
+        return tempSet;
+    }
 }