Class GenericFileDao

    • Constructor Detail

      • GenericFileDao

        public GenericFileDao()
    • Method Detail

      • getFileData

        public <E extends IFileDataEntity<?>,​T extends IFileProviding<?,​E>> byte[] getFileData​(IEntityContext ec,
                                                                                                           Class<T> clazz,
                                                                                                           long id)
        Description copied from interface: IGenericFileDao
        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 stream instead.

        Specified by:
        getFileData in interface IGenericFileDao
        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.
        clazz - 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 null when no file content was found.
      • getFileData

        public <E extends IFileDataEntity<?>,​T extends IFileProviding<?,​E>> byte[] getFileData​(IEntityContext ec,
                                                                                                           T entity)
        Description copied from interface: IGenericFileDao
        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 stream instead.

        Specified by:
        getFileData in interface IGenericFileDao
        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

        public <D extends IFileDataEntity<F>,​F extends IKeyDependentFileEntity<E,​D>,​E extends IFileMapProviding<F,​D>> byte[] getFileData​(IEntityContext ec,
                                                                                                                                                                 E entity,
                                                                                                                                                                 String fileKey)
        Description copied from interface: IGenericFileDao
        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 stream instead.

        Specified by:
        getFileData in interface IGenericFileDao
        Type Parameters:
        D - file data entity type
        F - file entity type
        E - file map providing base entity type
        Parameters:
        ec - entity context for database transactions.
        entity - that owns the file
        fileKey - Key identifying the the file to retrieve.
        Returns:
        The file data as a byte array.
      • getFileStream

        public <D extends IFileDataEntity<F>,​F extends IKeyDependentFileEntity<E,​D>,​E extends IFileMapProviding<F,​D>> InputStream getFileStream​(IEntityContext ec,
                                                                                                                                                                        E entity,
                                                                                                                                                                        String fileKey)
        Description copied from interface: IGenericFileDao
        Returns the file data of a file belonging to the given entity with the given file key, as an input stream.
        Specified by:
        getFileStream in interface IGenericFileDao
        Type Parameters:
        D - file data entity type
        F - file entity type
        E - file map providing base entity type
        Parameters:
        ec - entity context for database transactions.
        entity - that owns the file
        fileKey - Key identifying the the file to retrieve.
        Returns:
        The file data as an input stream.
      • getFileEntityData

        public <T extends IFileEntity<?,​?>> byte[] getFileEntityData​(IEntityContext ec,
                                                                           T fileEntity)
        Description copied from interface: IGenericFileDao
        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 stream instead.

        Specified by:
        getFileEntityData in interface IGenericFileDao
        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 null if no data exists.
      • getFileEntityData

        public <TFileMeta extends IFileMetaEntity<?,​?>> byte[] getFileEntityData​(IEntityContext ec,
                                                                                       TFileMeta fileEntity)
        Description copied from interface: IGenericFileDao
        Returns the file data of the given file entity.
        Specified by:
        getFileEntityData in interface IGenericFileDao
        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 null if no data exists.
      • updateFileData

        public <E extends IFileDataEntity<?>,​T extends IFileEntity<?,​E>> T updateFileData​(IEntityContext ec,
                                                                                                      T entity,
                                                                                                      byte[] data)
        Description copied from interface: IGenericFileDao
        Replaces the data of the given file entity with the new data.
        Specified by:
        updateFileData in interface IGenericFileDao
        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

        public <E extends IFileDataEntity<?>,​T extends IFileEntity<?,​E>> E getFileDataEntity​(IEntityContext ec,
                                                                                                         T entity)
        Description copied from interface: IGenericFileDao
        Get the file data entity for a given file entity. The entity is read from the database if it is detached.
        Specified by:
        getFileDataEntity in interface IGenericFileDao
        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

        public <D extends IFileDataEntity<F>,​F extends IKeyDependentFileEntity<E,​D>,​E extends IFileMapProviding<F,​D>> D getFileDataEntity​(IEntityContext ec,
                                                                                                                                                                  E entity,
                                                                                                                                                                  String fileKey)
        Description copied from interface: IGenericFileDao
        Returns the file data entity of a file belonging to the given entity with the given file key.
        Specified by:
        getFileDataEntity in interface IGenericFileDao
        Type Parameters:
        D - file data entity type
        F - file entity type
        E - file map providing base entity type
        Parameters:
        ec - Entity context for database transactions.
        entity - that owns the file
        fileKey - key identifying the the file entity
        Returns:
        file data entity containing the data of the request file.
      • getFileStream

        public <E extends IFileDataEntity<?>,​T extends IFileProviding<?,​E>> InputStream getFileStream​(IEntityContext ec,
                                                                                                                  T entity)
        Specified by:
        getFileStream in interface IGenericFileDao
        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 null when no data exists.
      • getFileEntityStream

        public <T extends IFileEntity<?,​?>> InputStream getFileEntityStream​(IEntityContext ec,
                                                                                  T entity)
        Description copied from interface: IGenericFileDao
        Gets the data of the given file entity as an input stream.
        Specified by:
        getFileEntityStream in interface IGenericFileDao
        Parameters:
        ec - Entity context for database transactions.
        entity - File entity with the data.
        Returns:
        The data as an input stream, or null if no data exists.
      • getFileEntityStream

        public <TFileMeta extends IFileMetaEntity<?,​?>> InputStream getFileEntityStream​(IEntityContext ec,
                                                                                              TFileMeta fileEntity)
        Description copied from interface: IGenericFileDao
        Returns the file data of the given file entity as an input stream.
        Specified by:
        getFileEntityStream in interface IGenericFileDao
        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 null if no data exists.