org.at4j.archive
Interface ArchiveFileEntry<T extends ArchiveEntry<T,U>,U extends ArchiveDirectoryEntry<T,U>>

Type Parameters:
T - The type of entries in the archive.
U - The type of directory entries in the archive.
All Superinterfaces:
ArchiveEntry<T,U>, Lockable, Named, NamedReadableFile, RandomlyAccessibleFile, ReadableFile, ReadLockable, ReadWriteLockable, WriteLockable
All Known Implementing Classes:
PaxFileEntry, TarFileEntry, UstarFileEntry, ZipFileEntry

public interface ArchiveFileEntry<T extends ArchiveEntry<T,U>,U extends ArchiveDirectoryEntry<T,U>>
extends ArchiveEntry<T,U>, NamedReadableFile, RandomlyAccessibleFile

This interface defines a generic file entry in an archive. A file entry is a NamedReadableFile, which means that it has a name and that it can be opened for reading. It is also a RandomlyAccessibleFile, which means that it can be opened for (read only) random access. Not all file entries support random access, though. Those who don't let their openForRandomAccess throw an UnsupportedOperationException.

The size returned by the getSize() method is the compressed size for the entry. The size returned by the getDataSize() is the uncompressed size for the entry.

Since:
1.0
Author:
Karl Gustafsson

Method Summary
 
Methods inherited from interface org.at4j.archive.ArchiveEntry
getLocation, getParent
 
Methods inherited from interface org.entityfs.ReadableFile
getDataSize, getSize, openChannelForRead, openForRead
 
Methods inherited from interface org.entityfs.Named
getName
 
Methods inherited from interface org.entityfs.RandomlyAccessibleFile
openForRandomAccess
 
Methods inherited from interface org.entityfs.lock.ReadLockable
getReadLock, isReadLockedByCurrentThread, lockForReading
 
Methods inherited from interface org.entityfs.lock.WriteLockable
getWriteLock, isWriteLockedByCurrentThread, lockForWriting