All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.daisy.streamline.api.media.FileDetails Maven / Gradle / Ivy

The newest version!
package org.daisy.streamline.api.media;

import java.util.Map;

/**
 * Provides details regarding a file.
 * @author Joel Håkansson
 */
public interface FileDetails {
	
	/**
	 * Gets the identifying name for the file format. This should be the shortest
	 * name commonly used when referring to the file format.
	 * @return returns the name, or null if not known
	 */
	public String getFormatName();
	
	/**
	 * Gets the identifying file extension of this file's format without the leading '.' (which may or may not 
	 * correspond with the actual extension of the file retrieved by getFile).
	 * 
	 * @return the identifying file extension, or null if unknown
	 */
	public String getExtension();

	/**
	 * Gets the media type for this file's format.
	 * @return the media type, or null if unknown.
	 * @see Media Types
	 */
	public String getMediaType();
	
	/**
	 * Gets additional properties about the file. To conform with this interface
	 * the returned map and all value objects must be immutable.
	 * @return returns a map of properties
	 */
	public Map getProperties();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy