tizen 2.4 release
[framework/web/wrt-commons.git] / modules / widget_dao / orm / wrt_db
1 SQL(
2     PRAGMA foreign_keys = ON;
3     BEGIN TRANSACTION;
4 )
5
6 CREATE_TABLE(WidgetInfo)
7     COLUMN_NOT_NULL(app_id,         INTEGER, PRIMARY KEY AUTOINCREMENT)
8     COLUMN(widget_type,             INT,     DEFAULT 1)
9     COLUMN(widget_id,               TEXT,    DEFAULT '')
10     COLUMN(widget_version,          TEXT,    DEFAULT '')
11     COLUMN(widget_width,            INT,     DEFAULT 0)
12     COLUMN(widget_height,           INT,     DEFAULT 0)
13     COLUMN(author_name,             TEXT,    DEFAULT '')
14     COLUMN(author_email,            TEXT,    DEFAULT '')
15     COLUMN(author_href,             TEXT,    DEFAULT '')
16     COLUMN(csp_policy,              TEXT,    DEFAULT '')
17     COLUMN(csp_policy_report_only,  TEXT,    DEFAULT '')
18     COLUMN(min_version,             TEXT,    DEFAULT '1.0')
19     COLUMN_NOT_NULL(back_supported, TINYINT, DEFAULT 0)
20     COLUMN(defaultlocale,           TEXT,    DEFAULT 0)
21     COLUMN_NOT_NULL(tizen_pkgid,    TEXT,    DEFAULT '')
22     COLUMN_NOT_NULL(tizen_appid,    TEXT,    DEFAULT 0 UNIQUE)
23     COLUMN(pkg_type,                INT,     DEFAULT 0)
24     COLUMN(security_model_version,  INT,     DEFAULT 0)
25 CREATE_TABLE_END()
26
27 SQL(
28     CREATE INDEX IF NOT EXISTS WidgetInfo_AppidIndex ON WidgetInfo(tizen_appid);
29 )
30
31 CREATE_TABLE(WidgetCertificate)
32     COLUMN_NOT_NULL(app_id,                 INT,)
33     COLUMN_NOT_NULL(cert_source,            INT,    CHECK(cert_source between 0 and 2))
34     COLUMN_NOT_NULL(encoded_chain,          VARCHAR(16000),)
35     TABLE_CONSTRAINTS(
36         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
37     )
38 CREATE_TABLE_END()
39
40 CREATE_TABLE(WidgetWindowModes)
41     COLUMN_NOT_NULL(app_id,         INT,)
42     COLUMN_NOT_NULL(window_mode,    VARCHAR(256),)
43     TABLE_CONSTRAINTS(
44         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
45     )
46 CREATE_TABLE_END()
47
48 CREATE_TABLE(LocalizedWidgetInfo)
49     COLUMN_NOT_NULL(app_id,         INT,)
50     COLUMN_NOT_NULL(widget_locale,  TEXT,)
51     COLUMN(widget_name,             TEXT,)
52     COLUMN(widget_shortname,        TEXT,)
53     COLUMN(widget_description,      TEXT,)
54     COLUMN(widget_license,          TEXT,)
55     COLUMN(widget_license_file,     TEXT,)
56     COLUMN(widget_license_href,     TEXT,)
57
58     TABLE_CONSTRAINTS(
59         PRIMARY KEY (app_id, widget_locale),
60         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
61     )
62 CREATE_TABLE_END()
63
64 CREATE_TABLE(WidgetExtendedInfo)
65     COLUMN_NOT_NULL(app_id,     INTEGER,        PRIMARY KEY)
66     COLUMN(install_time,        BIGINT,         DEFAULT 0)
67     COLUMN(updated,             INT,            DEFAULT 0)
68     COLUMN(splash_img_src,      TEXT,           DEFAULT '')
69     COLUMN(background_page,     TEXT,           DEFAULT '')
70     COLUMN(installed_path,      TEXT,           DEFAULT '')
71     TABLE_CONSTRAINTS(
72         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
73     )
74 CREATE_TABLE_END()
75
76 CREATE_TABLE(WidgetPreference)
77     COLUMN_NOT_NULL(app_id,     INTEGER,)
78     COLUMN_NOT_NULL(tizen_appid,    TEXT,           DEFAULT 0)
79     COLUMN_NOT_NULL(key_name,       TEXT,)
80     COLUMN(key_value,               TEXT,           DEFAULT '')
81     COLUMN(readonly,                INT,            DEFAULT 0)
82
83     TABLE_CONSTRAINTS(
84         PRIMARY KEY(app_id, key_name),
85         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
86     )
87 CREATE_TABLE_END()
88
89 CREATE_TABLE(WidgetFeature)
90     COLUMN_NOT_NULL(widget_feature_id,  INTEGER,        primary key autoincrement)
91     COLUMN_NOT_NULL(app_id,             INT,)
92     COLUMN_NOT_NULL(name,               TEXT,)
93     COLUMN_NOT_NULL(rejected,           INT,)
94     TABLE_CONSTRAINTS(
95         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
96     )
97 CREATE_TABLE_END()
98
99 CREATE_TABLE(WidgetPrivilege)
100     COLUMN_NOT_NULL(widget_privilege_id, INTEGER,        primary key autoincrement)
101     COLUMN_NOT_NULL(app_id,              INT,)
102     COLUMN_NOT_NULL(name,                TEXT,)
103     TABLE_CONSTRAINTS(
104         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
105     )
106 CREATE_TABLE_END()
107
108 CREATE_TABLE(WidgetIcon)
109     COLUMN_NOT_NULL(icon_id,        INTEGER,   primary key autoincrement)
110     COLUMN_NOT_NULL(app_id,         INT,)
111     COLUMN_NOT_NULL(icon_src,       TEXT,)
112     COLUMN(icon_width,              INT,            DEFAULT 0)
113     COLUMN(icon_height,             INT,            DEFAULT 0)
114     TABLE_CONSTRAINTS(
115         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
116     )
117 CREATE_TABLE_END()
118
119 CREATE_TABLE(WidgetLocalizedIcon)
120     COLUMN_NOT_NULL(app_id,         INT,)   /* TODO key duplicated for efficiency - ORM doesn't support JOIN */
121     COLUMN_NOT_NULL(icon_id,        INTEGER,)
122     COLUMN_NOT_NULL(widget_locale,  TEXT,)
123     TABLE_CONSTRAINTS(
124         FOREIGN KEY(icon_id) REFERENCES WidgetIcon (icon_id) ON DELETE CASCADE,
125         PRIMARY KEY(icon_id, widget_locale)
126     )
127 CREATE_TABLE_END()
128
129 CREATE_TABLE(WidgetStartFile)
130     COLUMN_NOT_NULL(start_file_id,  INTEGER,   primary key autoincrement)
131     COLUMN_NOT_NULL(app_id,         INT,)
132     COLUMN_NOT_NULL(src,            TEXT,)
133     TABLE_CONSTRAINTS(
134         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
135     )
136 CREATE_TABLE_END()
137
138 CREATE_TABLE(WidgetLocalizedStartFile)
139     COLUMN_NOT_NULL(app_id,         INT,)   /* TODO key duplicated for efficiency - ORM doesn't support JOIN */
140     COLUMN_NOT_NULL(start_file_id,  INTEGER,)
141     COLUMN_NOT_NULL(widget_locale,  TEXT,)
142     COLUMN_NOT_NULL(type,           TEXT,)
143     COLUMN_NOT_NULL(encoding,       TEXT,)
144     TABLE_CONSTRAINTS(
145         FOREIGN KEY(start_file_id) REFERENCES WidgetStartFile (start_file_id) ON DELETE CASCADE,
146         PRIMARY KEY(start_file_id, widget_locale)
147     )
148 CREATE_TABLE_END()
149
150 CREATE_TABLE(WidgetExternalLocations)
151     COLUMN_NOT_NULL(app_id,         INT,)
152     COLUMN_NOT_NULL(path,  TEXT,)
153     TABLE_CONSTRAINTS(
154         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE,
155         PRIMARY KEY(app_id, path)
156     )
157 CREATE_TABLE_END()
158
159 CREATE_TABLE(WidgetCertificateFingerprint)
160     COLUMN_NOT_NULL(app_id,     INT,)
161     COLUMN_NOT_NULL(owner,      INT,)
162     COLUMN_NOT_NULL(chainid,    INT,)
163     COLUMN_NOT_NULL(type,       INT,)
164     COLUMN(md5_fingerprint,     TEXT,)
165     COLUMN(sha1_fingerprint,    TEXT,)
166     COLUMN(common_name,         VARCHAR(64),)
167
168     TABLE_CONSTRAINTS(
169         PRIMARY KEY(app_id, chainid, owner, type)
170         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
171     )
172 CREATE_TABLE_END()
173
174 CREATE_TABLE(WidgetWARPInfo)
175     COLUMN_NOT_NULL(app_id,     INT,)
176     COLUMN_NOT_NULL(iri,        TEXT,)
177     COLUMN(subdomain_access,    INT,        CHECK(subdomain_access between 0 and 1))
178
179     TABLE_CONSTRAINTS(
180         PRIMARY KEY(app_id, iri)
181         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
182     )
183 CREATE_TABLE_END()
184
185 CREATE_TABLE(WidgetAllowNavigation)
186     COLUMN_NOT_NULL(app_id,     INT,)
187     COLUMN_NOT_NULL(scheme,     TEXT,)
188     COLUMN_NOT_NULL(host,       TEXT,)
189
190     TABLE_CONSTRAINTS(
191         PRIMARY KEY(app_id, scheme, host)
192         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
193     )
194 CREATE_TABLE_END()
195
196 CREATE_TABLE(FeaturesList)
197     COLUMN_NOT_NULL(FeatureUUID,            INTEGER,    primary key autoincrement)
198     COLUMN_NOT_NULL(FeatureName,            TEXT,       unique)
199     COLUMN_NOT_NULL(PluginPropertiesId,     INT,)
200
201     TABLE_CONSTRAINTS(
202         FOREIGN KEY (PluginPropertiesId) REFERENCES PluginProperties (PluginPropertiesId) ON DELETE CASCADE
203     )
204 CREATE_TABLE_END()
205
206 CREATE_TABLE(PluginProperties)
207     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    primary key autoincrement)
208     COLUMN_NOT_NULL(InstallationState,      INTEGER,    DEFAULT 0)
209     COLUMN_NOT_NULL(PluginLibraryName,      TEXT,       unique)
210     COLUMN_NOT_NULL(LibraryTimestamp,       INT,)
211     COLUMN(PluginLibraryPath,               TEXT,)
212 CREATE_TABLE_END()
213
214 CREATE_TABLE(PluginDependencies)
215     COLUMN_NOT_NULL(PluginPropertiesId,              INTEGER,    not null)
216     COLUMN_NOT_NULL(RequiredPluginPropertiesId,      INTEGER,    not null)
217
218     TABLE_CONSTRAINTS(
219         FOREIGN KEY (PluginPropertiesId) REFERENCES PluginProperties (PluginPropertiesId) ON DELETE CASCADE
220         FOREIGN KEY (RequiredPluginPropertiesId) REFERENCES PluginProperties (PluginPropertiesId) ON DELETE CASCADE
221     )
222 CREATE_TABLE_END()
223
224 CREATE_TABLE(PluginImplementedObjects)
225     COLUMN_NOT_NULL(PluginObject,           TEXT,       unique)
226     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    not null)
227
228     TABLE_CONSTRAINTS(
229         FOREIGN KEY (PluginPropertiesId) REFERENCES PluginProperties (PluginPropertiesId) ON DELETE CASCADE
230     )
231 CREATE_TABLE_END()
232
233 CREATE_TABLE(PluginRequiredObjects)
234     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    not null)
235     COLUMN_NOT_NULL(PluginObject,           TEXT,       not null)
236
237     TABLE_CONSTRAINTS(
238         FOREIGN KEY (PluginPropertiesId) REFERENCES PluginProperties (PluginPropertiesId) ON DELETE CASCADE
239     )
240 CREATE_TABLE_END()
241
242 CREATE_TABLE(DeviceCapabilities)
243     COLUMN_NOT_NULL(DeviceCapID,            INTEGER,    primary key autoincrement)
244     COLUMN_NOT_NULL(DeviceCapName,          TEXT,       unique)
245     COLUMN(DeviceCapDefaultValue,           INT,)
246 CREATE_TABLE_END()
247
248 CREATE_TABLE(FeatureDeviceCapProxy)
249     COLUMN_NOT_NULL(FeatureUUID,            INT,        not null)
250     COLUMN_NOT_NULL(DeviceCapID,            INT,        not null)
251
252     TABLE_CONSTRAINTS(
253         FOREIGN KEY (FeatureUUID) REFERENCES FeaturesList (FeatureUUID) ON DELETE CASCADE
254         FOREIGN KEY (DeviceCapID) REFERENCES DeviceCapabilities (DeviceCapID) ON DELETE CASCADE
255         PRIMARY KEY(FeatureUUID,DeviceCapID)
256     )
257 CREATE_TABLE_END()
258
259 CREATE_TABLE(SettingsList)
260     COLUMN_NOT_NULL(appId,          INT,)
261     COLUMN_NOT_NULL(settingName,    TEXT,)
262     COLUMN_NOT_NULL(settingValue,   TEXT,)
263     TABLE_CONSTRAINTS(
264         FOREIGN KEY (appId) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
265     )
266 CREATE_TABLE_END()
267
268 CREATE_TABLE(AppControlInfo)
269     COLUMN_NOT_NULL(app_id,         INT,)
270     COLUMN_NOT_NULL(execute_index,  INT,)
271     COLUMN_NOT_NULL(src,            TEXT,)
272     COLUMN_NOT_NULL(operation,      TEXT,)
273     COLUMN_NOT_NULL(uri,            TEXT,)
274     COLUMN_NOT_NULL(mime,           TEXT,)
275     COLUMN_NOT_NULL(disposition,    TINYINT, DEFAULT 0)
276
277     TABLE_CONSTRAINTS(
278         PRIMARY KEY(app_id, operation, uri, mime)
279         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
280     )
281 CREATE_TABLE_END()
282
283 CREATE_TABLE(EncryptedResourceList)
284     COLUMN_NOT_NULL(app_id,         INT,)
285     COLUMN_NOT_NULL(resource,       TEXT,)
286     COLUMN_NOT_NULL(size,           INT,)
287
288     TABLE_CONSTRAINTS(
289         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
290     )
291 CREATE_TABLE_END()
292
293 CREATE_TABLE(LiveBoxInfo)
294     COLUMN_NOT_NULL(app_id,     INT,)
295     COLUMN(livebox_id,          TEXT,           DEFAULT '')
296     TABLE_CONSTRAINTS(
297         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
298     )
299 CREATE_TABLE_END()
300
301 SQL(
302     COMMIT;
303 )