classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [cp-patches] Re: imageio/ImageReader|Writer check *Listeners


From: Andreas Tobler
Subject: Re: [cp-patches] Re: imageio/ImageReader|Writer check *Listeners
Date: Tue, 04 Oct 2005 17:49:57 +0200
User-agent: Mozilla Thunderbird 1.0.5 (Macintosh/20050711)

Thomas Fitzsimmons wrote:

I replied to the previous message before seeing this one.  Yes, this way
is shorter/better.  Please commit.

Thank you. I committed the attached one.

Andreas


Index: javax/imageio/ImageReader.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/imageio/ImageReader.java,v
retrieving revision 1.6
diff -u -r1.6 ImageReader.java
--- javax/imageio/ImageReader.java      2 Oct 2005 05:29:55 -0000       1.6
+++ javax/imageio/ImageReader.java      4 Oct 2005 15:41:37 -0000
@@ -1,5 +1,5 @@
 /* ImageReader.java -- Decodes raster images.
-   Copyright (C) 2004  Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005  Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -185,8 +185,9 @@
   {
     if (listener == null)
       return;
-
-    progressListeners.add(listener);    
+    if (progressListeners == null)
+      progressListeners = new ArrayList ();
+    progressListeners.add(listener);
   }
 
   /**
@@ -199,10 +200,11 @@
   {
     if (listener == null)
       return;
-    
-    updateListeners.add(listener);    
+    if (updateListeners == null)
+      updateListeners = new ArrayList ();
+    updateListeners.add(listener);
   }
-  
+
   /**
    * Install a read warning listener.  This method will return
    * immediately if listener is null.  Warning messages sent to this
@@ -216,8 +218,9 @@
   {
     if (listener == null)
       return;
-    
-    warningListeners.add(listener);    
+    if (warningListeners == null)
+      warningListeners = new ArrayList ();
+    warningListeners.add(listener);
   }
 
   /**
@@ -763,12 +766,16 @@
    */
   protected void processImageComplete()
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.imageComplete (this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.imageComplete (this);
+         }
       }
   }
 
@@ -782,15 +789,18 @@
    */
   protected void processImageProgress(float percentageDone)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+     if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.imageProgress(this, percentageDone);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.imageProgress(this, percentageDone);
+         }
       }
   }
-
   /**
    * Notifies all installed read progress listeners, by calling their
    * imageStarted methods, that image loading has started on the given
@@ -801,12 +811,16 @@
    */
   protected void processImageStarted(int imageIndex)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+     if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.imageStarted(this, imageIndex);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.imageStarted(this, imageIndex);
+         }
       }
   }
 
@@ -829,13 +843,16 @@
                                    int width, int height, int periodX,
                                    int periodY, int[] bands)
   {
-    Iterator it = updateListeners.iterator();
-
-    while (it.hasNext())
+    if (updateListeners != null)
       {
-       IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
-       listener.imageUpdate(this, image, minX, minY, width, height, periodX,
-                            periodY, bands);
+       Iterator it = updateListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
+           listener.imageUpdate(this, image, minX, minY, width, height,
+                                periodX, periodY, bands);
+         }
       }
   }
 
@@ -848,12 +865,15 @@
    */
   protected void processPassComplete(BufferedImage image)
   {
-    Iterator it = updateListeners.iterator();
-
-    while (it.hasNext())
+    if (updateListeners != null)
       {
-       IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
-       listener.passComplete(this, image);
+       Iterator it = updateListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
+           listener.passComplete(this, image);
+         }
       }
   }
 
@@ -879,13 +899,16 @@
                                    int maxPass, int minX, int minY,
                                    int periodX, int periodY, int[] bands)
   {
-    Iterator it = updateListeners.iterator();
-
-    while (it.hasNext())
+    if (updateListeners != null)
       {
-       IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
-       listener.passStarted(this, image, pass, minPass, maxPass, minX, minY,
-                            periodX, periodY, bands);
+       Iterator it = updateListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
+           listener.passStarted(this, image, pass, minPass, maxPass, minX,
+                                minY, periodX, periodY, bands);
+         }
       }
   }
 
@@ -895,15 +918,18 @@
    */
   protected void processReadAborted()
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+     if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.readAborted(this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.readAborted(this);
+         }
       }
   }
-
   /**
    * Notifies all installed read progress listeners, by calling their
    * sequenceComplete methods, that a sequence of images has completed
@@ -911,12 +937,16 @@
    */
   protected void processSequenceComplete()
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+     if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.sequenceComplete(this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.sequenceComplete(this);
+         }
       }
   }
 
@@ -929,12 +959,17 @@
    */
   protected void processSequenceStarted(int minIndex)
   {
-    Iterator it = progressListeners.iterator();
 
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.sequenceStarted(this, minIndex);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.sequenceStarted(this, minIndex);
+         }
       }
   }
 
@@ -945,12 +980,16 @@
    */
   protected void processThumbnailComplete()
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.thumbnailComplete(this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.thumbnailComplete(this);
+         }
       }
   }
 
