00b50ccf85a9053880c407bb2de1dc9c352f902e
[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(secure_by_default,       INT,          DEFAULT 1)
9     COLUMN_NOT_NULL(home_network_data_usage, TINYINT,      DEFAULT 1)
10     COLUMN_NOT_NULL(roaming_data_usage,      TINYINT,      DEFAULT 1)
11     COLUMN_NOT_NULL(compliance_mode,         TINYINT,      DEFAULT 0)
12     COLUMN_NOT_NULL(compliance_fake_imei,    VARCHAR(256), DEFAULT '')
13     COLUMN_NOT_NULL(compliance_fake_meid,    VARCHAR(256), DEFAULT '')
14 CREATE_TABLE_END()
15
16 SQL(
17     INSERT INTO GlobalProperties DEFAULT VALUES;
18 )
19
20 CREATE_TABLE(WidgetInfo)
21     COLUMN_NOT_NULL(app_id,         INTEGER,         PRIMARY KEY AUTOINCREMENT)
22     COLUMN(widget_type,               INT,  DEFAULT 1)
23     COLUMN(widget_id,               VARCHAR(256),  DEFAULT '')
24     COLUMN(widget_version,          VARCHAR(256),  DEFAULT '')
25     COLUMN(widget_width,            INT,           DEFAULT 0)
26     COLUMN(widget_height,           INT,           DEFAULT 0)
27     COLUMN(author_name,             VARCHAR(256),  DEFAULT '')
28     COLUMN(author_email,            VARCHAR(256),  DEFAULT '')
29     COLUMN(author_href,             VARCHAR(256),  DEFAULT '')
30     COLUMN(base_folder,             VARCHAR(256),  DEFAULT '')
31     COLUMN(webkit_plugins_required, TINYINT,       DEFAULT 0)
32     COLUMN(security_domain,         INT,           DEFAULT 0)
33     COLUMN(recognized,              INT,           DEFAULT 0)
34     COLUMN(wac_signed,              INT,           DEFAULT 0)
35     COLUMN(distributor_signed,      INT,           DEFAULT 0)
36     COLUMN(min_version,             VARCHAR(16),   DEFAULT '1.0')
37     COLUMN_NOT_NULL(back_supported, TINYINT,       DEFAULT 0)
38     COLUMN(access_network,          TINYINT,       DEFAULT 0)
39     COLUMN(defaultlocale,           VARCHAR(256),  DEFAULT 0)
40     COLUMN(pkgname,             VARCHAR(256),  DEFAULT 0)
41 CREATE_TABLE_END()
42
43 CREATE_TABLE(WidgetCertificate)
44     COLUMN_NOT_NULL(app_id,                 INT,)
45     COLUMN_NOT_NULL(encoded_chain,          VARCHAR(16000),)
46     TABLE_CONSTRAINTS(
47         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
48     )
49 CREATE_TABLE_END()
50
51 CREATE_TABLE(WidgetWindowModes)
52     COLUMN_NOT_NULL(app_id,         INT,)
53     COLUMN_NOT_NULL(window_mode,    VARCHAR(256),)
54     TABLE_CONSTRAINTS(
55         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
56     )
57 CREATE_TABLE_END()
58
59 CREATE_TABLE(WidgetUserAgentLocales)
60     COLUMN_NOT_NULL(id,             INTEGER,        PRIMARY KEY AUTOINCREMENT)
61     COLUMN_NOT_NULL(app_id,         INT,)
62     COLUMN_NOT_NULL(language_tag,   TEXT,)
63     TABLE_CONSTRAINTS(
64         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
65     )
66 CREATE_TABLE_END()
67
68 CREATE_TABLE(LocalizedWidgetInfo)
69     COLUMN_NOT_NULL(app_id,         INT,)
70     COLUMN_NOT_NULL(widget_locale,  TEXT,)
71     COLUMN(widget_name,             TEXT,)
72     COLUMN(widget_shortname,        TEXT,)
73     COLUMN(widget_description,      TEXT,)
74     COLUMN(widget_license,          TEXT,)
75     COLUMN(widget_license_file,     TEXT,)
76     COLUMN(widget_license_href,     TEXT,)
77
78     TABLE_CONSTRAINTS(
79         PRIMARY KEY (app_id, widget_locale),
80         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
81     )
82 CREATE_TABLE_END()
83
84 CREATE_TABLE(WidgetExtendedInfo)
85     COLUMN_NOT_NULL(app_id,     INTEGER,        PRIMARY KEY)
86     COLUMN(last_update_time,    BIGINT,         DEFAULT 0)
87     COLUMN(install_time,        BIGINT,         DEFAULT 0)
88     COLUMN(option_state,        INT,            DEFAULT 0)
89     COLUMN(share_href,          VARCHAR(256),   DEFAULT '')
90     COLUMN(signature_type,      INT,            DEFAULT 0)
91     COLUMN(factory_widget,      INT,            DEFAULT 0)
92     COLUMN(updated,             INT,            DEFAULT 0)
93     COLUMN(update_policy,       INT,            DEFAULT 0)
94     COLUMN_NOT_NULL(test_widget, INT, CHECK(test_widget between 0 and 1) DEFAULT 0)
95     TABLE_CONSTRAINTS(
96         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
97     )
98 CREATE_TABLE_END()
99
100 CREATE_TABLE(WidgetPreference)
101     COLUMN_NOT_NULL(app_id,     INT,)
102     COLUMN_NOT_NULL(key_name,   VARCHAR(256),)
103     COLUMN(key_value,           VARCHAR(8000),  DEFAULT '')
104     COLUMN(readonly,            INT,            DEFAULT 0)
105
106     TABLE_CONSTRAINTS(
107         PRIMARY KEY(app_id, key_name),
108         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
109     )
110 CREATE_TABLE_END()
111
112 CREATE_TABLE(WidgetFeature)
113     COLUMN_NOT_NULL(widget_feature_id,  INTEGER,        primary key autoincrement)
114     COLUMN_NOT_NULL(app_id,             INT,)
115     COLUMN_NOT_NULL(name,               VARCHAR(256),)
116     COLUMN_NOT_NULL(required,           INT,)
117     COLUMN_NOT_NULL(rejected,           INT,)
118     TABLE_CONSTRAINTS(
119         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
120     )
121 CREATE_TABLE_END()
122
123 CREATE_TABLE(FeatureParam)
124     COLUMN_NOT_NULL(widget_feature_id,  INTEGER,)
125     COLUMN_NOT_NULL(name,         TEXT,)
126     COLUMN_NOT_NULL(value,        TEXT,)
127
128     TABLE_CONSTRAINTS(
129         FOREIGN KEY (widget_feature_id) REFERENCES WidgetFeature (widget_feature_id) ON DELETE CASCADE
130     )
131 CREATE_TABLE_END()
132
133 CREATE_TABLE(WidgetIcon)
134     COLUMN_NOT_NULL(icon_id,        INTEGER,   primary key autoincrement)
135     COLUMN_NOT_NULL(app_id,         INT,)
136     COLUMN_NOT_NULL(icon_src,       VARCHAR(256),)
137     COLUMN(icon_width,              INT,            DEFAULT 0)
138     COLUMN(icon_height,             INT,            DEFAULT 0)
139     TABLE_CONSTRAINTS(
140         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
141     )
142 CREATE_TABLE_END()
143
144 CREATE_TABLE(WidgetLocalizedIcon)
145     COLUMN_NOT_NULL(app_id,         INT,)   /* TODO key duplicated for efficiency - ORM doesn't support JOIN */
146     COLUMN_NOT_NULL(icon_id,        INTEGER,)
147     COLUMN_NOT_NULL(widget_locale,  TEXT,)
148     TABLE_CONSTRAINTS(
149         FOREIGN KEY(icon_id) REFERENCES WidgetIcon (icon_id) ON DELETE CASCADE,
150         PRIMARY KEY(icon_id, widget_locale)
151     )
152 CREATE_TABLE_END()
153
154 CREATE_TABLE(WidgetStartFile)
155     COLUMN_NOT_NULL(start_file_id,  INTEGER,   primary key autoincrement)
156     COLUMN_NOT_NULL(app_id,         INT,)
157     COLUMN_NOT_NULL(src,            VARCHAR(256),)
158     TABLE_CONSTRAINTS(
159         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
160     )
161 CREATE_TABLE_END()
162
163 CREATE_TABLE(WidgetLocalizedStartFile)
164     COLUMN_NOT_NULL(app_id,         INT,)   /* TODO key duplicated for efficiency - ORM doesn't support JOIN */
165     COLUMN_NOT_NULL(start_file_id,  INTEGER,)
166     COLUMN_NOT_NULL(widget_locale,  TEXT,)
167     COLUMN_NOT_NULL(type,           TEXT,)
168     COLUMN_NOT_NULL(encoding,       TEXT,)
169     TABLE_CONSTRAINTS(
170         FOREIGN KEY(start_file_id) REFERENCES WidgetStartFile (start_file_id) ON DELETE CASCADE,
171         PRIMARY KEY(start_file_id, widget_locale)
172     )
173 CREATE_TABLE_END()
174
175 CREATE_TABLE(WidgetAccessHost)
176     COLUMN_NOT_NULL(app_id,     INT,)
177     COLUMN_NOT_NULL(host,       VARCHAR(256),)
178
179     TABLE_CONSTRAINTS(
180         PRIMARY KEY(app_id, host)
181         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE)
182 CREATE_TABLE_END()
183
184 CREATE_TABLE(WidgetCertificateFingerprint)
185     COLUMN_NOT_NULL(app_id,     INT,)
186     COLUMN_NOT_NULL(owner,      INT,)
187     COLUMN_NOT_NULL(chainid,    INT,)
188     COLUMN_NOT_NULL(type,       INT,)
189     COLUMN(md5_fingerprint,     VARCHAR(64),)
190     COLUMN(sha1_fingerprint,    VARCHAR(64),)
191     COLUMN(common_name,         VARCHAR(64),)
192
193     TABLE_CONSTRAINTS(
194         PRIMARY KEY(app_id, chainid, owner, type)
195         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
196     )
197 CREATE_TABLE_END()
198
199 CREATE_TABLE(WidgetWARPInfo)
200     COLUMN_NOT_NULL(app_id,     INT,)
201     COLUMN_NOT_NULL(iri,        VARCHAR(65536),)
202     COLUMN(subdomain_access,    INT,        CHECK(subdomain_access between 0 and 1))
203
204     TABLE_CONSTRAINTS(
205         PRIMARY KEY(app_id, iri)
206         FOREIGN KEY (app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
207     )
208 CREATE_TABLE_END()
209
210 CREATE_TABLE(FeaturesList)
211     COLUMN_NOT_NULL(FeatureUUID,            INTEGER,    primary key autoincrement)
212     COLUMN_NOT_NULL(FeatureName,            TEXT,       unique)
213     COLUMN_NOT_NULL(PluginPropertiesId,     INT,)
214 CREATE_TABLE_END()
215
216 CREATE_TABLE(PluginProperties)
217     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    primary key autoincrement)
218     COLUMN_NOT_NULL(InstallationState,      INTEGER,    DEFAULT 0)
219     COLUMN_NOT_NULL(PluginLibraryName,      TEXT,       unique)
220     COLUMN(PluginLibraryPath,               TEXT,)
221     COLUMN(InstallURI,                      TEXT,)
222     COLUMN(KeyCN,                           TEXT,)
223     COLUMN(RootKeyCN,                       TEXT,)
224     COLUMN(RootKeyFingerprint,              TEXT,)
225 CREATE_TABLE_END()
226
227 CREATE_TABLE(PluginDependencies)
228     COLUMN_NOT_NULL(PluginPropertiesId,              INTEGER,    not null)
229     COLUMN_NOT_NULL(RequiredPluginPropertiesId,      INTEGER,    not null)
230 CREATE_TABLE_END()
231
232 CREATE_TABLE(PluginImplementedObjects)
233     COLUMN_NOT_NULL(PluginObject,           TEXT,       unique)
234     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    not null)
235 CREATE_TABLE_END()
236
237 CREATE_TABLE(PluginRequiredObjects)
238     COLUMN_NOT_NULL(PluginPropertiesId,     INTEGER,    not null)
239     COLUMN_NOT_NULL(PluginObject,           TEXT,       not null)
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(PRIMARY KEY(FeatureUUID,DeviceCapID))
253 CREATE_TABLE_END()
254
255 CREATE_TABLE(DefferedWidgetPackageInstallation)
256     COLUMN_NOT_NULL(path,        TEXT,       unique)
257 CREATE_TABLE_END()
258
259 CREATE_TABLE(OCSPResponseStorage)
260     COLUMN_NOT_NULL(cert_chain,        TEXT,       primary key)
261     COLUMN(end_entity_check,           INT,)
262     COLUMN(ocsp_status,                INT,)
263     COLUMN(next_update_time,           BIGINT,)
264 CREATE_TABLE_END()
265
266 CREATE_TABLE(CRLResponseStorage)
267     COLUMN_NOT_NULL(distribution_point,TEXT,       primary key)
268     COLUMN_NOT_NULL(crl_body,          TEXT,)
269     COLUMN(next_update_time,           BIGINT,)
270 CREATE_TABLE_END()
271
272 CREATE_TABLE(SettginsList)
273     COLUMN_NOT_NULL(appId,         INT,)
274     COLUMN_NOT_NULL(settingName,               TEXT,   )
275     COLUMN_NOT_NULL(settingValue,        TEXT,   )
276     TABLE_CONSTRAINTS(
277         FOREIGN KEY (appId) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
278     )
279 CREATE_TABLE_END()
280
281 CREATE_TABLE(ApplicationServiceInfo)
282     COLUMN_NOT_NULL(app_id,    INT,)
283     COLUMN_NOT_NULL(src,       TEXT,)
284     COLUMN_NOT_NULL(operation, TEXT,)
285     COLUMN_NOT_NULL(scheme,    TEXT,)
286     COLUMN_NOT_NULL(mime,      TEXT,)
287
288     TABLE_CONSTRAINTS(
289         PRIMARY KEY(app_id, operation, scheme, mime)
290         FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
291     )
292 CREATE_TABLE_END()
293
294 CREATE_TABLE(WidgetWhiteURIList)
295     COLUMN_NOT_NULL(uri,        VARCHAR(65536), primary key)
296     COLUMN_NOT_NULL(subdomain_access,    INT,        CHECK(subdomain_access between 0 and 1))
297 CREATE_TABLE_END()
298
299 SQL(
300     INSERT INTO WidgetWhiteURIList VALUES("http://samsung.com", 1);
301     INSERT INTO WidgetWhiteURIList VALUES("http://orange.fr", 1);
302     INSERT INTO WidgetWhiteURIList VALUES("http://orange.co.uk", 1);
303 )
304
305 /*TODO: It will be removed when user agent is fixed. User agent MUST be configurable in development...*/
306 CREATE_TABLE(UserAgents)
307     COLUMN_NOT_NULL(key_name,   VARCHAR(256),)
308     COLUMN(key_value,           VARCHAR(8000),  DEFAULT '')
309
310     TABLE_CONSTRAINTS(PRIMARY KEY(key_name))
311 CREATE_TABLE_END()
312
313 SQL(
314     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");
315 )
316
317 SQL(
318     COMMIT;
319 )