diff options
author | Mike Lockwood <lockwood@android.com> | 2010-07-02 14:03:31 -0400 |
---|---|---|
committer | Mike Lockwood <lockwood@android.com> | 2010-07-02 14:14:06 -0400 |
commit | 0250361b110267a139cc0865ff7d2f13b4d63bdf (patch) | |
tree | a2a5f01424d963c2b24d2fca8e2c59095ce404f8 /media/mtp/MtpDatabase.h | |
parent | fc20aab463f527ab3b0664986f0381a86b375884 (diff) | |
download | frameworks_av-0250361b110267a139cc0865ff7d2f13b4d63bdf.zip frameworks_av-0250361b110267a139cc0865ff7d2f13b4d63bdf.tar.gz frameworks_av-0250361b110267a139cc0865ff7d2f13b4d63bdf.tar.bz2 |
MTP: Make MtpDatabase class abstract so we can have multiple implementations
Rename existing test database to MtpSqliteDatabase
This is the first step in transitioning to using the media provider database
Change-Id: I5f36c854c6e76a79137c267b000a52ced803776c
Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'media/mtp/MtpDatabase.h')
-rw-r--r-- | media/mtp/MtpDatabase.h | 94 |
1 files changed, 43 insertions, 51 deletions
diff --git a/media/mtp/MtpDatabase.h b/media/mtp/MtpDatabase.h index 51d5fb1..0c70d9f 100644 --- a/media/mtp/MtpDatabase.h +++ b/media/mtp/MtpDatabase.h @@ -23,65 +23,57 @@ namespace android { class MtpDataPacket; -class SqliteStatement; - -class MtpDatabase : public SqliteDatabase { -private: - SqliteStatement* mFileIdQuery; - SqliteStatement* mFilePathQuery; - SqliteStatement* mObjectInfoQuery; - SqliteStatement* mFileInserter; - SqliteStatement* mFileDeleter; - SqliteStatement* mAudioInserter; - SqliteStatement* mAudioDeleter; +class MtpDatabase { public: - MtpDatabase(); - virtual ~MtpDatabase(); - - static uint32_t getTableForFile(MtpObjectFormat format); - - bool open(const char* path, bool create); - MtpObjectHandle getObjectHandle(const char* path); - MtpObjectHandle addFile(const char* path, + virtual ~MtpDatabase(); + + static uint32_t getTableForFile(MtpObjectFormat format); + + virtual MtpObjectHandle getObjectHandle(const char* path) = 0; + virtual MtpObjectHandle addFile(const char* path, + MtpObjectFormat format, + MtpObjectHandle parent, + MtpStorageID storage, + uint64_t size, + time_t modified) = 0; + + virtual MtpObjectHandle addAudioFile(MtpObjectHandle id) = 0; + + virtual MtpObjectHandle addAudioFile(MtpObjectHandle id, + const char* title, + const char* artist, + const char* album, + const char* albumArtist, + const char* genre, + const char* composer, + const char* mimeType, + int track, + int year, + int duration) = 0; + + virtual MtpObjectHandleList* getObjectList(MtpStorageID storageID, MtpObjectFormat format, - MtpObjectHandle parent, - MtpStorageID storage, - uint64_t size, - time_t modified); - - MtpObjectHandle addAudioFile(MtpObjectHandle id); - - MtpObjectHandle addAudioFile(MtpObjectHandle id, - const char* title, - const char* artist, - const char* album, - const char* albumArtist, - const char* genre, - const char* composer, - const char* mimeType, - int track, - int year, - int duration); - - MtpObjectHandleList* getObjectList(MtpStorageID storageID, - MtpObjectFormat format, - MtpObjectHandle parent); + MtpObjectHandle parent) = 0; - MtpResponseCode getObjectProperty(MtpObjectHandle handle, - MtpObjectProperty property, - MtpDataPacket& packet); + virtual MtpResponseCode getObjectProperty(MtpObjectHandle handle, + MtpObjectProperty property, + MtpDataPacket& packet) = 0; - MtpResponseCode getObjectInfo(MtpObjectHandle handle, - MtpDataPacket& packet); + virtual MtpResponseCode getObjectInfo(MtpObjectHandle handle, + MtpDataPacket& packet) = 0; - bool getObjectFilePath(MtpObjectHandle handle, - MtpString& filePath, - int64_t& fileLength); - bool deleteFile(MtpObjectHandle handle); + virtual bool getObjectFilePath(MtpObjectHandle handle, + MtpString& filePath, + int64_t& fileLength) = 0; + virtual bool deleteFile(MtpObjectHandle handle) = 0; // helper for media scanner - MtpObjectHandle* getFileList(int& outCount); + virtual MtpObjectHandle* getFileList(int& outCount) = 0; + + virtual void beginTransaction() = 0; + virtual void commitTransaction() = 0; + virtual void rollbackTransaction() = 0; }; }; // namespace android |