@@ -963,12 +1002,15 @@
    */
   protected void processThumbnailPassComplete(BufferedImage thumbnail)
   {
-    Iterator it = updateListeners.iterator();
-
-    while (it.hasNext())
+    if (updateListeners != null)
       {
-       IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
-       listener.thumbnailPassComplete(this, thumbnail);
+       Iterator it = updateListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
+           listener.thumbnailPassComplete(this, thumbnail);
+         }
       }
   }
 
@@ -995,16 +1037,20 @@
                                             int minY, int periodX, int periodY,
                                             int[] bands)
   {
-    Iterator it = updateListeners.iterator();
-
-    while (it.hasNext())
+    if (updateListeners != null)
       {
-       IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
-       listener.thumbnailPassStarted(this, thumbnail, pass, minPass, maxPass,
-                                     minX, minY, periodX, periodY, bands);
+       Iterator it = updateListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
+           listener.thumbnailPassStarted(this, thumbnail, pass, minPass,
+                                         maxPass, minX, minY, periodX,
+                                         periodY, bands);
+         }
       }
   }
-  
+
   /**
    * Notifies all installed read progress listeners that a certain
    * percentage of a thumbnail has been loaded, by calling their
@@ -1015,12 +1061,16 @@
    */
   protected void processThumbnailProgress(float percentageDone)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.thumbnailProgress(this, percentageDone);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.thumbnailProgress(this, percentageDone);
+         }
       }
   }
 
@@ -1036,12 +1086,16 @@
    */
   protected void processThumbnailStarted(int imageIndex, int thumbnailIndex)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOReadProgressListener listener = (IIOReadProgressListener) it.next();
-       listener.thumbnailStarted(this, imageIndex, thumbnailIndex);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadProgressListener listener =
+             (IIOReadProgressListener) it.next();
+           listener.thumbnailStarted(this, imageIndex, thumbnailIndex);
+         }
       }
   }
 
@@ -1064,13 +1118,16 @@
                                        int width, int height, int periodX,
                                        int periodY, int[] bands)
   {
-    Iterator it = updateListeners.iterator();
-
-    while (it.hasNext())
+    if (updateListeners != null)
       {
-       IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
-       listener.thumbnailUpdate(this, image, minX, minY, width, height,
-                                periodX, periodY, bands);
+       Iterator it = updateListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadUpdateListener listener = (IIOReadUpdateListener) it.next();
+           listener.thumbnailUpdate(this, image, minX, minY, width, height,
+                                    periodX, periodY, bands);
+         }
       }
   }
 
@@ -1086,13 +1143,16 @@
   {
     if (warning == null)
       throw new IllegalArgumentException ("null argument");
-
-    Iterator it = warningListeners.iterator();
-
-    while (it.hasNext())
+    if (warningListeners != null)
       {
-       IIOReadWarningListener listener = (IIOReadWarningListener) it.next();
-       listener.warningOccurred(this, warning);
+       Iterator it = warningListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOReadWarningListener listener =
+             (IIOReadWarningListener) it.next();
+           listener.warningOccurred(this, warning);
+         }
       }
   }
 
@@ -1205,10 +1265,12 @@
   {
     if (listener == null)
       return;
- 
-    progressListeners.remove(listener);
+    if (progressListeners != null)
+      {
+       progressListeners.remove(listener);
+      }
   }
-  
+
   /**
    * Uninstall the given read update listener.
    *
@@ -1218,10 +1280,13 @@
   {
     if (listener == null)
       return;
-    
-    updateListeners.remove(listener);
+
+    if (updateListeners != null)
+      {
+       updateListeners.remove(listener);
+      }
   }
-  
+
   /**
    * Uninstall the given read warning listener.
    *
@@ -1231,8 +1296,10 @@
   {
     if (listener == null)
       return;
-    
-    warningListeners.remove(listener);
+    if (warningListeners != null)
+      {
+       warningListeners.remove(listener);
+      }
   }
 
   /**
Index: javax/imageio/ImageWriter.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/imageio/ImageWriter.java,v
retrieving revision 1.7
diff -u -r1.7 ImageWriter.java
--- javax/imageio/ImageWriter.java      2 Oct 2005 05:29:55 -0000       1.7
+++ javax/imageio/ImageWriter.java      4 Oct 2005 15:41:39 -0000
@@ -1,5 +1,5 @@
 /* ImageWriter.java -- Encodes raster images.
-   Copyright (C) 2004  Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005  Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -78,41 +78,41 @@
    * All locales available for localization of warning messages, or
    * null if localization is not supported.
    */
-  protected Locale[] availableLocales;
+  protected Locale[] availableLocales = null;
 
   /**
    * The current locale used to localize warning messages, or null if
    * no locale has been set.
    */
-  protected Locale locale;
+  protected Locale locale = null;
 
   /**
    * The image writer SPI that instantiated this writer.
    */
-  protected ImageWriterSpi originatingProvider;
+  protected ImageWriterSpi originatingProvider = null;
 
   /**
    * An ImageInputStream to which image data is written.
    */
