1  import org.as2lib.core.BasicInterface;
     2  import org.as2lib.data.type.Byte;
     3  
     4  /**
     5   * {@code File} represents any file.
     6   * 
     7   * <p>Any {@code File} has to have a location and a size.
     8   * 
     9   * <p>{@link FileLoader} contains the functionality to load a certain
    10   * file.
    11   * 
    12   * @author Martin Heidegger
    13   * @version 1.0
    14   */
    15  interface org.as2lib.io.file.File extends BasicInterface {
    16  	
    17  	/**
    18  	 * Returns the location of the {@code File} corresponding to the content.
    19  	 * 
    20  	 * <p>Note: Might be the URI of the resource or null if its not requestable
    21  	 * or the internal location corresponding to the instance path (if its without
    22  	 * any connection to a real file).
    23  	 * 
    24  	 * @return location of the resource related to the content
    25  	 */
    26  	public function getLocation(Void):String;
    27  	
    28  	/**
    29  	 * Returns the size of the {@code File} in bytes.
    30  	 * 
    31  	 * @return size of the {@code File} in bytes
    32  	 */
    33  	public function getSize(Void):Byte;
    34  }