| OLD | NEW | 
|---|
|  | (Empty) | 
| 1 /* |  | 
| 2  * Copyright (C) 2009 Google Inc. All rights reserved. |  | 
| 3  * |  | 
| 4  * Redistribution and use in source and binary forms, with or without |  | 
| 5  * modification, are permitted provided that the following conditions are |  | 
| 6  * met: |  | 
| 7  * |  | 
| 8  *     * Redistributions of source code must retain the above copyright |  | 
| 9  * notice, this list of conditions and the following disclaimer. |  | 
| 10  *     * Redistributions in binary form must reproduce the above |  | 
| 11  * copyright notice, this list of conditions and the following disclaimer |  | 
| 12  * in the documentation and/or other materials provided with the |  | 
| 13  * distribution. |  | 
| 14  *     * Neither the name of Google Inc. nor the names of its |  | 
| 15  * contributors may be used to endorse or promote products derived from |  | 
| 16  * this software without specific prior written permission. |  | 
| 17  * |  | 
| 18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |  | 
| 19  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |  | 
| 20  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |  | 
| 21  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |  | 
| 22  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |  | 
| 23  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |  | 
| 24  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |  | 
| 25  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |  | 
| 26  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |  | 
| 27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |  | 
| 28  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |  | 
| 29  */ |  | 
| 30 |  | 
| 31 #include "config.h" |  | 
| 32 #include "core/platform/sql/SQLiteFileSystem.h" |  | 
| 33 |  | 
| 34 #include <sqlite3.h> |  | 
| 35 #include "public/platform/Platform.h" |  | 
| 36 #include "wtf/text/CString.h" |  | 
| 37 |  | 
| 38 // SQLiteFileSystem::registerSQLiteVFS() is implemented in the |  | 
| 39 // platform-specific files SQLiteFileSystemChromium{Win|Posix}.cpp |  | 
| 40 namespace WebCore { |  | 
| 41 |  | 
| 42 SQLiteFileSystem::SQLiteFileSystem() |  | 
| 43 { |  | 
| 44 } |  | 
| 45 |  | 
| 46 int SQLiteFileSystem::openDatabase(const String& filename, sqlite3** database, b
     ool forWebSQLDatabase) |  | 
| 47 { |  | 
| 48     if (!forWebSQLDatabase) |  | 
| 49         return sqlite3_open(filename.utf8().data(), database); |  | 
| 50 |  | 
| 51     return sqlite3_open_v2(filename.utf8().data(), database, SQLITE_OPEN_READWRI
     TE | SQLITE_OPEN_CREATE, "chromium_vfs"); |  | 
| 52 } |  | 
| 53 |  | 
| 54 String SQLiteFileSystem::getFileNameForNewDatabase( |  | 
| 55   const String&, const String& dbName, const String &originIdentifier, SQLiteDat
     abase*) |  | 
| 56 { |  | 
| 57     // Not used by Chromium's DatabaseTracker implementation |  | 
| 58     ASSERT_NOT_REACHED(); |  | 
| 59     return String(); |  | 
| 60 } |  | 
| 61 |  | 
| 62 String SQLiteFileSystem::appendDatabaseFileNameToPath(const String&, const Strin
     g& fileName) |  | 
| 63 { |  | 
| 64     // Not used by Chromium's DatabaseTracker implementation |  | 
| 65     ASSERT_NOT_REACHED(); |  | 
| 66     return String(); |  | 
| 67 } |  | 
| 68 |  | 
| 69 bool SQLiteFileSystem::ensureDatabaseDirectoryExists(const String&) |  | 
| 70 { |  | 
| 71     // Not used by Chromium's DatabaseTracker implementation |  | 
| 72     ASSERT_NOT_REACHED(); |  | 
| 73     return false; |  | 
| 74 } |  | 
| 75 |  | 
| 76 bool SQLiteFileSystem::ensureDatabaseFileExists(const String&, bool) |  | 
| 77 { |  | 
| 78     // Not used by Chromium's DatabaseTracker implementation |  | 
| 79     ASSERT_NOT_REACHED(); |  | 
| 80     return false; |  | 
| 81 } |  | 
| 82 |  | 
| 83 bool SQLiteFileSystem::deleteEmptyDatabaseDirectory(const String&) |  | 
| 84 { |  | 
| 85     // Not used by Chromium's DatabaseTracker implementation |  | 
| 86     ASSERT_NOT_REACHED(); |  | 
| 87     return false; |  | 
| 88 } |  | 
| 89 |  | 
| 90 bool SQLiteFileSystem::deleteDatabaseFile(const String& fileName) |  | 
| 91 { |  | 
| 92     return (WebKit::Platform::current()->databaseDeleteFile(fileName, false) == 
     SQLITE_OK); |  | 
| 93 } |  | 
| 94 |  | 
| 95 long long SQLiteFileSystem::getDatabaseFileSize(const String& fileName) |  | 
| 96 { |  | 
| 97     return WebKit::Platform::current()->databaseGetFileSize(fileName); |  | 
| 98 } |  | 
| 99 |  | 
| 100 } // namespace WebCore |  | 
| OLD | NEW | 
|---|