-  protected Object output;
+  protected Object output = null;
 
   /**
    * A list of installed progress listeners.  Initially null, meaning
    * no installed listeners.
    */
-  protected List progressListeners = new ArrayList();
+  protected List progressListeners = null;
 
   /**
    * A list of installed warning listeners.  Initially null, meaning
    * no installed listeners.
    */
-  protected List warningListeners = new ArrayList();
+  protected List warningListeners = null;
 
   /**
    * A list of warning locales corresponding with the list of
    * installed warning listeners.  Initially null, meaning no locales.
    */
-  protected List warningLocales = new ArrayList();
+  protected List warningLocales = null;
 
   /**
    * Construct an image writer.
@@ -169,10 +169,11 @@
   {
     if (listener == null)
       return;
-    
+    if (progressListeners == null)
+      progressListeners = new ArrayList ();
     progressListeners.add(listener);
   }
-  
+
   /**
    * Install a write warning listener.  This method will return
    * immediately if listener is null.  Warning messages sent to this
@@ -186,7 +187,8 @@
   {
     if (listener == null)
       return;
-    
+    if (warningListeners == null)
+      warningListeners = new ArrayList ();
     warningListeners.add(listener);
   }
 
@@ -561,12 +563,16 @@
    */
   protected void processImageComplete()
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.imageComplete(this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.imageComplete(this);
+         }
       }
   }
 
@@ -580,12 +586,16 @@
    */
   protected void processImageProgress(float percentageDone)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.imageProgress(this, percentageDone);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.imageProgress(this, percentageDone);
+         }
       }
   }
 
@@ -599,12 +609,16 @@
    */
   protected void processImageStarted(int imageIndex)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.imageStarted(this, imageIndex);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.imageStarted(this, imageIndex);
+         }
       }
   }
 
@@ -615,12 +629,16 @@
    */
   protected void processThumbnailComplete()
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.thumbnailComplete(this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.thumbnailComplete(this);
+         }
       }
   }
 
@@ -634,12 +652,16 @@
    */
   protected void processThumbnailProgress(float percentageDone)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.thumbnailProgress(this, percentageDone);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.thumbnailProgress(this, percentageDone);
+         }
       }
   }
 
@@ -655,12 +677,16 @@
    */
   protected void processThumbnailStarted(int imageIndex, int thumbnailIndex)
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.thumbnailStarted(this, imageIndex, thumbnailIndex);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.thumbnailStarted(this, imageIndex, thumbnailIndex);
+         }
       }
   }
 
@@ -676,12 +702,16 @@
    */
   protected void processWarningOccurred(int imageIndex, String warning)
   {
-    Iterator it = warningListeners.iterator();
-
-    while (it.hasNext())
+     if (warningListeners != null)
       {
-       IIOWriteWarningListener listener = (IIOWriteWarningListener) it.next();
-       listener.warningOccurred(this, imageIndex, warning);
+       Iterator it = warningListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteWarningListener listener =
+             (IIOWriteWarningListener) it.next();
+           listener.warningOccurred(this, imageIndex, warning);
+         }
       }
   }
 
@@ -691,12 +721,16 @@
    */
   protected void processWriteAborted() 
   {
-    Iterator it = progressListeners.iterator();
-
-    while (it.hasNext())
+    if (progressListeners != null)
       {
-       IIOWriteProgressListener listener = (IIOWriteProgressListener) 
it.next();
-       listener.writeAborted(this);
+       Iterator it = progressListeners.iterator();
+
+       while (it.hasNext())
+         {
+           IIOWriteProgressListener listener =
+             (IIOWriteProgressListener) it.next();
+           listener.writeAborted(this);
+         }
       }
   }
 
@@ -705,7 +739,10 @@
    */
   public void removeAllIIOWriteProgressListeners()
   {
-    progressListeners.clear();
+    if (progressListeners != null)
+      {
+       progressListeners.clear();
+      }
   }
 
   /**
@@ -713,22 +750,26 @@
    */
   public void removeAllIIOWriteWarningListeners()
   {
-    progressListeners.clear();
+    if (progressListeners != null)
+      {
+       progressListeners.clear();
+      }
   }
-  
+
   /**
    * Uninstall the given write progress listener.
    *
    * @param listener the listener to remove
    */
-  public void removeIIOWriteProgressListener (IIOWriteProgressListener 
listener) 
+  public void removeIIOWriteProgressListener (IIOWriteProgressListener 
listener)
   {
     if (listener == null)
       return;
-    
-    progressListeners.remove(listener);
+    if (progressListeners != null)
+      {
+       progressListeners.remove(listener);
+      }
   }
-  
   /**
    * Uninstall the given write warning listener.
    *
@@ -738,10 +779,11 @@
   {
     if (listener == null)
       return;
-    
-    warningListeners.remove(listener);
+    if (warningListeners != null)
+      {
+       warningListeners.remove(listener);
+      }
   }
-  
   /**
    * Reset this writer's internal state.
    */

reply via email to

[Prev in Thread] Current Thread [Next in Thread]