1 // Copyright (c) 2013 Intel Corporation. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "xwalk/application/common/application_storage_constants.h"
6 #include "base/strings/stringprintf.h"
9 namespace application_storage_constants {
11 const char kAppTableName[] = "applications";
12 const char kEventTableName[] = "registered_events";
13 const char kPermissionTableName[] = "stored_permissions";
14 const char kGarbageCollectionTableName[] = "garbage_collection";
16 const char kCreateAppTableOp[] =
17 "CREATE TABLE applications ("
18 "id TEXT NOT NULL UNIQUE PRIMARY KEY,"
19 "manifest TEXT NOT NULL,"
23 const char kCreateEventTableOp[] =
24 "CREATE TABLE registered_events ("
26 "event_names TEXT NOT NULL,"
28 "FOREIGN KEY (id) REFERENCES applications(id)"
31 const char kCreatePermissionTableOp[] =
32 "CREATE TABLE stored_permissions ("
34 "permission_names TEXT NOT NULL,"
36 "FOREIGN KEY (id) REFERENCES applications(id)"
39 const char kCreateGarbageCollectionTableOp[] =
40 "CREATE TABLE garbage_collection ("
41 "app_id TEXT NOT NULL PRIMARY KEY)";
43 const char kCreateGarbageCollectionTriggersOp[] =
44 "CREATE TRIGGER IF NOT EXISTS add_garbage_app AFTER DELETE ON applications"
45 " BEGIN INSERT INTO garbage_collection VALUES (OLD.id); END;"
46 "CREATE TRIGGER IF NOT EXISTS del_garbage_app AFTER INSERT ON applications"
47 " BEGIN DELETE FROM garbage_collection WHERE app_id = NEW.id; END";
49 const char kGetAllRowsFromAppEventTableOp[] =
50 "SELECT A.id, A.manifest, A.path, A.install_time, "
51 "B.event_names, C.permission_names "
52 "FROM applications as A "
53 "LEFT JOIN registered_events as B "
55 "LEFT JOIN stored_permissions as C "
58 const char kSetApplicationWithBindOp[] =
59 "INSERT INTO applications (manifest, path, install_time, id) "
62 const char kUpdateApplicationWithBindOp[] =
63 "UPDATE applications SET manifest = ?, path = ?,"
64 "install_time = ? WHERE id = ?";
66 const char kDeleteApplicationWithBindOp[] =
67 "DELETE FROM applications WHERE id = ?";
69 const char kInsertEventsWithBindOp[] =
70 "INSERT INTO registered_events (event_names, id) "
73 const char kUpdateEventsWithBindOp[] =
74 "UPDATE registered_events SET event_names = ? WHERE id = ?";
76 const char kDeleteEventsWithBindOp[] =
77 "DELETE FROM registered_events WHERE id = ?";
79 const char kInsertPermissionsWithBindOp[] =
80 "INSERT INTO stored_permissions (permission_names, id) "
83 const char kUpdatePermissionsWithBindOp[] =
84 "UPDATE stored_permissions SET permission_names = ? WHERE id = ?";
86 const char kDeletePermissionsWithBindOp[] =
87 "DELETE FROM stored_permissions WHERE id = ?";
89 const char kGetAllRowsFromGarbageCollectionTableOp[] =
90 "SELECT app_id FROM garbage_collection";
92 const char kDeleteGarbageAppIdWithBindOp[] =
93 "DELETE FROM garbage_collection WHERE app_id = ?";
95 } // namespace application_storage_constants