diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-09 19:58:05 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-09 19:58:05 +0000 |
commit | 65bf3316cf384588453604be6b4f0ed3751a8b0f (patch) | |
tree | 996a5f57d4a68c53473382e45cb22f574cb3e4db /libjava/classpath/javax/imageio | |
parent | 8fc56618a84446beccd45b80381cdfe0e94050df (diff) | |
download | ppe42-gcc-65bf3316cf384588453604be6b4f0ed3751a8b0f.tar.gz ppe42-gcc-65bf3316cf384588453604be6b4f0ed3751a8b0f.zip |
Merged gcj-eclipse branch to trunk.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120621 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/javax/imageio')
12 files changed, 161 insertions, 118 deletions
diff --git a/libjava/classpath/javax/imageio/IIOImage.java b/libjava/classpath/javax/imageio/IIOImage.java index 0d987476239..bd69bae5f1e 100644 --- a/libjava/classpath/javax/imageio/IIOImage.java +++ b/libjava/classpath/javax/imageio/IIOImage.java @@ -79,8 +79,7 @@ public class IIOImage /** * A list of BufferedImage thumbnails of this image. */ - // for 1.5 these lists are List<? extends BufferedImage> - protected List thumbnails; + protected List<? extends BufferedImage> thumbnails; /** * Construct an IIOImage containing raster image data, thumbnails @@ -92,7 +91,8 @@ public class IIOImage * * @exception IllegalArgumentException if raster is null */ - public IIOImage (Raster raster, List thumbnails, IIOMetadata metadata) + public IIOImage (Raster raster, List<? extends BufferedImage> thumbnails, + IIOMetadata metadata) { if (raster == null) throw new IllegalArgumentException ("raster may not be null"); @@ -112,7 +112,8 @@ public class IIOImage * * @exception IllegalArgumentException if image is null */ - public IIOImage (RenderedImage image, List thumbnails, IIOMetadata metadata) + public IIOImage (RenderedImage image, List<? extends BufferedImage> thumbnails, + IIOMetadata metadata) { if (image == null) throw new IllegalArgumentException ("image may not be null"); @@ -192,7 +193,7 @@ public class IIOImage * * @return a list of thumbnails or null */ - public List getThumbnails() + public List<? extends BufferedImage> getThumbnails() { return thumbnails; } @@ -260,7 +261,7 @@ public class IIOImage * * @param thumbnails a new list of thumbnails or null */ - public void setThumbnails (List thumbnails) + public void setThumbnails (List<? extends BufferedImage> thumbnails) { this.thumbnails = thumbnails; } diff --git a/libjava/classpath/javax/imageio/ImageIO.java b/libjava/classpath/javax/imageio/ImageIO.java index b2304a78304..a3d967726b9 100644 --- a/libjava/classpath/javax/imageio/ImageIO.java +++ b/libjava/classpath/javax/imageio/ImageIO.java @@ -315,27 +315,37 @@ public final class ImageIO } } - private static final class ImageReaderIterator implements Iterator + private static final class ImageReaderIterator + implements Iterator<ImageReader> { - Iterator it; + Iterator<ImageReaderSpi> it; Object readerExtension; - public ImageReaderIterator(Iterator it, Object readerExtension) + public ImageReaderIterator(Iterator<ImageReaderSpi> it, + Object readerExtension) { this.it = it; this.readerExtension = readerExtension; } + + public ImageReaderIterator(Iterator<ImageReaderSpi> it) + { + this.it = it; + } public boolean hasNext() { return it.hasNext(); } - public Object next() + public ImageReader next() { try { - return ((ImageReaderSpi) it.next()).createReaderInstance(readerExtension); + ImageReaderSpi spi = it.next(); + return (readerExtension == null + ? spi.createReaderInstance() + : spi.createReaderInstance(readerExtension)); } catch (IOException e) { @@ -349,27 +359,37 @@ public final class ImageIO } } - private static final class ImageWriterIterator implements Iterator + private static final class ImageWriterIterator + implements Iterator<ImageWriter> { - Iterator it; + Iterator<ImageWriterSpi> it; Object writerExtension; - public ImageWriterIterator(Iterator it, Object writerExtension) + public ImageWriterIterator(Iterator<ImageWriterSpi> it, + Object writerExtension) { this.it = it; this.writerExtension = writerExtension; } + + public ImageWriterIterator(Iterator<ImageWriterSpi> it) + { + this.it = it; + } public boolean hasNext() { return it.hasNext(); } - public Object next() + public ImageWriter next() { try { - return ((ImageWriterSpi) it.next()).createWriterInstance(writerExtension); + ImageWriterSpi spi = it.next(); + return (writerExtension == null + ? spi.createWriterInstance() + : spi.createWriterInstance(writerExtension)); } catch (IOException e) { @@ -386,13 +406,14 @@ public final class ImageIO private static File cacheDirectory; private static boolean useCache = true; - private static Iterator getReadersByFilter(Class type, - ServiceRegistry.Filter filter, - Object readerExtension) + private static Iterator<ImageReader> getReadersByFilter(Class<ImageReaderSpi> type, + ServiceRegistry.Filter filter, + Object readerExtension) { try { - Iterator it = getRegistry().getServiceProviders(type, filter, true); + Iterator<ImageReaderSpi> it + = getRegistry().getServiceProviders(type, filter, true); return new ImageReaderIterator(it, readerExtension); } catch (IllegalArgumentException e) @@ -401,13 +422,14 @@ public final class ImageIO } } - private static Iterator getWritersByFilter(Class type, - ServiceRegistry.Filter filter, - Object writerExtension) + private static Iterator<ImageWriter> getWritersByFilter(Class<ImageWriterSpi> type, + ServiceRegistry.Filter filter, + Object writerExtension) { try { - Iterator it = getRegistry().getServiceProviders(type, filter, true); + Iterator<ImageWriterSpi> it + = getRegistry().getServiceProviders(type, filter, true); return new ImageWriterIterator(it, writerExtension); } catch (IllegalArgumentException e) @@ -436,7 +458,7 @@ public final class ImageIO * * @exception IllegalArgumentException if formatName is null */ - public static Iterator getImageReadersByFormatName(String formatName) + public static Iterator<ImageReader> getImageReadersByFormatName(String formatName) { if (formatName == null) throw new IllegalArgumentException("formatName may not be null"); @@ -457,7 +479,7 @@ public final class ImageIO * * @exception IllegalArgumentException if MIMEType is null */ - public static Iterator getImageReadersByMIMEType(String MIMEType) + public static Iterator<ImageReader> getImageReadersByMIMEType(String MIMEType) { if (MIMEType == null) throw new IllegalArgumentException("MIMEType may not be null"); @@ -477,7 +499,7 @@ public final class ImageIO * * @exception IllegalArgumentException if fileSuffix is null */ - public static Iterator getImageReadersBySuffix(String fileSuffix) + public static Iterator<ImageReader> getImageReadersBySuffix(String fileSuffix) { if (fileSuffix == null) throw new IllegalArgumentException("formatName may not be null"); @@ -497,7 +519,7 @@ public final class ImageIO * * @exception IllegalArgumentException if formatName is null */ - public static Iterator getImageWritersByFormatName(String formatName) + public static Iterator<ImageWriter> getImageWritersByFormatName(String formatName) { if (formatName == null) throw new IllegalArgumentException("formatName may not be null"); @@ -518,7 +540,7 @@ public final class ImageIO * * @exception IllegalArgumentException if MIMEType is null */ - public static Iterator getImageWritersByMIMEType(String MIMEType) + public static Iterator<ImageWriter> getImageWritersByMIMEType(String MIMEType) { if (MIMEType == null) throw new IllegalArgumentException("MIMEType may not be null"); @@ -538,7 +560,7 @@ public final class ImageIO * * @exception IllegalArgumentException if fileSuffix is null */ - public static Iterator getImageWritersBySuffix(String fileSuffix) + public static Iterator<ImageWriter> getImageWritersBySuffix(String fileSuffix) { if (fileSuffix == null) throw new IllegalArgumentException("fileSuffix may not be null"); @@ -1068,8 +1090,7 @@ public final class ImageIO if (writer == null) throw new IllegalArgumentException ("null argument"); - ImageWriterSpi spi = (ImageWriterSpi) getRegistry() - .getServiceProviderByClass(writer.getClass()); + ImageWriterSpi spi = writer.getOriginatingProvider(); String[] readerSpiNames = spi.getImageReaderSpiNames(); @@ -1098,14 +1119,16 @@ public final class ImageIO * * @return an iterator over a collection of image readers */ - public static Iterator getImageReaders (Object input) + public static Iterator<ImageReader> getImageReaders (Object input) { if (input == null) throw new IllegalArgumentException ("null argument"); - return getRegistry().getServiceProviders (ImageReaderSpi.class, - new ReaderObjectFilter(input), - true); + Iterator<ImageReaderSpi> spiIterator + = getRegistry().getServiceProviders (ImageReaderSpi.class, + new ReaderObjectFilter(input), + true); + return new ImageReaderIterator(spiIterator); } /** @@ -1118,16 +1141,18 @@ public final class ImageIO * * @return an iterator over a collection of image writers */ - public static Iterator getImageWriters (ImageTypeSpecifier type, + public static Iterator<ImageWriter> getImageWriters (ImageTypeSpecifier type, String formatName) { if (type == null || formatName == null) throw new IllegalArgumentException ("null argument"); - return getRegistry().getServiceProviders (ImageWriterSpi.class, - new WriterObjectFilter(type, - formatName), - true); + final Iterator<ImageWriterSpi> spiIterator + = getRegistry().getServiceProviders (ImageWriterSpi.class, + new WriterObjectFilter(type, + formatName), + true); + return new ImageWriterIterator(spiIterator); } /** @@ -1149,8 +1174,7 @@ public final class ImageIO if (reader == null) throw new IllegalArgumentException ("null argument"); - ImageReaderSpi spi = (ImageReaderSpi) getRegistry() - .getServiceProviderByClass(reader.getClass()); + ImageReaderSpi spi = reader.getOriginatingProvider(); String[] writerSpiNames = spi.getImageWriterSpiNames(); @@ -1184,15 +1208,33 @@ public final class ImageIO * @exception IllegalArgumentException if either reader or writer is * null */ - public static Iterator getImageTranscoders (ImageReader reader, - ImageWriter writer) + public static Iterator<ImageTranscoder> getImageTranscoders (ImageReader reader, + ImageWriter writer) { if (reader == null || writer == null) throw new IllegalArgumentException ("null argument"); - return getRegistry().getServiceProviders (ImageTranscoderSpi.class, - new TranscoderFilter (reader, - writer), - true); + final Iterator<ImageTranscoderSpi> spiIterator + = getRegistry().getServiceProviders (ImageTranscoderSpi.class, + new TranscoderFilter (reader, + writer), + true); + return new Iterator<ImageTranscoder>() + { + public boolean hasNext() + { + return spiIterator.hasNext(); + } + + public ImageTranscoder next() + { + return spiIterator.next().createTranscoderInstance(); + } + + public void remove() + { + throw new UnsupportedOperationException(); + } + }; } } diff --git a/libjava/classpath/javax/imageio/ImageReader.java b/libjava/classpath/javax/imageio/ImageReader.java index cdd77d52bad..c7eed06fbdc 100644 --- a/libjava/classpath/javax/imageio/ImageReader.java +++ b/libjava/classpath/javax/imageio/ImageReader.java @@ -116,7 +116,7 @@ public abstract class ImageReader * A list of installed progress listeners. Initially null, meaning * no installed listeners. */ - protected List progressListeners = null; + protected List<IIOReadProgressListener> progressListeners = null; /** * true if this reader should only read data further ahead in the @@ -129,19 +129,19 @@ public abstract class ImageReader * A list of installed update listeners. Initially null, meaning no * installed listeners. */ - protected List updateListeners = null; + protected List<IIOReadUpdateListener> updateListeners = null; /** * A list of installed warning listeners. Initially null, meaning * no installed listeners. */ - protected List warningListeners = null; + protected List<IIOReadWarningListener> warningListeners = null; /** * A list of warning locales corresponding with the list of * installed warning listeners. Initially null, meaning no locales. */ - protected List warningLocales = null; + protected List<Locale> warningLocales = null; /** * Construct an image reader. @@ -371,7 +371,7 @@ public abstract class ImageReader * out-of-bounds * @exception IOException if a read error occurs */ - public abstract Iterator getImageTypes(int imageIndex) + public abstract Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex) throws IOException; /** @@ -1594,7 +1594,7 @@ public abstract class ImageReader * height is greater than Integer.MAX_VALUE */ protected static BufferedImage getDestination (ImageReadParam param, - Iterator imageTypes, + Iterator<ImageTypeSpecifier> imageTypes, int width, int height) throws IIOException @@ -1694,7 +1694,7 @@ public abstract class ImageReader */ public IIOMetadata getImageMetadata (int imageIndex, String formatName, - Set nodeNames) + Set<String> nodeNames) throws IOException { if (formatName == null || nodeNames == null) @@ -1808,7 +1808,7 @@ public abstract class ImageReader * @exception IOException if a read error occurs */ public IIOMetadata getStreamMetadata (String formatName, - Set nodeNames) + Set<String> nodeNames) throws IOException { if (formatName == null || nodeNames == null) @@ -1915,7 +1915,7 @@ public abstract class ImageReader * destination image regions are empty * @exception IOException if a read error occurs */ - public Iterator readAll (Iterator params) + public Iterator<IIOImage> readAll (Iterator<? extends ImageReadParam> params) throws IOException { List l = new ArrayList (); diff --git a/libjava/classpath/javax/imageio/ImageWriter.java b/libjava/classpath/javax/imageio/ImageWriter.java index ef352154164..b49e081f002 100644 --- a/libjava/classpath/javax/imageio/ImageWriter.java +++ b/libjava/classpath/javax/imageio/ImageWriter.java @@ -40,6 +40,7 @@ package javax.imageio; import java.awt.Dimension; import java.awt.Rectangle; +import java.awt.image.BufferedImage; import java.awt.image.Raster; import java.awt.image.RenderedImage; import java.io.IOException; @@ -102,19 +103,19 @@ public abstract class ImageWriter * A list of installed progress listeners. Initially null, meaning * no installed listeners. */ - protected List progressListeners = null; + protected List<IIOWriteProgressListener> progressListeners = null; /** * A list of installed warning listeners. Initially null, meaning * no installed listeners. */ - protected List warningListeners = null; + protected List<IIOWriteWarningListener> warningListeners = null; /** * A list of warning locales corresponding with the list of * installed warning listeners. Initially null, meaning no locales. */ - protected List warningLocales = null; + protected List<Locale> warningLocales = null; /** * Construct an image writer. @@ -1076,7 +1077,7 @@ public abstract class ImageWriter public void prepareInsertEmpty (int imageIndex, ImageTypeSpecifier imageType, int width, int height, IIOMetadata imageMetadata, - List thumbnails, + List<? extends BufferedImage> thumbnails, ImageWriteParam param) throws IOException { @@ -1149,7 +1150,7 @@ public abstract class ImageWriter ImageTypeSpecifier imageType, int width, int height, IIOMetadata imageMetadata, - List thumbnails, + List<? extends BufferedImage> thumbnails, ImageWriteParam param) throws IOException { diff --git a/libjava/classpath/javax/imageio/metadata/IIOMetadataFormat.java b/libjava/classpath/javax/imageio/metadata/IIOMetadataFormat.java index 76e0950a3df..15f2ceb0ba7 100644 --- a/libjava/classpath/javax/imageio/metadata/IIOMetadataFormat.java +++ b/libjava/classpath/javax/imageio/metadata/IIOMetadataFormat.java @@ -106,15 +106,15 @@ public interface IIOMetadataFormat int getObjectArrayMinLength (String elementName); - Class getObjectClass (String elementName); + Class<?> getObjectClass (String elementName); Object getObjectDefaultValue (String elementName); Object[] getObjectEnumerations (String elementName); - Comparable getObjectMaxValue (String elementName); + Comparable<?> getObjectMaxValue (String elementName); - Comparable getObjectMinValue (String elementName); + Comparable<?> getObjectMinValue (String elementName); int getObjectValueType (String elementName); diff --git a/libjava/classpath/javax/imageio/metadata/IIOMetadataFormatImpl.java b/libjava/classpath/javax/imageio/metadata/IIOMetadataFormatImpl.java index aad30447c2f..78fad1a15f0 100644 --- a/libjava/classpath/javax/imageio/metadata/IIOMetadataFormatImpl.java +++ b/libjava/classpath/javax/imageio/metadata/IIOMetadataFormatImpl.java @@ -462,7 +462,7 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat int dataType, boolean required, String defaultValue, - List enumeratedValues) + List<String> enumeratedValues) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); node.setAttributeNode (new IIOMetadataNodeAttrEnumerated (node, @@ -568,8 +568,8 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat node.setUserObject (null); } - protected void addObjectValue (String elementName, Class classType, - boolean required, Object defaultValue) + protected <T> void addObjectValue (String elementName, Class<T> classType, + boolean required, T defaultValue) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); addNodeObject (node, new NodeObject (node, @@ -578,9 +578,9 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat defaultValue)); } - protected void addObjectValue (String elementName, Class classType, - boolean required, Object defaultValue, - List enumeratedValues) + protected <T> void addObjectValue (String elementName, Class<T> classType, + boolean required, T defaultValue, + List<? extends T> enumeratedValues) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); addNodeObject (node, new NodeObjectEnumerated (node, @@ -590,12 +590,13 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat enumeratedValues)); } - protected void addObjectValue (String elementName, Class classType, - Object defaultValue, - Comparable minValue, - Comparable maxValue, - boolean minInclusive, - boolean maxInclusive) + protected <T extends Object & Comparable<? super T>> + void addObjectValue (String elementName, Class<T> classType, + T defaultValue, + Comparable<? super T> minValue, + Comparable<? super T> maxValue, + boolean minInclusive, + boolean maxInclusive) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); addNodeObject (node, new NodeObjectBounded (node, @@ -607,7 +608,7 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat maxInclusive)); } - protected void addObjectValue (String elementName, Class classType, + protected void addObjectValue (String elementName, Class<?> classType, int arrayMinLength, int arrayMaxLength) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); @@ -836,7 +837,7 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat return ((Integer) ((NodeObjectArray) getNodeObject (node)).getArrayMinLength ()).intValue(); } - public Class getObjectClass (String elementName) + public Class<?> getObjectClass (String elementName) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); return getNodeObject (node).getClassType (); @@ -854,13 +855,13 @@ public abstract class IIOMetadataFormatImpl implements IIOMetadataFormat return ((NodeObjectEnumerated) getNodeObject (node)).getEnumerations (); } - public Comparable getObjectMaxValue (String elementName) + public Comparable<?> getObjectMaxValue (String elementName) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); return ((NodeObjectBounded) getNodeObject (node)).getMaxValue (); } - public Comparable getObjectMinValue (String elementName) + public Comparable<?> getObjectMinValue (String elementName) { IIOMetadataNode node = (IIOMetadataNode) nodes.get (elementName); return ((NodeObjectBounded) getNodeObject (node)).getMinValue (); diff --git a/libjava/classpath/javax/imageio/spi/IIORegistry.java b/libjava/classpath/javax/imageio/spi/IIORegistry.java index e762a96279f..fc3087f0cd6 100644 --- a/libjava/classpath/javax/imageio/spi/IIORegistry.java +++ b/libjava/classpath/javax/imageio/spi/IIORegistry.java @@ -39,7 +39,6 @@ exception statement from your version. */ package javax.imageio.spi; import gnu.classpath.ServiceFactory; -import gnu.java.awt.ClasspathToolkit; import java.awt.Toolkit; import java.util.HashMap; @@ -92,8 +91,6 @@ public final class IIORegistry extends ServiceRegistry registerServiceProvider(new BMPImageWriterSpi()); Toolkit toolkit = Toolkit.getDefaultToolkit(); - if (toolkit instanceof ClasspathToolkit) - ((ClasspathToolkit)toolkit).registerImageIOSpis(this); registerApplicationClasspathSpis(); } diff --git a/libjava/classpath/javax/imageio/spi/IIOServiceProvider.java b/libjava/classpath/javax/imageio/spi/IIOServiceProvider.java index 1ec59d5263e..48fa7d41489 100644 --- a/libjava/classpath/javax/imageio/spi/IIOServiceProvider.java +++ b/libjava/classpath/javax/imageio/spi/IIOServiceProvider.java @@ -110,7 +110,7 @@ public abstract class IIOServiceProvider * @param category the service category for which this provider has * been registered as an implementor. */ - public void onRegistration(ServiceRegistry registry, Class category) + public void onRegistration(ServiceRegistry registry, Class<?> category) { } @@ -128,7 +128,7 @@ public abstract class IIOServiceProvider * @param category the service category for which this provider has * been registered as an implementor. */ - public void onDeregistration(ServiceRegistry registry, Class category) + public void onDeregistration(ServiceRegistry registry, Class<?> category) { } diff --git a/libjava/classpath/javax/imageio/spi/ImageInputStreamSpi.java b/libjava/classpath/javax/imageio/spi/ImageInputStreamSpi.java index 51c58395fc0..2b60868a54c 100644 --- a/libjava/classpath/javax/imageio/spi/ImageInputStreamSpi.java +++ b/libjava/classpath/javax/imageio/spi/ImageInputStreamSpi.java @@ -59,7 +59,7 @@ public abstract class ImageInputStreamSpi * Indicates which kind of input is processable by the streams * created by {@link #createInputStreamInstance(Object)}. */ - protected Class inputClass; + protected Class<?> inputClass; /** @@ -80,7 +80,7 @@ public abstract class ImageInputStreamSpi * or <code>version</code> is <code>null</code>. */ public ImageInputStreamSpi(String vendorName, String version, - Class inputClass) + Class<?> inputClass) { super(vendorName, version); this.inputClass = inputClass; @@ -91,7 +91,7 @@ public abstract class ImageInputStreamSpi * Determines which kind of input is processable by the streams * created by {@link #createInputStreamInstance(Object)}. */ - public Class getInputClass() + public Class<?> getInputClass() { return inputClass; } diff --git a/libjava/classpath/javax/imageio/spi/ImageOutputStreamSpi.java b/libjava/classpath/javax/imageio/spi/ImageOutputStreamSpi.java index 0f1d3cdb2c1..872e7181e2b 100644 --- a/libjava/classpath/javax/imageio/spi/ImageOutputStreamSpi.java +++ b/libjava/classpath/javax/imageio/spi/ImageOutputStreamSpi.java @@ -59,7 +59,7 @@ public abstract class ImageOutputStreamSpi * Indicates which kind of output is produced by the streams * created by {@link #createOutputStreamInstance(Object)}. */ - protected Class outputClass; + protected Class<?> outputClass; /** @@ -80,7 +80,7 @@ public abstract class ImageOutputStreamSpi * or <code>version</code> is <code>null</code>. */ public ImageOutputStreamSpi(String vendorName, String version, - Class outputClass) + Class<?> outputClass) { super(vendorName, version); this.outputClass = outputClass; @@ -91,7 +91,7 @@ public abstract class ImageOutputStreamSpi * Determines which kind of output is produced by the streams * created by {@link #createOutputStreamInstance(Object)}. */ - public Class getOutputClass() + public Class<?> getOutputClass() { return outputClass; } diff --git a/libjava/classpath/javax/imageio/spi/RegisterableService.java b/libjava/classpath/javax/imageio/spi/RegisterableService.java index ccf734e69ac..7be5a1beace 100644 --- a/libjava/classpath/javax/imageio/spi/RegisterableService.java +++ b/libjava/classpath/javax/imageio/spi/RegisterableService.java @@ -62,7 +62,7 @@ public interface RegisterableService * @param category the service category for which this provider has * been registered as an implementor. */ - void onRegistration(ServiceRegistry registry, Class category); + void onRegistration(ServiceRegistry registry, Class<?> category); /** @@ -78,6 +78,6 @@ public interface RegisterableService * @param category the service category for which this provider has * been registered as an implementor. */ - void onDeregistration(ServiceRegistry registry, Class category); + void onDeregistration(ServiceRegistry registry, Class<?> category); } diff --git a/libjava/classpath/javax/imageio/spi/ServiceRegistry.java b/libjava/classpath/javax/imageio/spi/ServiceRegistry.java index 031b666046c..4848bc6dbab 100644 --- a/libjava/classpath/javax/imageio/spi/ServiceRegistry.java +++ b/libjava/classpath/javax/imageio/spi/ServiceRegistry.java @@ -121,7 +121,7 @@ public class ServiceRegistry * @throws ClassCastException if <code>categories</code> does not * iterate over instances of {@link java.lang.Class}. */ - public ServiceRegistry(Iterator categories) + public ServiceRegistry(Iterator<Class<?>> categories) { ArrayList cats = new ArrayList(/* expected size */ 10); @@ -178,8 +178,8 @@ public class ServiceRegistry * @throws IllegalArgumentException if <code>spi</code> is * <code>null</code>. */ - public static Iterator lookupProviders(Class spi, - ClassLoader loader) + public static <T> Iterator<T> lookupProviders(Class<T> spi, + ClassLoader loader) { return ServiceFactory.lookupProviders(spi, loader); } @@ -200,7 +200,7 @@ public class ServiceRegistry * * @see #lookupProviders(Class, ClassLoader) */ - public static Iterator lookupProviders(Class spi) + public static <T> Iterator<T> lookupProviders(Class<T> spi) { return ServiceFactory.lookupProviders(spi); } @@ -212,7 +212,7 @@ public class ServiceRegistry * @return an unmodifiable {@link * java.util.Iterator}<{@link java.lang.Class}>. */ - public Iterator getCategories() + public Iterator<Class<?>> getCategories() { return new Iterator() { @@ -317,8 +317,8 @@ public class ServiceRegistry * @throws ClassCastException if <code>provider</code> does not * implement <code>category</code>. */ - public synchronized boolean registerServiceProvider(Object provider, - Class category) + public synchronized <T> boolean registerServiceProvider(T provider, + Class<T> category) { for (int i = 0; i < categories.length; i++) if (categories[i] == category) @@ -383,7 +383,7 @@ public class ServiceRegistry * #ServiceRegistry(Iterator) constructor} of this * <code>ServiceRegistry</code>. */ - public synchronized void registerServiceProviders(Iterator providers) + public synchronized void registerServiceProviders(Iterator<?> providers) { if (providers == null) throw new IllegalArgumentException(); @@ -467,8 +467,8 @@ public class ServiceRegistry * @throws ClassCastException if <code>provider</code> does not * implement <code>category</code>. */ - public synchronized boolean deregisterServiceProvider(Object provider, - Class category) + public synchronized <T> boolean deregisterServiceProvider(T provider, + Class<T> category) { for (int i = 0; i < categories.length; i++) if (categories[i] == category) @@ -535,7 +535,7 @@ public class ServiceRegistry * #ServiceRegistry(Iterator) constructor} of this * <code>ServiceRegistry</code>. */ - public synchronized void deregisterAll(Class category) + public synchronized void deregisterAll(Class<?> category) { boolean ok = false; @@ -663,7 +663,8 @@ public class ServiceRegistry * * @see #getServiceProviders(Class, Filter, boolean) */ - public Iterator getServiceProviders(Class category, boolean useOrdering) + public <T> Iterator<T> getServiceProviders(Class<T> category, + boolean useOrdering) { return getServiceProviders(category, null, useOrdering); } @@ -691,9 +692,9 @@ public class ServiceRegistry * #ServiceRegistry(Iterator) constructor} of this * <code>ServiceRegistry</code>. */ - public synchronized Iterator getServiceProviders(Class category, - Filter filter, - boolean useOrdering) + public synchronized <T> Iterator<T> getServiceProviders(Class<T> category, + Filter filter, + boolean useOrdering) { int catid; LinkedList provs; @@ -751,7 +752,7 @@ public class ServiceRegistry * * @param providerClass a class to search for. */ - public synchronized Object getServiceProviderByClass(Class providerClass) + public synchronized <T> T getServiceProviderByClass(Class<T> providerClass) { if (providerClass == null) throw new IllegalArgumentException(); @@ -772,7 +773,7 @@ public class ServiceRegistry { Object provider = iter.next(); if (providerClass.isInstance(provider)) - return provider; + return (T) provider; } } @@ -799,9 +800,9 @@ public class ServiceRegistry * @see #unsetOrdering * @see #getServiceProviders(Class, Filter, boolean) */ - public synchronized boolean setOrdering(Class category, - Object firstProvider, - Object secondProvider) + public synchronized <T> boolean setOrdering(Class<T> category, + T firstProvider, + T secondProvider) { return addConstraint(getCategoryID(category), firstProvider, secondProvider); @@ -826,9 +827,9 @@ public class ServiceRegistry * * @see #setOrdering */ - public synchronized boolean unsetOrdering(Class category, - Object firstProvider, - Object secondProvider) + public synchronized <T> boolean unsetOrdering(Class<T> category, + T firstProvider, + T secondProvider) { return removeConstraint(getCategoryID(category), firstProvider, secondProvider); |