tizen beta release
[framework/web/wrt-commons.git] / modules / widget_dao / orm / wrt_db
1 SQL(
2     PRAGMA foreign_keys = ON;
3     BEGIN TRANSACTION;
4 )
5 /*TODO: secure_by_default should be 0 by default*/
6 CREATE_TABLE(GlobalProperties)
7     COLUMN_NOT_NULL(developer_mode,          INT,          DEFAULT 0)
8     COLUMN_NOT_NULL(parental_mode,           INT,          DEFAULT 0)
9     COLUMN(parental_allowed_age,             INT,          DEFAULT NULL)
10     COLUMN_NOT_NULL(secure_by_default,       INT,          DEFAULT 1)
11     COLUMN_NOT_NULL(home_network_data_usage, TINYINT,      DEFAULT 1)
12     COLUMN_NOT_NULL(roaming_data_usage,      TINYINT,      DEFAULT 1)
13     COLUMN_NOT_NULL(compliance_mode,         TINYINT,      DEFAULT 0)
14     COLUMN_NOT_NULL(compliance_fake_imei,    VARCHAR(256), DEFAULT '')
15     COLUMN_NOT_NULL(compliance_fake_meid,    VARCHAR(256), DEFAULT '')
16 CREATE_TABLE_END()
17
18 SQL(
19     INSERT INTO GlobalProperties DEFAULT VALUES;
20 )
21
22 CREATE_TABLE(WidgetInfo)
23     COLUMN_NOT_NULL(app_id,         INTEGER,         PRIMARY KEY AUTOINCREMENT)
24     COLUMN(widget_type,               INT,  DEFAULT 1)
25     COLUMN(widget_id,               VARCHAR(256),  DEFAULT '')
26     COLUMN(widget_version,          VARCHAR(256),  DEFAULT '')
27     COLUMN(widget_width,            INT,           DEFAULT 0)
28     COLUMN(widget_height,           INT,           DEFAULT 0)
29     COLUMN(author_name,             VARCHAR(256),  DEFAULT '')
30     COLUMN(author_email,            VARCHAR(256),  DEFAULT '')
31     COLUMN(author_href,             VARCHAR(256),  DEFAULT '')
32     COLUMN(base_folder,             VARCHAR(256),  DEFAULT '')
33     COLUMN(webkit_plugins_required, TINYINT,       DEFAULT 0)
34     COLUMN(security_domain,         INT,           DEFAULT 0)
35     COLUMN_NOT_NULL(child_protection,INT,          DEFAULT 0)
36     COLUMN(recognized,              INT,           DEFAULT 0)
37     COLUMN(wac_signed,              INT,           DEFAULT 0)
38     COLUMN(distributor_signed,      INT,           DEFAULT 0)
39     COLUMN(min_version,             VARCHAR(16),   DEFAULT '1.0')
40     COLUMN_NOT_NULL(back_supported, TINYINT,       DEFAULT 0)
41     COLUMN(access_network,          TINYINT,       DEFAULT 0)
42     COLUMN(defaultlocale,           VARCHAR(256),  DEFAULT 0)
43     COLUMN(pkgname,             VARCHAR(256),  DEFAULT 0)
44 CREATE_TABLE_END()
45
46 CREATE_TABLE(WidgetCertificate)
47     COLUMN_NOT_NULL(app_id,                 INT,)
48     COLUMN_NOT_NULL(encoded_chain,          VARCHAR(16000),)
49     TABLE_CONSTRAINTS(
50         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
51     )
52 CREATE_TABLE_END()
53
54 CREATE_TABLE(WidgetWindowModes)
55     COLUMN_NOT_NULL(app_id,         INT,)
56     COLUMN_NOT_NULL(window_mode,    VARCHAR(256),)
57     TABLE_CONSTRAINTS(
58         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
59     )
60 CREATE_TABLE_END()
61
62 CREATE_TABLE(WidgetUserAgentLocales)
63     COLUMN_NOT_NULL(id,             INTEGER,        PRIMARY KEY AUTOINCREMENT)
64     COLUMN_NOT_NULL(app_id,         INT,)
65     COLUMN_NOT_NULL(language_tag,   TEXT,)
66     TABLE_CONSTRAINTS(
67         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
68     )
69 CREATE_TABLE_END()
70
71 CREATE_TABLE(LocalizedWidgetInfo)
72     COLUMN_NOT_NULL(app_id,         INT,)
73     COLUMN_NOT_NULL(widget_locale,  TEXT,)
74     COLUMN(widget_name,             TEXT,)
75     COLUMN(widget_shortname,        TEXT,)
76     COLUMN(widget_description,      TEXT,)
77     COLUMN(widget_license,          TEXT,)
78     COLUMN(widget_license_file,     TEXT,)
79     COLUMN(widget_license_href,     TEXT,)
80
81     TABLE_CONSTRAINTS(
82         PRIMARY KEY (app_id, widget_locale),
83         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
84     )
85 CREATE_TABLE_END()
86
87 CREATE_TABLE(WidgetExtendedInfo)
88     COLUMN_NOT_NULL(app_id,     INTEGER,        PRIMARY KEY)
89     COLUMN(last_update_time,    BIGINT,         DEFAULT 0)
90     COLUMN(install_time,        BIGINT,         DEFAULT 0)
91     COLUMN(option_state,        INT,            DEFAULT 0)
92     COLUMN(share_href,          VARCHAR(256),   DEFAULT '')
93     COLUMN(signature_type,      INT,            DEFAULT 0)
94     COLUMN(factory_widget,      INT,            DEFAULT 0)
95     COLUMN(updated,             INT,            DEFAULT 0)
96     COLUMN(update_policy,       INT,            DEFAULT 0)
97     COLUMN_NOT_NULL(test_widget, INT, CHECK(test_widget between 0 and 1) DEFAULT 0)
98     TABLE_CONSTRAINTS(
99         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
100     )
101 CREATE_TABLE_END()
102
103 CREATE_TABLE(WidgetPreference)
104     COLUMN_NOT_NULL(app_id,     INT,)
105     COLUMN_NOT_NULL(key_name,   VARCHAR(256),)
106     COLUMN(key_value,           VARCHAR(8000),  DEFAULT '')
107     COLUMN(readonly,            INT,            DEFAULT 0)
108
109     TABLE_CONSTRAINTS(
110         PRIMARY KEY(app_id, key_name),
111         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
112     )
113 CREATE_TABLE_END()
114
115 CREATE_TABLE(WidgetFeature)
116     COLUMN_NOT_NULL(widget_feature_id,  INTEGER,        primary key autoincrement)
117     COLUMN_NOT_NULL(app_id,             INT,)
118     COLUMN_NOT_NULL(name,               VARCHAR(256),)
119     COLUMN_NOT_NULL(required,           INT,)
120     TABLE_CONSTRAINTS(
121         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
122     )
123 CREATE_TABLE_END()
124
125 CREATE_TABLE(FeatureParam)
126     COLUMN_NOT_NULL(widget_feature_id,  INTEGER,)
127     COLUMN_NOT_NULL(name,         TEXT,)
128     COLUMN_NOT_NULL(value,        TEXT,)
129
130     TABLE_CONSTRAINTS(
131         FOREIGN KEY (widget_feature_id) REFERENCES WidgetFeature (widget_feature_id) ON DELETE CASCADE
132     )
133 CREATE_TABLE_END()
134
135 CREATE_TABLE(WidgetIcon)
136     COLUMN_NOT_NULL(icon_id,        INTEGER,   primary key autoincrement)
137     COLUMN_NOT_NULL(app_id,         INT,)
138     COLUMN_NOT_NULL(icon_src,       VARCHAR(256),)
139     COLUMN(icon_width,              INT,            DEFAULT 0)
140     COLUMN(icon_height,             INT,            DEFAULT 0)
141     TABLE_CONSTRAINTS(
142         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
143     )
144 CREATE_TABLE_END()
145
146 CREATE_TABLE(WidgetLocalizedIcon)
147     COLUMN_NOT_NULL(app_id,         INT,)   /* TODO key duplicated for efficiency - ORM doesn't support JOIN */
148     COLUMN_NOT_NULL(icon_id,        INTEGER,)
149     COLUMN_NOT_NULL(widget_locale,  TEXT,)
150     TABLE_CONSTRAINTS(
151         FOREIGN KEY(icon_id) REFERENCES WidgetIcon (icon_id) ON DELETE CASCADE,
152         PRIMARY KEY(icon_id, widget_locale)
153     )
154 CREATE_TABLE_END()
155
156 CREATE_TABLE(WidgetStartFile)
157     COLUMN_NOT_NULL(start_file_id,  INTEGER,   primary key autoincrement)
158     COLUMN_NOT_NULL(app_id,         INT,)
159     COLUMN_NOT_NULL(src,            VARCHAR(256),)
160     TABLE_CONSTRAINTS(
161         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
162     )
163 CREATE_TABLE_END()
164
165 CREATE_TABLE(WidgetLocalizedStartFile)
166     COLUMN_NOT_NULL(app_id,         INT,)   /* TODO key duplicated for efficiency - ORM doesn't support JOIN */
167     COLUMN_NOT_NULL(start_file_id,  INTEGER,)
168     COLUMN_NOT_NULL(widget_locale,  TEXT,)
169     COLUMN_NOT_NULL(type,           TEXT,)
170     COLUMN_NOT_NULL(encoding,       TEXT,)
171     TABLE_CONSTRAINTS(
172         FOREIGN KEY(start_file_id) REFERENCES WidgetStartFile (start_file_id) ON DELETE CASCADE,
173         PRIMARY KEY(start_file_id, widget_locale)
174     )
175 CREATE_TABLE_END()
176
177 CREATE_TABLE(WidgetAccessHost)
178     COLUMN_NOT_NULL(app_id,     INT,)
179     COLUMN_NOT_NULL(host,       VARCHAR(256),)
180
181     TABLE_CONSTRAINTS(
182         PRIMARY KEY(app_id, host)
183         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE)
184 CREATE_TABLE_END()
185
186 CREATE_TABLE(WidgetCertificateFingerprint)
187     COLUMN_NOT_NULL(app_id,     INT,)
188     COLUMN_NOT_NULL(owner,      INT,)
189     COLUMN_NOT_NULL(chainid,    INT,)
190     COLUMN_NOT_NULL(type,       INT,)
191     COLUMN(md5_fingerprint,     VARCHAR(64),)
192     COLUMN(sha1_fingerprint,    VARCHAR(64),)
193     COLUMN(common_name,         VARCHAR(64),)
194
195     TABLE_CONSTRAINTS(
196         PRIMARY KEY(app_id, chainid, owner, type)
197         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
198     )
199 CREATE_TABLE_END()
200
201 CREATE_TABLE(WidgetWARPInfo)
202     COLUMN_NOT_NULL(app_id,     INT,)
203     COLUMN_NOT_NULL(iri,        VARCHAR(65536),)
204     COLUMN(subdomain_access,    INT,        CHECK(subdomain_access between 0 and 1))
205
206     TABLE_CONSTRAINTS(
207         PRIMARY KEY(app_id, iri)
208         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
209     )
210 CREATE_TABLE_END()
211
212 CREATE_TABLE(FeaturesList)
213     COLUMN_NOT_NULL(FeatureUUID,            INTEGER,    primary key autoincrement)
214     COLUMN_NOT_NULL(FeatureName,            TEXT,       unique)
215     COLUMN_NOT_NULL(PluginPropertiesId,     INT,)
216 CREATE_TABLE_END()
217
218 CREATE_TABLE(PluginProperties)
219     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    primary key autoincrement)
220     COLUMN_NOT_NULL(InstallationState,      INTEGER,    DEFAULT 0)
221     COLUMN_NOT_NULL(PluginLibraryName,      TEXT,       unique)
222     COLUMN(PluginLibraryPath,               TEXT,)
223     COLUMN(InstallURI,                      TEXT,)
224     COLUMN(KeyCN,                           TEXT,)
225     COLUMN(RootKeyCN,                       TEXT,)
226     COLUMN(RootKeyFingerprint,              TEXT,)
227 CREATE_TABLE_END()
228
229 CREATE_TABLE(PluginDependencies)
230     COLUMN_NOT_NULL(PluginPropertiesId,              INTEGER,    not null)
231     COLUMN_NOT_NULL(RequiredPluginPropertiesId,      INTEGER,    not null)
232 CREATE_TABLE_END()
233
234 CREATE_TABLE(PluginImplementedObjects)
235     COLUMN_NOT_NULL(PluginObject,           TEXT,       unique)
236     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    not null)
237 CREATE_TABLE_END()
238
239 CREATE_TABLE(PluginRequiredObjects)
240     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    not null)
241     COLUMN_NOT_NULL(PluginObject,           TEXT,       not null)
242 CREATE_TABLE_END()
243
244 CREATE_TABLE(DeviceCapabilities)
245     COLUMN_NOT_NULL(DeviceCapID,            INTEGER,    primary key autoincrement)
246     COLUMN_NOT_NULL(DeviceCapName,          TEXT,       unique)
247     COLUMN(DeviceCapDefaultValue,           INT,)
248 CREATE_TABLE_END()
249
250 CREATE_TABLE(FeatureDeviceCapProxy)
251     COLUMN_NOT_NULL(FeatureUUID,            INT,        not null)
252     COLUMN_NOT_NULL(DeviceCapID,            INT,        not null)
253
254     TABLE_CONSTRAINTS(PRIMARY KEY(FeatureUUID,DeviceCapID))
255 CREATE_TABLE_END()
256
257 CREATE_TABLE(PowderLevels)
258     COLUMN_NOT_NULL(app_id,       INT,       )
259     COLUMN_NOT_NULL(id,           INTEGER,   primary key autoincrement)
260     COLUMN_NOT_NULL(category,     TEXT,      )
261     COLUMN_NOT_NULL(level,        INTEGER,   )
262     TABLE_CONSTRAINTS(
263         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
264     )
265 CREATE_TABLE_END()
266
267 CREATE_TABLE(PowderLevelContexts)
268     COLUMN_NOT_NULL(levelId,      INTEGER,   )
269     COLUMN_NOT_NULL(context,      TEXT,      )
270
271     TABLE_CONSTRAINTS(
272         FOREIGN KEY (levelId) REFERENCES PowderLevels (id) ON DELETE CASCADE
273     )
274 CREATE_TABLE_END()
275
276 CREATE_TABLE(ChildProtectionBlacklist)
277     COLUMN_NOT_NULL(url,        TEXT,       unique)
278 CREATE_TABLE_END()
279
280 CREATE_TABLE(PowderRules)
281     COLUMN_NOT_NULL(id,           INTEGER,   primary key autoincrement)
282     COLUMN_NOT_NULL(category,     TEXT,      )
283     COLUMN_NOT_NULL(level,        INTEGER,   )
284     COLUMN(context,               TEXT,      )
285     TABLE_CONSTRAINTS(unique(category,context))
286 CREATE_TABLE_END()
287
288 CREATE_TABLE(DefferedWidgetPackageInstallation)
289     COLUMN_NOT_NULL(path,        TEXT,       unique)
290 CREATE_TABLE_END()
291
292 CREATE_TABLE(OCSPResponseStorage)
293     COLUMN_NOT_NULL(cert_chain,        TEXT,       primary key)
294     COLUMN(end_entity_check,           INT,)
295     COLUMN(ocsp_status,                INT,)
296     COLUMN(next_update_time,           BIGINT,)
297 CREATE_TABLE_END()
298
299 CREATE_TABLE(CRLResponseStorage)
300     COLUMN_NOT_NULL(distribution_point,TEXT,       primary key)
301     COLUMN_NOT_NULL(crl_body,          TEXT,)
302     COLUMN(next_update_time,           BIGINT,)
303 CREATE_TABLE_END()
304
305 CREATE_TABLE(AutoSaveIdPasswd)
306     COLUMN_NOT_NULL(address,    VARCHAR(256), unique)
307     COLUMN_NOT_NULL(userId,     VARCHAR(128),)
308     COLUMN_NOT_NULL(passwd,     VARCHAR(128),)
309 CREATE_TABLE_END()
310
311 CREATE_TABLE(SettginsList)
312     COLUMN_NOT_NULL(appId,         INT,)
313     COLUMN_NOT_NULL(settingName,               TEXT,   )
314     COLUMN_NOT_NULL(settingValue,        TEXT,   )
315     TABLE_CONSTRAINTS(
316         FOREIGN KEY (appId) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
317     )
318 CREATE_TABLE_END()
319
320 CREATE_TABLE(ApplicationServiceInfo)
321     COLUMN_NOT_NULL(app_id,    INT,)
322     COLUMN_NOT_NULL(src,       TEXT,)
323     COLUMN_NOT_NULL(operation, TEXT,)
324     COLUMN_NOT_NULL(scheme,    TEXT,)
325     COLUMN_NOT_NULL(mime,      TEXT,)
326
327     TABLE_CONSTRAINTS(
328         PRIMARY KEY(app_id, operation, scheme, mime)
329         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
330     )
331 CREATE_TABLE_END()
332
333 CREATE_TABLE(WidgetWhiteURIList)
334     COLUMN_NOT_NULL(uri,        VARCHAR(65536), primary key)
335     COLUMN_NOT_NULL(subdomain_access,    INT,        CHECK(subdomain_access between 0 and 1))
336 CREATE_TABLE_END()
337
338 SQL(
339     INSERT INTO WidgetWhiteURIList VALUES("http://samsung.com", 1);
340     INSERT INTO WidgetWhiteURIList VALUES("http://orange.fr", 1);
341     INSERT INTO WidgetWhiteURIList VALUES("http://orange.co.uk", 1);
342 )
343
344 /*TODO: It will be removed when user agent is fixed. User agent MUST be configurable in development...*/
345 CREATE_TABLE(UserAgents)
346     COLUMN_NOT_NULL(key_name,   VARCHAR(256),)
347     COLUMN(key_value,           VARCHAR(8000),  DEFAULT '')
348
349     TABLE_CONSTRAINTS(PRIMARY KEY(key_name))
350 CREATE_TABLE_END()
351
352 SQL(
353     INSERT INTO UserAgents VALUES("Tizen", "Mozilla/5.0 (Linux; U; Tizen 1.0; en-us) AppleWebKit/534.46 (KHTML, like Gecko) Mobile Tizen Browser/1.0");
354     INSERT INTO UserAgents VALUES("Chrome 16", "Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20110706 Firefox/5.0");
355 )
356
357 SQL(
358     COMMIT;
359 )