29#ifndef __APKFileSystemArchive_H__
30#define __APKFileSystemArchive_H__
34#include <android/asset_manager.h>
virtual ~APKFileSystemArchiveFactory()
void destroyInstance(Archive *arch)
Destroys an object which was created by this factory.
APKFileSystemArchiveFactory(AAssetManager *assetMgr)
const String & getType(void) const
Returns the factory type.
Archive * createInstance(const String &name, bool readOnly)
Creates a new object.
AAssetManager * mAssetMgr
DataStreamPtr create(const String &filename) const
Create a new file (or overwrite one already there).
void remove(const String &filename) const
bool isCaseSensitive(void) const
Returns whether this archive is case sensitive in the way it matches files.
FileInfoListPtr findFileInfo(const String &pattern, bool recursive=true, bool dirs=false) const
Find all files or directories matching a given pattern in this archive and get some detailed informat...
time_t getModifiedTime(const String &filename)
Retrieve the modification time of a given file.
DataStreamPtr open(const String &filename, bool readOnly=true) const
Open a stream on a given file.
AAssetManager * mAssetMgr
APKFileSystemArchive(const String &name, const String &archType, AAssetManager *assetMgr)
FileInfoListPtr listFileInfo(bool recursive=true, bool dirs=false)
List all files in the archive with accompanying information.
StringVectorPtr list(bool recursive=true, bool dirs=false)
List all file names in the archive.
bool exists(const String &filename)
Find out if the named file exists (note: fully qualified filename required)
void unload()
Unloads the archive.
void load()
Loads the archive.
StringVectorPtr find(const String &pattern, bool recursive=true, bool dirs=false)
Find all file or directory names matching a given pattern in this archive.
Abstract factory class, archive codec plugins can register concrete subclasses of this.