1{
2  "formatVersion": 1,
3  "database": {
4    "version": 14,
5    "identityHash": "d7d0af82be76967267b25b916861b907",
6    "entities": [
7      {
8        "tableName": "Dependency",
9        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`work_spec_id` TEXT NOT NULL, `prerequisite_id` TEXT NOT NULL, PRIMARY KEY(`work_spec_id`, `prerequisite_id`), FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE , FOREIGN KEY(`prerequisite_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
10        "fields": [
11          {
12            "fieldPath": "workSpecId",
13            "columnName": "work_spec_id",
14            "affinity": "TEXT",
15            "notNull": true
16          },
17          {
18            "fieldPath": "prerequisiteId",
19            "columnName": "prerequisite_id",
20            "affinity": "TEXT",
21            "notNull": true
22          }
23        ],
24        "primaryKey": {
25          "columnNames": [
26            "work_spec_id",
27            "prerequisite_id"
28          ],
29          "autoGenerate": false
30        },
31        "indices": [
32          {
33            "name": "index_Dependency_work_spec_id",
34            "unique": false,
35            "columnNames": [
36              "work_spec_id"
37            ],
38            "orders": [],
39            "createSql": "CREATE INDEX IF NOT EXISTS `index_Dependency_work_spec_id` ON `${TABLE_NAME}` (`work_spec_id`)"
40          },
41          {
42            "name": "index_Dependency_prerequisite_id",
43            "unique": false,
44            "columnNames": [
45              "prerequisite_id"
46            ],
47            "orders": [],
48            "createSql": "CREATE INDEX IF NOT EXISTS `index_Dependency_prerequisite_id` ON `${TABLE_NAME}` (`prerequisite_id`)"
49          }
50        ],
51        "foreignKeys": [
52          {
53            "table": "WorkSpec",
54            "onDelete": "CASCADE",
55            "onUpdate": "CASCADE",
56            "columns": [
57              "work_spec_id"
58            ],
59            "referencedColumns": [
60              "id"
61            ]
62          },
63          {
64            "table": "WorkSpec",
65            "onDelete": "CASCADE",
66            "onUpdate": "CASCADE",
67            "columns": [
68              "prerequisite_id"
69            ],
70            "referencedColumns": [
71              "id"
72            ]
73          }
74        ]
75      },
76      {
77        "tableName": "WorkSpec",
78        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` TEXT NOT NULL, `state` INTEGER NOT NULL, `worker_class_name` TEXT NOT NULL, `input_merger_class_name` TEXT, `input` BLOB NOT NULL, `output` BLOB NOT NULL, `initial_delay` INTEGER NOT NULL, `interval_duration` INTEGER NOT NULL, `flex_duration` INTEGER NOT NULL, `run_attempt_count` INTEGER NOT NULL, `backoff_policy` INTEGER NOT NULL, `backoff_delay_duration` INTEGER NOT NULL, `period_start_time` INTEGER NOT NULL, `minimum_retention_duration` INTEGER NOT NULL, `schedule_requested_at` INTEGER NOT NULL, `run_in_foreground` INTEGER NOT NULL, `out_of_quota_policy` INTEGER NOT NULL, `required_network_type` INTEGER NOT NULL, `requires_charging` INTEGER NOT NULL, `requires_device_idle` INTEGER NOT NULL, `requires_battery_not_low` INTEGER NOT NULL, `requires_storage_not_low` INTEGER NOT NULL, `trigger_content_update_delay` INTEGER NOT NULL, `trigger_max_content_delay` INTEGER NOT NULL, `content_uri_triggers` BLOB NOT NULL, PRIMARY KEY(`id`))",
79        "fields": [
80          {
81            "fieldPath": "id",
82            "columnName": "id",
83            "affinity": "TEXT",
84            "notNull": true
85          },
86          {
87            "fieldPath": "state",
88            "columnName": "state",
89            "affinity": "INTEGER",
90            "notNull": true
91          },
92          {
93            "fieldPath": "workerClassName",
94            "columnName": "worker_class_name",
95            "affinity": "TEXT",
96            "notNull": true
97          },
98          {
99            "fieldPath": "inputMergerClassName",
100            "columnName": "input_merger_class_name",
101            "affinity": "TEXT",
102            "notNull": false
103          },
104          {
105            "fieldPath": "input",
106            "columnName": "input",
107            "affinity": "BLOB",
108            "notNull": true
109          },
110          {
111            "fieldPath": "output",
112            "columnName": "output",
113            "affinity": "BLOB",
114            "notNull": true
115          },
116          {
117            "fieldPath": "initialDelay",
118            "columnName": "initial_delay",
119            "affinity": "INTEGER",
120            "notNull": true
121          },
122          {
123            "fieldPath": "intervalDuration",
124            "columnName": "interval_duration",
125            "affinity": "INTEGER",
126            "notNull": true
127          },
128          {
129            "fieldPath": "flexDuration",
130            "columnName": "flex_duration",
131            "affinity": "INTEGER",
132            "notNull": true
133          },
134          {
135            "fieldPath": "runAttemptCount",
136            "columnName": "run_attempt_count",
137            "affinity": "INTEGER",
138            "notNull": true
139          },
140          {
141            "fieldPath": "backoffPolicy",
142            "columnName": "backoff_policy",
143            "affinity": "INTEGER",
144            "notNull": true
145          },
146          {
147            "fieldPath": "backoffDelayDuration",
148            "columnName": "backoff_delay_duration",
149            "affinity": "INTEGER",
150            "notNull": true
151          },
152          {
153            "fieldPath": "periodStartTime",
154            "columnName": "period_start_time",
155            "affinity": "INTEGER",
156            "notNull": true
157          },
158          {
159            "fieldPath": "minimumRetentionDuration",
160            "columnName": "minimum_retention_duration",
161            "affinity": "INTEGER",
162            "notNull": true
163          },
164          {
165            "fieldPath": "scheduleRequestedAt",
166            "columnName": "schedule_requested_at",
167            "affinity": "INTEGER",
168            "notNull": true
169          },
170          {
171            "fieldPath": "expedited",
172            "columnName": "run_in_foreground",
173            "affinity": "INTEGER",
174            "notNull": true
175          },
176          {
177            "fieldPath": "outOfQuotaPolicy",
178            "columnName": "out_of_quota_policy",
179            "affinity": "INTEGER",
180            "notNull": true
181          },
182          {
183            "fieldPath": "constraints.mRequiredNetworkType",
184            "columnName": "required_network_type",
185            "affinity": "INTEGER",
186            "notNull": true
187          },
188          {
189            "fieldPath": "constraints.mRequiresCharging",
190            "columnName": "requires_charging",
191            "affinity": "INTEGER",
192            "notNull": true
193          },
194          {
195            "fieldPath": "constraints.mRequiresDeviceIdle",
196            "columnName": "requires_device_idle",
197            "affinity": "INTEGER",
198            "notNull": true
199          },
200          {
201            "fieldPath": "constraints.mRequiresBatteryNotLow",
202            "columnName": "requires_battery_not_low",
203            "affinity": "INTEGER",
204            "notNull": true
205          },
206          {
207            "fieldPath": "constraints.mRequiresStorageNotLow",
208            "columnName": "requires_storage_not_low",
209            "affinity": "INTEGER",
210            "notNull": true
211          },
212          {
213            "fieldPath": "constraints.mTriggerContentUpdateDelay",
214            "columnName": "trigger_content_update_delay",
215            "affinity": "INTEGER",
216            "notNull": true
217          },
218          {
219            "fieldPath": "constraints.mTriggerMaxContentDelay",
220            "columnName": "trigger_max_content_delay",
221            "affinity": "INTEGER",
222            "notNull": true
223          },
224          {
225            "fieldPath": "constraints.mContentUriTriggers",
226            "columnName": "content_uri_triggers",
227            "affinity": "BLOB",
228            "notNull": true
229          }
230        ],
231        "primaryKey": {
232          "columnNames": [
233            "id"
234          ],
235          "autoGenerate": false
236        },
237        "indices": [
238          {
239            "name": "index_WorkSpec_schedule_requested_at",
240            "unique": false,
241            "columnNames": [
242              "schedule_requested_at"
243            ],
244            "orders": [],
245            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkSpec_schedule_requested_at` ON `${TABLE_NAME}` (`schedule_requested_at`)"
246          },
247          {
248            "name": "index_WorkSpec_period_start_time",
249            "unique": false,
250            "columnNames": [
251              "period_start_time"
252            ],
253            "orders": [],
254            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkSpec_period_start_time` ON `${TABLE_NAME}` (`period_start_time`)"
255          }
256        ],
257        "foreignKeys": []
258      },
259      {
260        "tableName": "WorkTag",
261        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`tag` TEXT NOT NULL, `work_spec_id` TEXT NOT NULL, PRIMARY KEY(`tag`, `work_spec_id`), FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
262        "fields": [
263          {
264            "fieldPath": "tag",
265            "columnName": "tag",
266            "affinity": "TEXT",
267            "notNull": true
268          },
269          {
270            "fieldPath": "workSpecId",
271            "columnName": "work_spec_id",
272            "affinity": "TEXT",
273            "notNull": true
274          }
275        ],
276        "primaryKey": {
277          "columnNames": [
278            "tag",
279            "work_spec_id"
280          ],
281          "autoGenerate": false
282        },
283        "indices": [
284          {
285            "name": "index_WorkTag_work_spec_id",
286            "unique": false,
287            "columnNames": [
288              "work_spec_id"
289            ],
290            "orders": [],
291            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkTag_work_spec_id` ON `${TABLE_NAME}` (`work_spec_id`)"
292          }
293        ],
294        "foreignKeys": [
295          {
296            "table": "WorkSpec",
297            "onDelete": "CASCADE",
298            "onUpdate": "CASCADE",
299            "columns": [
300              "work_spec_id"
301            ],
302            "referencedColumns": [
303              "id"
304            ]
305          }
306        ]
307      },
308      {
309        "tableName": "SystemIdInfo",
310        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`work_spec_id` TEXT NOT NULL, `system_id` INTEGER NOT NULL, PRIMARY KEY(`work_spec_id`), FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
311        "fields": [
312          {
313            "fieldPath": "workSpecId",
314            "columnName": "work_spec_id",
315            "affinity": "TEXT",
316            "notNull": true
317          },
318          {
319            "fieldPath": "systemId",
320            "columnName": "system_id",
321            "affinity": "INTEGER",
322            "notNull": true
323          }
324        ],
325        "primaryKey": {
326          "columnNames": [
327            "work_spec_id"
328          ],
329          "autoGenerate": false
330        },
331        "indices": [],
332        "foreignKeys": [
333          {
334            "table": "WorkSpec",
335            "onDelete": "CASCADE",
336            "onUpdate": "CASCADE",
337            "columns": [
338              "work_spec_id"
339            ],
340            "referencedColumns": [
341              "id"
342            ]
343          }
344        ]
345      },
346      {
347        "tableName": "WorkName",
348        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`name` TEXT NOT NULL, `work_spec_id` TEXT NOT NULL, PRIMARY KEY(`name`, `work_spec_id`), FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
349        "fields": [
350          {
351            "fieldPath": "name",
352            "columnName": "name",
353            "affinity": "TEXT",
354            "notNull": true
355          },
356          {
357            "fieldPath": "workSpecId",
358            "columnName": "work_spec_id",
359            "affinity": "TEXT",
360            "notNull": true
361          }
362        ],
363        "primaryKey": {
364          "columnNames": [
365            "name",
366            "work_spec_id"
367          ],
368          "autoGenerate": false
369        },
370        "indices": [
371          {
372            "name": "index_WorkName_work_spec_id",
373            "unique": false,
374            "columnNames": [
375              "work_spec_id"
376            ],
377            "orders": [],
378            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkName_work_spec_id` ON `${TABLE_NAME}` (`work_spec_id`)"
379          }
380        ],
381        "foreignKeys": [
382          {
383            "table": "WorkSpec",
384            "onDelete": "CASCADE",
385            "onUpdate": "CASCADE",
386            "columns": [
387              "work_spec_id"
388            ],
389            "referencedColumns": [
390              "id"
391            ]
392          }
393        ]
394      },
395      {
396        "tableName": "WorkProgress",
397        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`work_spec_id` TEXT NOT NULL, `progress` BLOB NOT NULL, PRIMARY KEY(`work_spec_id`), FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
398        "fields": [
399          {
400            "fieldPath": "workSpecId",
401            "columnName": "work_spec_id",
402            "affinity": "TEXT",
403            "notNull": true
404          },
405          {
406            "fieldPath": "progress",
407            "columnName": "progress",
408            "affinity": "BLOB",
409            "notNull": true
410          }
411        ],
412        "primaryKey": {
413          "columnNames": [
414            "work_spec_id"
415          ],
416          "autoGenerate": false
417        },
418        "indices": [],
419        "foreignKeys": [
420          {
421            "table": "WorkSpec",
422            "onDelete": "CASCADE",
423            "onUpdate": "CASCADE",
424            "columns": [
425              "work_spec_id"
426            ],
427            "referencedColumns": [
428              "id"
429            ]
430          }
431        ]
432      },
433      {
434        "tableName": "Preference",
435        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `long_value` INTEGER, PRIMARY KEY(`key`))",
436        "fields": [
437          {
438            "fieldPath": "key",
439            "columnName": "key",
440            "affinity": "TEXT",
441            "notNull": true
442          },
443          {
444            "fieldPath": "value",
445            "columnName": "long_value",
446            "affinity": "INTEGER",
447            "notNull": false
448          }
449        ],
450        "primaryKey": {
451          "columnNames": [
452            "key"
453          ],
454          "autoGenerate": false
455        },
456        "indices": [],
457        "foreignKeys": []
458      }
459    ],
460    "views": [],
461    "setupQueries": [
462      "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
463      "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'd7d0af82be76967267b25b916861b907')"
464    ]
465  }
466}