1{
2  "formatVersion": 1,
3  "database": {
4    "version": 21,
5    "identityHash": "347835753abee7989f767d3ba5a5a2dd",
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          "autoGenerate": false,
26          "columnNames": [
27            "work_spec_id",
28            "prerequisite_id"
29          ]
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 NOT NULL, `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, `last_enqueue_time` INTEGER NOT NULL DEFAULT -1, `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, `period_count` INTEGER NOT NULL DEFAULT 0, `generation` INTEGER NOT NULL DEFAULT 0, `next_schedule_time_override` INTEGER NOT NULL DEFAULT 9223372036854775807, `next_schedule_time_override_generation` INTEGER NOT NULL DEFAULT 0, `stop_reason` INTEGER NOT NULL DEFAULT -256, `required_network_type` INTEGER NOT NULL, `required_network_request` BLOB NOT NULL DEFAULT x'', `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": true
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": "lastEnqueueTime",
154            "columnName": "last_enqueue_time",
155            "affinity": "INTEGER",
156            "notNull": true,
157            "defaultValue": "-1"
158          },
159          {
160            "fieldPath": "minimumRetentionDuration",
161            "columnName": "minimum_retention_duration",
162            "affinity": "INTEGER",
163            "notNull": true
164          },
165          {
166            "fieldPath": "scheduleRequestedAt",
167            "columnName": "schedule_requested_at",
168            "affinity": "INTEGER",
169            "notNull": true
170          },
171          {
172            "fieldPath": "expedited",
173            "columnName": "run_in_foreground",
174            "affinity": "INTEGER",
175            "notNull": true
176          },
177          {
178            "fieldPath": "outOfQuotaPolicy",
179            "columnName": "out_of_quota_policy",
180            "affinity": "INTEGER",
181            "notNull": true
182          },
183          {
184            "fieldPath": "periodCount",
185            "columnName": "period_count",
186            "affinity": "INTEGER",
187            "notNull": true,
188            "defaultValue": "0"
189          },
190          {
191            "fieldPath": "generation",
192            "columnName": "generation",
193            "affinity": "INTEGER",
194            "notNull": true,
195            "defaultValue": "0"
196          },
197          {
198            "fieldPath": "nextScheduleTimeOverride",
199            "columnName": "next_schedule_time_override",
200            "affinity": "INTEGER",
201            "notNull": true,
202            "defaultValue": "9223372036854775807"
203          },
204          {
205            "fieldPath": "nextScheduleTimeOverrideGeneration",
206            "columnName": "next_schedule_time_override_generation",
207            "affinity": "INTEGER",
208            "notNull": true,
209            "defaultValue": "0"
210          },
211          {
212            "fieldPath": "stopReason",
213            "columnName": "stop_reason",
214            "affinity": "INTEGER",
215            "notNull": true,
216            "defaultValue": "-256"
217          },
218          {
219            "fieldPath": "constraints.requiredNetworkType",
220            "columnName": "required_network_type",
221            "affinity": "INTEGER",
222            "notNull": true
223          },
224          {
225            "fieldPath": "constraints.requiredNetworkRequestCompat",
226            "columnName": "required_network_request",
227            "affinity": "BLOB",
228            "notNull": true,
229            "defaultValue": "x''"
230          },
231          {
232            "fieldPath": "constraints.requiresCharging",
233            "columnName": "requires_charging",
234            "affinity": "INTEGER",
235            "notNull": true
236          },
237          {
238            "fieldPath": "constraints.requiresDeviceIdle",
239            "columnName": "requires_device_idle",
240            "affinity": "INTEGER",
241            "notNull": true
242          },
243          {
244            "fieldPath": "constraints.requiresBatteryNotLow",
245            "columnName": "requires_battery_not_low",
246            "affinity": "INTEGER",
247            "notNull": true
248          },
249          {
250            "fieldPath": "constraints.requiresStorageNotLow",
251            "columnName": "requires_storage_not_low",
252            "affinity": "INTEGER",
253            "notNull": true
254          },
255          {
256            "fieldPath": "constraints.contentTriggerUpdateDelayMillis",
257            "columnName": "trigger_content_update_delay",
258            "affinity": "INTEGER",
259            "notNull": true
260          },
261          {
262            "fieldPath": "constraints.contentTriggerMaxDelayMillis",
263            "columnName": "trigger_max_content_delay",
264            "affinity": "INTEGER",
265            "notNull": true
266          },
267          {
268            "fieldPath": "constraints.contentUriTriggers",
269            "columnName": "content_uri_triggers",
270            "affinity": "BLOB",
271            "notNull": true
272          }
273        ],
274        "primaryKey": {
275          "autoGenerate": false,
276          "columnNames": [
277            "id"
278          ]
279        },
280        "indices": [
281          {
282            "name": "index_WorkSpec_schedule_requested_at",
283            "unique": false,
284            "columnNames": [
285              "schedule_requested_at"
286            ],
287            "orders": [],
288            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkSpec_schedule_requested_at` ON `${TABLE_NAME}` (`schedule_requested_at`)"
289          },
290          {
291            "name": "index_WorkSpec_last_enqueue_time",
292            "unique": false,
293            "columnNames": [
294              "last_enqueue_time"
295            ],
296            "orders": [],
297            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkSpec_last_enqueue_time` ON `${TABLE_NAME}` (`last_enqueue_time`)"
298          }
299        ],
300        "foreignKeys": []
301      },
302      {
303        "tableName": "WorkTag",
304        "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 )",
305        "fields": [
306          {
307            "fieldPath": "tag",
308            "columnName": "tag",
309            "affinity": "TEXT",
310            "notNull": true
311          },
312          {
313            "fieldPath": "workSpecId",
314            "columnName": "work_spec_id",
315            "affinity": "TEXT",
316            "notNull": true
317          }
318        ],
319        "primaryKey": {
320          "autoGenerate": false,
321          "columnNames": [
322            "tag",
323            "work_spec_id"
324          ]
325        },
326        "indices": [
327          {
328            "name": "index_WorkTag_work_spec_id",
329            "unique": false,
330            "columnNames": [
331              "work_spec_id"
332            ],
333            "orders": [],
334            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkTag_work_spec_id` ON `${TABLE_NAME}` (`work_spec_id`)"
335          }
336        ],
337        "foreignKeys": [
338          {
339            "table": "WorkSpec",
340            "onDelete": "CASCADE",
341            "onUpdate": "CASCADE",
342            "columns": [
343              "work_spec_id"
344            ],
345            "referencedColumns": [
346              "id"
347            ]
348          }
349        ]
350      },
351      {
352        "tableName": "SystemIdInfo",
353        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`work_spec_id` TEXT NOT NULL, `generation` INTEGER NOT NULL DEFAULT 0, `system_id` INTEGER NOT NULL, PRIMARY KEY(`work_spec_id`, `generation`), FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
354        "fields": [
355          {
356            "fieldPath": "workSpecId",
357            "columnName": "work_spec_id",
358            "affinity": "TEXT",
359            "notNull": true
360          },
361          {
362            "fieldPath": "generation",
363            "columnName": "generation",
364            "affinity": "INTEGER",
365            "notNull": true,
366            "defaultValue": "0"
367          },
368          {
369            "fieldPath": "systemId",
370            "columnName": "system_id",
371            "affinity": "INTEGER",
372            "notNull": true
373          }
374        ],
375        "primaryKey": {
376          "autoGenerate": false,
377          "columnNames": [
378            "work_spec_id",
379            "generation"
380          ]
381        },
382        "indices": [],
383        "foreignKeys": [
384          {
385            "table": "WorkSpec",
386            "onDelete": "CASCADE",
387            "onUpdate": "CASCADE",
388            "columns": [
389              "work_spec_id"
390            ],
391            "referencedColumns": [
392              "id"
393            ]
394          }
395        ]
396      },
397      {
398        "tableName": "WorkName",
399        "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 )",
400        "fields": [
401          {
402            "fieldPath": "name",
403            "columnName": "name",
404            "affinity": "TEXT",
405            "notNull": true
406          },
407          {
408            "fieldPath": "workSpecId",
409            "columnName": "work_spec_id",
410            "affinity": "TEXT",
411            "notNull": true
412          }
413        ],
414        "primaryKey": {
415          "autoGenerate": false,
416          "columnNames": [
417            "name",
418            "work_spec_id"
419          ]
420        },
421        "indices": [
422          {
423            "name": "index_WorkName_work_spec_id",
424            "unique": false,
425            "columnNames": [
426              "work_spec_id"
427            ],
428            "orders": [],
429            "createSql": "CREATE INDEX IF NOT EXISTS `index_WorkName_work_spec_id` ON `${TABLE_NAME}` (`work_spec_id`)"
430          }
431        ],
432        "foreignKeys": [
433          {
434            "table": "WorkSpec",
435            "onDelete": "CASCADE",
436            "onUpdate": "CASCADE",
437            "columns": [
438              "work_spec_id"
439            ],
440            "referencedColumns": [
441              "id"
442            ]
443          }
444        ]
445      },
446      {
447        "tableName": "WorkProgress",
448        "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 )",
449        "fields": [
450          {
451            "fieldPath": "workSpecId",
452            "columnName": "work_spec_id",
453            "affinity": "TEXT",
454            "notNull": true
455          },
456          {
457            "fieldPath": "progress",
458            "columnName": "progress",
459            "affinity": "BLOB",
460            "notNull": true
461          }
462        ],
463        "primaryKey": {
464          "autoGenerate": false,
465          "columnNames": [
466            "work_spec_id"
467          ]
468        },
469        "indices": [],
470        "foreignKeys": [
471          {
472            "table": "WorkSpec",
473            "onDelete": "CASCADE",
474            "onUpdate": "CASCADE",
475            "columns": [
476              "work_spec_id"
477            ],
478            "referencedColumns": [
479              "id"
480            ]
481          }
482        ]
483      },
484      {
485        "tableName": "Preference",
486        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `long_value` INTEGER, PRIMARY KEY(`key`))",
487        "fields": [
488          {
489            "fieldPath": "key",
490            "columnName": "key",
491            "affinity": "TEXT",
492            "notNull": true
493          },
494          {
495            "fieldPath": "value",
496            "columnName": "long_value",
497            "affinity": "INTEGER",
498            "notNull": false
499          }
500        ],
501        "primaryKey": {
502          "autoGenerate": false,
503          "columnNames": [
504            "key"
505          ]
506        },
507        "indices": [],
508        "foreignKeys": []
509      }
510    ],
511    "views": [],
512    "setupQueries": [
513      "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
514      "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '347835753abee7989f767d3ba5a5a2dd')"
515    ]
516  }
517}