Package org.ametys.cms.data
Class Resource
- java.lang.Object
-
- org.ametys.cms.data.Resource
-
- Direct Known Subclasses:
NamedResource
,RichText
public class Resource extends Object
Class representing a resource
-
-
Field Summary
Fields Modifier and Type Field Description protected byte[]
_buffer
Buffer for small-sized dataprotected String
_encoding
The resource's encodingprotected ZonedDateTime
_lastModificationDate
The resource's last modification dateprotected String
_mimeType
The resource's mime typeprotected RepositoryData
_repositoryData
The resource's repository dataprotected File
_tmpFile
Underlying tmp file
-
Constructor Summary
Constructors Constructor Description Resource()
Default constructorResource(RepositoryData repositoryData)
Constructor to use when reading the resource from the repository
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
closeOutputStream(ByteArrayOutputStream outputStream)
Closes the givenOutputStream
String
getEncoding()
Retrieves the encoding of the resource's dataInputStream
getInputStream()
Retrieve the resource's data If the data has already been read, the stream is reseted so it can be read again from the startZonedDateTime
getLastModificationDate()
Retrieves the last modification date of the resource's datalong
getLength()
Retrieves the length of the resource's dataString
getMimeType()
Retrieves the mime type of the resource's dataOutputStream
getOutputStream()
Retrieves an output stream that allows to modify the resource's dataOptional<RepositoryData>
getRepositoryData()
Retrieves the resource's repository datavoid
setEncoding(String encoding)
Sets the encoding of the resource's datavoid
setInputStream(InputStream in)
Sets the resource's datavoid
setLastModificationDate(ZonedDateTime lastModificationDate)
Sets the last modification date of the resource's datavoid
setMimeType(String mimeType)
Sets the mime type of the resource's data
-
-
-
Field Detail
-
_lastModificationDate
protected ZonedDateTime _lastModificationDate
The resource's last modification date
-
_buffer
protected byte[] _buffer
Buffer for small-sized data
-
_repositoryData
protected RepositoryData _repositoryData
The resource's repository data
-
-
Constructor Detail
-
Resource
public Resource()
Default constructor
-
Resource
public Resource(RepositoryData repositoryData)
Constructor to use when reading the resource from the repository- Parameters:
repositoryData
- the repository data containing the resource's data
-
-
Method Detail
-
getInputStream
public InputStream getInputStream()
Retrieve the resource's data If the data has already been read, the stream is reseted so it can be read again from the start- Returns:
- the resource's data, or
null
if there is no data
-
getLength
public long getLength() throws AmetysRepositoryException
Retrieves the length of the resource's data- Returns:
- the length of the resource's data
- Throws:
AmetysRepositoryException
- if an error occurs while reading the data in the repository
-
setInputStream
public void setInputStream(InputStream in) throws IOException
Sets the resource's data- Parameters:
in
- the data to set- Throws:
IOException
- if an error occurs while reading the input stream
-
getOutputStream
public OutputStream getOutputStream()
Retrieves an output stream that allows to modify the resource's data- Returns:
- the output stream
-
closeOutputStream
protected void closeOutputStream(ByteArrayOutputStream outputStream) throws IOException
Closes the givenOutputStream
- Parameters:
outputStream
- theOutputStream
to close- Throws:
IOException
- if an error occurs while registering the stream
-
getMimeType
public String getMimeType()
Retrieves the mime type of the resource's data- Returns:
- the mime type of the resource's data
-
setMimeType
public void setMimeType(String mimeType)
Sets the mime type of the resource's data- Parameters:
mimeType
- the mime type to set
-
getEncoding
public String getEncoding()
Retrieves the encoding of the resource's data- Returns:
- the encoding of the resource's data
-
setEncoding
public void setEncoding(String encoding)
Sets the encoding of the resource's data- Parameters:
encoding
- the encoding to set
-
getLastModificationDate
public ZonedDateTime getLastModificationDate()
Retrieves the last modification date of the resource's data- Returns:
- the last modification date of the resource's data
-
setLastModificationDate
public void setLastModificationDate(ZonedDateTime lastModificationDate)
Sets the last modification date of the resource's data- Parameters:
lastModificationDate
- the last modification date to set
-
getRepositoryData
public Optional<RepositoryData> getRepositoryData()
Retrieves the resource's repository data- Returns:
- the resource's repository data
-
-