-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathlti4-tables-sqlite.sql
93 lines (83 loc) · 3 KB
/
lti4-tables-sqlite.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
CREATE TABLE lti2_cosnumer (
consumer_pk INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
consumer_key TEXT DEFAULT NULL,
secret TEXT DEFAULT NULL,
platform_id TEXT DEFAULT NULL,
client_id TEXT DEFAULT NULL,
deployment_id TEXT DEFAULT NULL,
public_key TEXT DEFAULT NULL,
lti_version TEXT DEFAULT NULL,
signature_method TEXT NOT NULL DEFAULT 'HMAC-SHA1',
consumer_name TEXT DEFAULT NULL,
consumer_version TEXT DEFAULT NULL,
consumer_guid TEXT DEFAULT NULL,
profile TEXT DEFAULT NULL,
tool_proxy TEXT DEFAULT NULL,
settings TEXT DEFAULT NULL,
protected INTEGER NOT NULL,
enabled INTEGER NOT NULL,
enable_from TEXT DEFAULT NULL,
enable_until TEXT DEFAULT NULL,
last_access TEXT DEFAULT NULL,
created TEXT NOT NULL,
updated TEXT NOT NULL,
UNIQUE (consumer_key),
UNIQUE (platform_id, client_id, deployment_id)
) STRICT;
CREATE TABLE lti2_nonce (
consumer_pk INTEGER NOT NULL REFERENCES lti2_consumer (consumer_pk),
value TEXT NOT NULL,
expires TEXT NOT NULL,
PRIMARY KEY (consumer_pk, value)
) STRICT;
CREATE TABLE lti2_access_token (
consumer_pk INTEGER NOT NULL REFERENCES lti2_consumer (consumer_pk),
scopes TEXT NOT NULL,
token TEXT NOT NULL,
expires TEXT NOT NULL,
created TEXT NOT NULL,
updated TEXT NOT NULL,
PRIMARY KEY (consumer_pk)
) STRICT;
CREATE TABLE lti2_context (
context_pk INTEGER PRIMARY KEY AUTOINCREMENT,
consumer_pk INTEGER NOT NULL REFERENCES lti2_consumer (consumer_pk),
title TEXT DEFAULT NULL,
lti_context_id TEXT NOT NULL,
type TEXT DEFAULT NULL,
settings TEXT DEFAULT NULL,
created TEXT NOT NULL,
updated TEXT NOT NULL,
UNIQUE (consumer_pk)
) STRICT;
CREATE TABLE lti2_resource_link (
resource_link_pk INTEGER PRIMARY KEY AUTOINCREMENT,
context_pk INTEGER DEFAULT NULL REFERENCES lti2_context (context_pk),
consumer_pk INTEGER DEFAULT NULL REFERENCES lti2_consumer (consumer_pk),
title TEXT DEFAULT NULL,
lti_resource_link_id TEXT NOT NULL,
settings TEXT,
primary_resource_link_pk INTEGER DEFAULT NULL REFERENCES lti2_resource_link (resource_link_pk),
share_approved INTEGER DEFAULT NULL,
created TEXT NOT NULL,
updated TEXT NOT NULL
) STRICT;
CREATE INDEX lti2_resource_link_consumer_pk_IDX ON lti2_resource_link (consumer_pk ASC);
CREATE INDEX lti2_resource_link_context_pk_IDX ON lti2_resource_link (context_pk ASC);
CREATE TABLE lti2_user_result (
user_result_pk INTEGER PRIMARY KEY AUTOINCREMENT,
resource_link_pk INTEGER NOT NULL REFERENCES lti2_resource_link (resource_link_pk),
lti_user_id TEXT NOT NULL,
lti_result_sourcedid TEXT NOT NULL,
created TEXT NOT NULL,
updated TEXT NOT NULL
) STRICT;
CREATE INDEX lti2_user_result_resource_link_pk_IDX ON lti2_user_result (resource_link_pk ASC);
CREATE TABLE lti2_share_key (
share_key_id TEXT NOT NULL PRIMARY KEY,
resource_link_pk INTEGER NOT NULL REFERENCES lti2_resource_link (resource_link_pk),
auto_approve INTEGER NOT NULL,
expires TEXT NOT NULL
) STRICT;
CREATE INDEX lti2_share_key_resource_link_pk_IDX ON lti2_share_key (resource_link_pk ASC);