/*
* Copyright (C) 2006-2016 DLR, Germany
*
* All rights reserved
*
* http://www.rcenvironment.de/
*/
package de.rcenvironment.core.datamodel.types.api;
import java.util.Date;
import de.rcenvironment.core.datamodel.api.TypedDatum;
/**
* From the user perspective, this data type represents a file and provides access to its content,
* an file name and possibly other file metadata. Technically, the file content will
* typically be represented as a data management reference.
*
* @author Robert Mischke
* @author Doreen Seider
*/
public interface FileReferenceTD extends TypedDatum {
/**
* @return data management reference to the file
*/
String getFileReference();
/**
* @return file name
*/
String getFileName();
/**
* @return file size
*/
long getFileSizeInBytes();
/**
* @return last modified
*/
Date getLastModified();
/**
* Sets the file size of the referenced file.
*
* @param filesize the file size
*/
void setFileSize(long filesize);
/**
* Sets the last modified date of the referenced file.
*
* @param lastModified Date of the last modification
*/
void setLastModified(Date lastModified);
}