Package de.xima.fc.dao.interfaces
Interface IGenericFileDao
-
- All Known Implementing Classes:
GenericFileDao
public interface IGenericFileDaoData access object working for different kinds of entities that provide binary file content.- Since:
- 8.0.0
- Author:
- XIMA MEDIA GmbH
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <D extends IFileDataEntity<F>,F extends IKeyDependentFileEntity<E,D>,E extends IFileMapProviding<F,D>>
byte[]getFileData(IEntityContext ec, E entity, String fileKey)Returns the file data of a file belonging to the given entity with the given file key.<E extends IFileDataEntity<?>,T extends IFileProviding<?,E>>
byte[]getFileData(IEntityContext ec, Class<T> entityClass, long id)Returns the file data of a file entity.<E extends IFileDataEntity<?>,T extends IFileProviding<?,E>>
byte[]getFileData(IEntityContext ec, T entity)Returns the file data of a file entity.<D extends IFileDataEntity<F>,F extends IKeyDependentFileEntity<E,D>,E extends IFileMapProviding<F,D>>
DgetFileDataEntity(IEntityContext ec, E entity, String fileKey)Returns the file data entity of a file belonging to the given entity with the given file key.<E extends IFileDataEntity<?>,T extends IFileEntity<?,E>>
EgetFileDataEntity(IEntityContext ec, T entity)Get the file data entity for a given file entity.<T extends IFileEntity<?,?>>
byte[]getFileEntityData(IEntityContext ec, T fileEntity)Gets the data of the given file entity as an in-memory byte array.<TFileMeta extends IFileMetaEntity<?,?>>
byte[]getFileEntityData(IEntityContext ec, TFileMeta fileEntity)Returns the file data of the given file entity.<T extends IFileEntity<?,?>>
InputStreamgetFileEntityStream(IEntityContext ec, T fileEntity)Gets the data of the given file entity as an input stream.<TFileMeta extends IFileMetaEntity<?,?>>
InputStreamgetFileEntityStream(IEntityContext ec, TFileMeta fileEntity)Returns the file data of the given file entity as an input stream.<D extends IFileDataEntity<F>,F extends IKeyDependentFileEntity<E,D>,E extends IFileMapProviding<F,D>>
InputStreamgetFileStream(IEntityContext ec, E entity, String fileKey)Returns the file data of a file belonging to the given entity with the given file key, as an input stream.<E extends IFileDataEntity<?>,T extends IFileProviding<?,E>>
InputStreamgetFileStream(IEntityContext ec, T entity)<E extends IFileDataEntity<?>,T extends IFileEntity<?,E>>
TupdateFileData(IEntityContext ec, T entity, byte[] data)Replaces the data of the given file entity with the new data.
-
-
-
Method Detail
-
getFileData
<E extends IFileDataEntity<?>,T extends IFileProviding<?,E>> byte[] getFileData(IEntityContext ec, Class<T> entityClass, long id)
Returns the file data of a file entity.Use with care! As the name suggests, this holds the entire file data in memory. Prefer
using an input streaminstead.- Type Parameters:
E- Type of the entity with the file data.T- Type of the entity with the file meta data.- Parameters:
ec- Entity context for database transactions.entityClass- Type of the file entity with the file meta data.id- ID of the file entity with the file meta data.- Returns:
- The file content as a byte array, or
nullwhen no file content was found.
-
getFileData
<E extends IFileDataEntity<?>,T extends IFileProviding<?,E>> byte[] getFileData(IEntityContext ec, T entity)
Returns the file data of a file entity.Use with care! As the name suggests, this holds the entire file data in memory. Prefer
using an input streaminstead.- Type Parameters:
E- Type of the entity with the file data.T- Type of the entity with the file meta data.- Parameters:
ec- Entity context for database transactions.entity- File entity with the file meta data.- Returns:
- The file content as a byte array.
-
getFileData
<D extends IFileDataEntity<F>,F extends IKeyDependentFileEntity<E,D>,E extends IFileMapProviding<F,D>> byte[] getFileData(IEntityContext ec, E entity, String fileKey)
Returns the file data of a file belonging to the given entity with the given file key.Use with care! As the name suggests, this holds the entire file data in memory. Prefer
using an input streaminstead.- Type Parameters:
E- file map providing base entity typeD- file data entity typeF- file entity type- Parameters:
ec- entity context for database transactions.entity- that owns the filefileKey- Key identifying the the file to retrieve.- Returns:
- The file data as a byte array.
- Since:
- 7.1.0
-
getFileStream
<D extends IFileDataEntity<F>,F extends IKeyDependentFileEntity<E,D>,E extends IFileMapProviding<F,D>> InputStream getFileStream(IEntityContext ec, E entity, String fileKey)
Returns the file data of a file belonging to the given entity with the given file key, as an input stream.- Type Parameters:
E- file map providing base entity typeD- file data entity typeF- file entity type- Parameters:
ec- entity context for database transactions.entity- that owns the filefileKey- Key identifying the the file to retrieve.- Returns:
- The file data as an input stream.
- Since:
- 8.0.0
-
updateFileData
<E extends IFileDataEntity<?>,T extends IFileEntity<?,E>> T updateFileData(IEntityContext ec, T entity, byte[] data)
Replaces the data of the given file entity with the new data.- Type Parameters:
E- Type of the entity with the file data.T- Type of the entity with the file meta data.- Parameters:
ec- Entity context for database transactions.entity- File entity with the file meta data.data- New data to set.- Returns:
- The updated file entity.
-
getFileDataEntity
<E extends IFileDataEntity<?>,T extends IFileEntity<?,E>> E getFileDataEntity(IEntityContext ec, T entity)
Get the file data entity for a given file entity. The entity is read from the database if it is detached.- Type Parameters:
E- Type of the entity with the file data.T- Type of the entity with the file meta data.- Parameters:
ec- Entity context for database transactions.entity- File entity with the file meta data.- Returns:
- The file data entity for the given file entity.
-
getFileDataEntity
<D extends IFileDataEntity<F>,F extends IKeyDependentFileEntity<E,D>,E extends IFileMapProviding<F,D>> D getFileDataEntity(IEntityContext ec, E entity, String fileKey)
Returns the file data entity of a file belonging to the given entity with the given file key.- Type Parameters:
E- file map providing base entity typeD- file data entity typeF- file entity type- Parameters:
ec- Entity context for database transactions.entity- that owns the filefileKey- key identifying the the file entity- Returns:
- file data entity containing the data of the request file.
- Since:
- 8.0.0
-
getFileStream
<E extends IFileDataEntity<?>,T extends IFileProviding<?,E>> InputStream getFileStream(IEntityContext ec, T entity)
- Type Parameters:
E- Type of the entity with the file data.T- Type of the entity with the file meta data.- Parameters:
ec- Entity context for database transactions.entity- File entity with the file meta data.- Returns:
- The data of the file entity as an input stream, or
nullwhen no data exists.
-
getFileEntityData
<T extends IFileEntity<?,?>> byte[] getFileEntityData(IEntityContext ec, T fileEntity)
Gets the data of the given file entity as an in-memory byte array.Use with care! As the name suggests, this holds the entire file data in memory. Prefer
using an input streaminstead.- Type Parameters:
T- Type of the file entity with the data.- Parameters:
ec- Entity context for database transactions.fileEntity- File entity with the data.- Returns:
- The data as a byte array, or
nullif no data exists.
-
getFileEntityData
<TFileMeta extends IFileMetaEntity<?,?>> byte[] getFileEntityData(IEntityContext ec, TFileMeta fileEntity)
Returns the file data of the given file entity.- Type Parameters:
TFileMeta- type of file entity.- Parameters:
ec- entity context for database transactions.fileEntity- that owns the file data.- Returns:
- binary data of the file or
nullif no data exists. - Since:
- 8.2.0
-
getFileEntityStream
<TFileMeta extends IFileMetaEntity<?,?>> InputStream getFileEntityStream(IEntityContext ec, TFileMeta fileEntity)
Returns the file data of the given file entity as an input stream.- Type Parameters:
TFileMeta- type of file entity.- Parameters:
ec- entity context for database transactions.fileEntity- that owns the file data.- Returns:
- input stream of the file data or
nullif no data exists. - Since:
- 8.2.0
-
getFileEntityStream
<T extends IFileEntity<?,?>> InputStream getFileEntityStream(IEntityContext ec, T fileEntity)
Gets the data of the given file entity as an input stream.- Parameters:
ec- Entity context for database transactions.fileEntity- File entity with the data.- Returns:
- The data as an input stream, or
nullif no data exists. - Since:
- 8.0.0
-
-