src/solaris/classes/sun/awt/X11/XDataTransferer.java

Print this page
rev 9717 : 8039642: Fix raw and unchecked warnings in sun.awt.*
Reviewed-by:


  31 import java.awt.datatransfer.Transferable;
  32 import java.awt.datatransfer.UnsupportedFlavorException;
  33 
  34 import java.awt.image.BufferedImage;
  35 import java.awt.image.ColorModel;
  36 import java.awt.image.WritableRaster;
  37 
  38 import java.io.BufferedReader;
  39 import java.io.InputStream;
  40 import java.io.InputStreamReader;
  41 import java.io.IOException;
  42 
  43 import java.net.URI;
  44 import java.net.URISyntaxException;
  45 
  46 import java.util.ArrayList;
  47 import java.util.Iterator;
  48 import java.util.List;
  49 
  50 import javax.imageio.ImageIO;

  51 import javax.imageio.ImageTypeSpecifier;
  52 import javax.imageio.ImageWriter;
  53 import javax.imageio.spi.ImageWriterSpi;
  54 
  55 import sun.awt.datatransfer.DataTransferer;
  56 import sun.awt.datatransfer.ToolkitThreadBlockedHandler;
  57 
  58 import java.io.ByteArrayOutputStream;
  59 import java.util.stream.Stream;
  60 
  61 /**
  62  * Platform-specific support for the data transfer subsystem.
  63  */
  64 public class XDataTransferer extends DataTransferer {
  65     static final XAtom FILE_NAME_ATOM = XAtom.get("FILE_NAME");
  66     static final XAtom DT_NET_FILE_ATOM = XAtom.get("_DT_NETFILE");
  67     static final XAtom PNG_ATOM = XAtom.get("PNG");
  68     static final XAtom JFIF_ATOM = XAtom.get("JFIF");
  69     static final XAtom TARGETS_ATOM = XAtom.get("TARGETS");
  70     static final XAtom INCR_ATOM = XAtom.get("INCR");


 337             return flavors;
 338         }
 339 
 340         DataFlavor df = null;
 341 
 342         try {
 343             df = new DataFlavor(nat);
 344         } catch (Exception e) {
 345             // The string doesn't constitute a valid MIME type.
 346             return flavors;
 347         }
 348 
 349         DataFlavor value = df;
 350         final String primaryType = df.getPrimaryType();
 351         final String baseType = primaryType + "/" + df.getSubType();
 352 
 353         // For text formats we map natives to MIME strings instead of data
 354         // flavors to enable dynamic text native-to-flavor mapping generation.
 355         // See SystemFlavorMap.getFlavorsForNative() for details.
 356         if ("image".equals(primaryType)) {
 357             Iterator readers = ImageIO.getImageReadersByMIMEType(baseType);
 358             if (readers.hasNext()) {
 359                 flavors.add(DataFlavor.imageFlavor);
 360             }
 361         }
 362 
 363         flavors.add(value);
 364 
 365         return flavors;
 366     }
 367 
 368     private static ImageTypeSpecifier defaultSpecifier = null;
 369 
 370     private ImageTypeSpecifier getDefaultImageTypeSpecifier() {
 371         if (defaultSpecifier == null) {
 372             ColorModel model = ColorModel.getRGBdefault();
 373             WritableRaster raster =
 374                 model.createCompatibleWritableRaster(10, 10);
 375 
 376             BufferedImage bufferedImage =
 377                 new BufferedImage(model, raster, model.isAlphaPremultiplied(),




  31 import java.awt.datatransfer.Transferable;
  32 import java.awt.datatransfer.UnsupportedFlavorException;
  33 
  34 import java.awt.image.BufferedImage;
  35 import java.awt.image.ColorModel;
  36 import java.awt.image.WritableRaster;
  37 
  38 import java.io.BufferedReader;
  39 import java.io.InputStream;
  40 import java.io.InputStreamReader;
  41 import java.io.IOException;
  42 
  43 import java.net.URI;
  44 import java.net.URISyntaxException;
  45 
  46 import java.util.ArrayList;
  47 import java.util.Iterator;
  48 import java.util.List;
  49 
  50 import javax.imageio.ImageIO;
  51 import javax.imageio.ImageReader;
  52 import javax.imageio.ImageTypeSpecifier;
  53 import javax.imageio.ImageWriter;
  54 import javax.imageio.spi.ImageWriterSpi;
  55 
  56 import sun.awt.datatransfer.DataTransferer;
  57 import sun.awt.datatransfer.ToolkitThreadBlockedHandler;
  58 
  59 import java.io.ByteArrayOutputStream;
  60 import java.util.stream.Stream;
  61 
  62 /**
  63  * Platform-specific support for the data transfer subsystem.
  64  */
  65 public class XDataTransferer extends DataTransferer {
  66     static final XAtom FILE_NAME_ATOM = XAtom.get("FILE_NAME");
  67     static final XAtom DT_NET_FILE_ATOM = XAtom.get("_DT_NETFILE");
  68     static final XAtom PNG_ATOM = XAtom.get("PNG");
  69     static final XAtom JFIF_ATOM = XAtom.get("JFIF");
  70     static final XAtom TARGETS_ATOM = XAtom.get("TARGETS");
  71     static final XAtom INCR_ATOM = XAtom.get("INCR");


 338             return flavors;
 339         }
 340 
 341         DataFlavor df = null;
 342 
 343         try {
 344             df = new DataFlavor(nat);
 345         } catch (Exception e) {
 346             // The string doesn't constitute a valid MIME type.
 347             return flavors;
 348         }
 349 
 350         DataFlavor value = df;
 351         final String primaryType = df.getPrimaryType();
 352         final String baseType = primaryType + "/" + df.getSubType();
 353 
 354         // For text formats we map natives to MIME strings instead of data
 355         // flavors to enable dynamic text native-to-flavor mapping generation.
 356         // See SystemFlavorMap.getFlavorsForNative() for details.
 357         if ("image".equals(primaryType)) {
 358             Iterator<ImageReader> readers = ImageIO.getImageReadersByMIMEType(baseType);
 359             if (readers.hasNext()) {
 360                 flavors.add(DataFlavor.imageFlavor);
 361             }
 362         }
 363 
 364         flavors.add(value);
 365 
 366         return flavors;
 367     }
 368 
 369     private static ImageTypeSpecifier defaultSpecifier = null;
 370 
 371     private ImageTypeSpecifier getDefaultImageTypeSpecifier() {
 372         if (defaultSpecifier == null) {
 373             ColorModel model = ColorModel.getRGBdefault();
 374             WritableRaster raster =
 375                 model.createCompatibleWritableRaster(10, 10);
 376 
 377             BufferedImage bufferedImage =
 378                 new BufferedImage(model, raster, model.isAlphaPremultiplied(),