java/cewolf-1.0/src/main/java/de/laures/cewolf/ChartImage.java
author František Kučera <franta-hg@frantovo.cz>
Sat, 28 Feb 2009 21:31:02 +0100
changeset 1 639991d0808a
permissions -rw-r--r--
Rozbalená knihovna verze 1.0
franta-hg@1
     1
/* ================================================================
franta-hg@1
     2
 * Cewolf : Chart enabling Web Objects Framework
franta-hg@1
     3
 * ================================================================
franta-hg@1
     4
 *
franta-hg@1
     5
 * Project Info:  http://cewolf.sourceforge.net
franta-hg@1
     6
 * Project Lead:  Guido Laures (guido@laures.de);
franta-hg@1
     7
 *
franta-hg@1
     8
 * (C) Copyright 2002, by Guido Laures
franta-hg@1
     9
 *
franta-hg@1
    10
 * This library is free software; you can redistribute it and/or modify it under the terms
franta-hg@1
    11
 * of the GNU Lesser General Public License as published by the Free Software Foundation;
franta-hg@1
    12
 * either version 2.1 of the License, or (at your option) any later version.
franta-hg@1
    13
 *
franta-hg@1
    14
 * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
franta-hg@1
    15
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
franta-hg@1
    16
 * See the GNU Lesser General Public License for more details.
franta-hg@1
    17
 *
franta-hg@1
    18
 * You should have received a copy of the GNU Lesser General Public License along with this
franta-hg@1
    19
 * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
franta-hg@1
    20
 * Boston, MA 02111-1307, USA.
franta-hg@1
    21
 */
franta-hg@1
    22
franta-hg@1
    23
package de.laures.cewolf;
franta-hg@1
    24
franta-hg@1
    25
import java.io.IOException;
franta-hg@1
    26
import java.util.Date;
franta-hg@1
    27
franta-hg@1
    28
franta-hg@1
    29
/**
franta-hg@1
    30
 * A special ChartHolder which also holds the image presentation of the chart.
franta-hg@1
    31
 * @author  Guido Laures
franta-hg@1
    32
 */
franta-hg@1
    33
public interface ChartImage {
franta-hg@1
    34
	
franta-hg@1
    35
	public static final int IMG_TYPE_CHART = 0;
franta-hg@1
    36
	public static final int IMG_TYPE_LEGEND = 1;
franta-hg@1
    37
    
franta-hg@1
    38
	/**
franta-hg@1
    39
	 * Returns the width of the chart image in pixel.
franta-hg@1
    40
	 * @return the width of the chart image in pixel
franta-hg@1
    41
	 */
franta-hg@1
    42
    public int getWidth();
franta-hg@1
    43
franta-hg@1
    44
	/**
franta-hg@1
    45
	 * Returns the height of the chart image in pixel.
franta-hg@1
    46
	 * @return the height of the chart image in pixel
franta-hg@1
    47
	 */
franta-hg@1
    48
    public int getHeight();
franta-hg@1
    49
    
franta-hg@1
    50
	/**
franta-hg@1
    51
	 * Returns the type of the chart image.
franta-hg@1
    52
	 * @return the type of the chart image
franta-hg@1
    53
	 * @see #IMG_TYPE_CHART
franta-hg@1
    54
	 * @see #IMG_TYPE_LEGEND
franta-hg@1
    55
	 */
franta-hg@1
    56
    public int getType();
franta-hg@1
    57
    
franta-hg@1
    58
    /**
franta-hg@1
    59
     * Writes out a cached image to an outputstream. This method only marks the object
franta-hg@1
    60
     * as accessed and therfore frees it for cache cleanup.
franta-hg@1
    61
     * @param key the cache key
franta-hg@1
    62
     * @param out the stream to write to
franta-hg@1
    63
     * @throws IOException if an I/O error occured during write
franta-hg@1
    64
     */
franta-hg@1
    65
    public byte[] getBytes() throws CewolfException;
franta-hg@1
    66
        
franta-hg@1
    67
    /**
franta-hg@1
    68
     * Returns the MIME type of this image.
franta-hg@1
    69
     * @return the MIME type of the image
franta-hg@1
    70
     */
franta-hg@1
    71
    public String getMimeType();
franta-hg@1
    72
        
franta-hg@1
    73
	/**
franta-hg@1
    74
	 * Returns the size of the image in bytes.
franta-hg@1
    75
	 * @return size of the image
franta-hg@1
    76
	 * @throws CewolfException if the size could not be determined
franta-hg@1
    77
	 */
franta-hg@1
    78
    public int getSize() throws CewolfException;
franta-hg@1
    79
    
franta-hg@1
    80
    public Date getTimeoutTime();
franta-hg@1
    81
}