org.wings.externalizer.ImageIconExternalizer Maven / Gradle / Ivy
The newest version!
/*
* Copyright 2000,2005 wingS development team.
*
* This file is part of wingS (http://wingsframework.org).
*
* wingS is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License
* as published by the Free Software Foundation; either version 2.1
* of the License, or (at your option) any later version.
*
* Please see COPYING for the complete licence.
*/
package org.wings.externalizer;
import java.util.Collection;
import org.wings.io.Device;
import org.wings.resource.HttpHeader;
import javax.swing.*;
/**
* @author Armin Haaf
* @author Michael Reinsch
*/
public class ImageIconExternalizer implements Externalizer {
ImageExternalizer delegate;
private static final Class[] SUPPORTED_CLASSES = { ImageIcon.class };
public static final ImageIconExternalizer SHARED_GIF_INSTANCE = new ImageIconExternalizer(ImageExternalizer.FORMAT_GIF);
public static final ImageIconExternalizer SHARED_PNG_INSTANCE = new ImageIconExternalizer(ImageExternalizer.FORMAT_PNG);
public static final ImageIconExternalizer SHARED_JPG_INSTANCE = new ImageIconExternalizer(ImageExternalizer.FORMAT_JPG);
public ImageIconExternalizer() {
delegate = new ImageExternalizer();
}
public ImageIconExternalizer(String format) {
delegate = new ImageExternalizer(format);
}
@Override
public Class[] getSupportedClasses() {
return SUPPORTED_CLASSES;
}
@Override
public String[] getSupportedMimeTypes() {
return delegate.getSupportedMimeTypes();
}
@Override
public Collection getHeaders(ImageIcon obj) {
return delegate.getHeaders(obj.getImage());
}
@Override
public String getId(ImageIcon obj) {
return delegate.getId(obj.getImage());
}
@Override
public String getExtension(ImageIcon obj) {
return delegate.getExtension(obj.getImage());
}
@Override
public String getMimeType(ImageIcon obj) {
return delegate.getMimeType(obj.getImage());
}
@Override
public int getLength(ImageIcon obj) {
return delegate.getLength(obj.getImage());
}
@Override
public boolean isFinal(ImageIcon obj) {
return false;
}
@Override
public void write(Object obj, Device out)
throws java.io.IOException {
delegate.write(((ImageIcon) obj).getImage(), out);
}
}