< prev index next >

src/share/classes/sun/awt/SunToolkit.java

Print this page

        

*** 713,748 **** public static boolean getSunAwtErasebackgroundonresize() { return AccessController.doPrivileged(new GetBooleanAction("sun.awt.erasebackgroundonresize")); } ! static final SoftCache imgCache = new SoftCache(); static Image getImageFromHash(Toolkit tk, URL url) { checkPermissions(url); ! synchronized (imgCache) { ! Image img = (Image)imgCache.get(url); if (img == null) { try { img = tk.createImage(new URLImageSource(url)); ! imgCache.put(url, img); } catch (Exception e) { } } return img; } } static Image getImageFromHash(Toolkit tk, String filename) { checkPermissions(filename); ! synchronized (imgCache) { ! Image img = (Image)imgCache.get(filename); if (img == null) { try { img = tk.createImage(new FileImageSource(filename)); ! imgCache.put(filename, img); } catch (Exception e) { } } return img; } --- 713,751 ---- public static boolean getSunAwtErasebackgroundonresize() { return AccessController.doPrivileged(new GetBooleanAction("sun.awt.erasebackgroundonresize")); } ! static final SoftCache fileImgCache = new SoftCache(); ! ! static final SoftCache urlImgCache = new SoftCache(); static Image getImageFromHash(Toolkit tk, URL url) { checkPermissions(url); ! synchronized (urlImgCache) { ! String key = url.toString(); ! Image img = (Image)urlImgCache.get(key); if (img == null) { try { img = tk.createImage(new URLImageSource(url)); ! urlImgCache.put(key, img); } catch (Exception e) { } } return img; } } static Image getImageFromHash(Toolkit tk, String filename) { checkPermissions(filename); ! synchronized (fileImgCache) { ! Image img = (Image)fileImgCache.get(filename); if (img == null) { try { img = tk.createImage(new FileImageSource(filename)); ! fileImgCache.put(filename, img); } catch (Exception e) { } } return img; }
*** 756,787 **** return getImageFromHash(this, url); } protected Image getImageWithResolutionVariant(String fileName, String resolutionVariantName) { ! synchronized (imgCache) { Image image = getImageFromHash(this, fileName); if (image instanceof MultiResolutionImage) { return image; } Image resolutionVariant = getImageFromHash(this, resolutionVariantName); image = createImageWithResolutionVariant(image, resolutionVariant); ! imgCache.put(fileName, image); return image; } } protected Image getImageWithResolutionVariant(URL url, URL resolutionVariantURL) { ! synchronized (imgCache) { Image image = getImageFromHash(this, url); if (image instanceof MultiResolutionImage) { return image; } Image resolutionVariant = getImageFromHash(this, resolutionVariantURL); image = createImageWithResolutionVariant(image, resolutionVariant); ! imgCache.put(url, image); return image; } } --- 759,791 ---- return getImageFromHash(this, url); } protected Image getImageWithResolutionVariant(String fileName, String resolutionVariantName) { ! synchronized (fileImgCache) { Image image = getImageFromHash(this, fileName); if (image instanceof MultiResolutionImage) { return image; } Image resolutionVariant = getImageFromHash(this, resolutionVariantName); image = createImageWithResolutionVariant(image, resolutionVariant); ! fileImgCache.put(fileName, image); return image; } } protected Image getImageWithResolutionVariant(URL url, URL resolutionVariantURL) { ! synchronized (urlImgCache) { Image image = getImageFromHash(this, url); if (image instanceof MultiResolutionImage) { return image; } Image resolutionVariant = getImageFromHash(this, resolutionVariantURL); image = createImageWithResolutionVariant(image, resolutionVariant); ! String key = url.toString(); ! urlImgCache.put(key, image); return image; } }
*** 882,893 **** } } return null; } ! protected static boolean imageCached(Object key) { ! return imgCache.containsKey(key); } protected static boolean imageExists(String filename) { if (filename != null) { checkPermissions(filename); --- 886,902 ---- } } return null; } ! protected static boolean imageCached(String fileName) { ! return fileImgCache.containsKey(fileName); ! } ! ! protected static boolean imageCached(URL url) { ! String key = url.toString(); ! return urlImgCache.containsKey(key); } protected static boolean imageExists(String filename) { if (filename != null) { checkPermissions(filename);
< prev index next >