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