Skip to content

Commit b96d15c

Browse files
authored
Merge pull request #29 from stefanmedack/fix/api_update
Fix/api update
2 parents 7a4aa5b + e1337d6 commit b96d15c

File tree

36 files changed

+675
-275
lines changed

36 files changed

+675
-275
lines changed

app/build.gradle

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ ext {
3838
android {
3939

4040
compileSdkVersion 27
41-
buildToolsVersion '27.0.3'
41+
buildToolsVersion '28.0.2'
4242
defaultConfig {
4343
applicationId "de.stefanmedack.ccctv"
4444
minSdkVersion 21
@@ -136,8 +136,9 @@ dependencies {
136136
kapt "com.google.dagger:dagger-android-processor:$daggerVersion"
137137
kapt "com.google.dagger:dagger-compiler:$daggerVersion"
138138

139-
// c3media library
140-
implementation "info.metadude.kotlin.library.c3media:c3media-rx-java-2:$c3mediaVersion"
139+
// c3media library TODO update import after release
140+
// implementation "info.metadude.kotlin.library.c3media:c3media-rx-java-2:$c3mediaVersion"
141+
implementation "com.github.stefanmedack.c3media-base:c3media-rx-java-2:api_update_beta1"
141142
// c3media streaming
142143
implementation "com.github.johnjohndoe:Brockman:1886e90a92029ceba978e3326202383c63ed8efd"
143144

Lines changed: 330 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,330 @@
1+
{
2+
"formatVersion": 1,
3+
"database": {
4+
"version": 5,
5+
"identityHash": "f6cb8804fcee58a61b73dda2e93f82ec",
6+
"entities": [
7+
{
8+
"tableName": "bookmarks",
9+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`event_id` TEXT NOT NULL, `created_at` TEXT NOT NULL, PRIMARY KEY(`event_id`), FOREIGN KEY(`event_id`) REFERENCES `events`(`id`) ON UPDATE NO ACTION ON DELETE NO ACTION )",
10+
"fields": [
11+
{
12+
"fieldPath": "eventId",
13+
"columnName": "event_id",
14+
"affinity": "TEXT",
15+
"notNull": true
16+
},
17+
{
18+
"fieldPath": "createdAt",
19+
"columnName": "created_at",
20+
"affinity": "TEXT",
21+
"notNull": true
22+
}
23+
],
24+
"primaryKey": {
25+
"columnNames": [
26+
"event_id"
27+
],
28+
"autoGenerate": false
29+
},
30+
"indices": [
31+
{
32+
"name": "event_bookmark_idx",
33+
"unique": false,
34+
"columnNames": [
35+
"event_id"
36+
],
37+
"createSql": "CREATE INDEX `event_bookmark_idx` ON `${TABLE_NAME}` (`event_id`)"
38+
}
39+
],
40+
"foreignKeys": [
41+
{
42+
"table": "events",
43+
"onDelete": "NO ACTION",
44+
"onUpdate": "NO ACTION",
45+
"columns": [
46+
"event_id"
47+
],
48+
"referencedColumns": [
49+
"id"
50+
]
51+
}
52+
]
53+
},
54+
{
55+
"tableName": "conferences",
56+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`acronym` TEXT NOT NULL, `url` TEXT NOT NULL, `c_group` TEXT NOT NULL, `slug` TEXT NOT NULL, `title` TEXT NOT NULL, `aspect_ratio` TEXT NOT NULL, `logo_url` TEXT, `updated_at` TEXT, `event_last_released_at` TEXT, PRIMARY KEY(`acronym`))",
57+
"fields": [
58+
{
59+
"fieldPath": "acronym",
60+
"columnName": "acronym",
61+
"affinity": "TEXT",
62+
"notNull": true
63+
},
64+
{
65+
"fieldPath": "url",
66+
"columnName": "url",
67+
"affinity": "TEXT",
68+
"notNull": true
69+
},
70+
{
71+
"fieldPath": "group",
72+
"columnName": "c_group",
73+
"affinity": "TEXT",
74+
"notNull": true
75+
},
76+
{
77+
"fieldPath": "slug",
78+
"columnName": "slug",
79+
"affinity": "TEXT",
80+
"notNull": true
81+
},
82+
{
83+
"fieldPath": "title",
84+
"columnName": "title",
85+
"affinity": "TEXT",
86+
"notNull": true
87+
},
88+
{
89+
"fieldPath": "aspectRatio",
90+
"columnName": "aspect_ratio",
91+
"affinity": "TEXT",
92+
"notNull": true
93+
},
94+
{
95+
"fieldPath": "logoUrl",
96+
"columnName": "logo_url",
97+
"affinity": "TEXT",
98+
"notNull": false
99+
},
100+
{
101+
"fieldPath": "updatedAt",
102+
"columnName": "updated_at",
103+
"affinity": "TEXT",
104+
"notNull": false
105+
},
106+
{
107+
"fieldPath": "eventLastReleasedAt",
108+
"columnName": "event_last_released_at",
109+
"affinity": "TEXT",
110+
"notNull": false
111+
}
112+
],
113+
"primaryKey": {
114+
"columnNames": [
115+
"acronym"
116+
],
117+
"autoGenerate": false
118+
},
119+
"indices": [],
120+
"foreignKeys": []
121+
},
122+
{
123+
"tableName": "events",
124+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` TEXT NOT NULL, `conference_acronym` TEXT NOT NULL, `url` TEXT NOT NULL, `slug` TEXT NOT NULL, `title` TEXT NOT NULL, `subtitle` TEXT NOT NULL, `description` TEXT NOT NULL, `persons` TEXT NOT NULL, `thumb_url` TEXT, `poster_url` TEXT, `original_language` TEXT NOT NULL, `duration` INTEGER, `view_count` INTEGER NOT NULL, `promoted` INTEGER NOT NULL, `tags` TEXT NOT NULL, `related` TEXT NOT NULL, `release_date` TEXT, `date` TEXT, `updated_at` TEXT, PRIMARY KEY(`id`), FOREIGN KEY(`conference_acronym`) REFERENCES `conferences`(`acronym`) ON UPDATE NO ACTION ON DELETE NO ACTION )",
125+
"fields": [
126+
{
127+
"fieldPath": "id",
128+
"columnName": "id",
129+
"affinity": "TEXT",
130+
"notNull": true
131+
},
132+
{
133+
"fieldPath": "conferenceAcronym",
134+
"columnName": "conference_acronym",
135+
"affinity": "TEXT",
136+
"notNull": true
137+
},
138+
{
139+
"fieldPath": "url",
140+
"columnName": "url",
141+
"affinity": "TEXT",
142+
"notNull": true
143+
},
144+
{
145+
"fieldPath": "slug",
146+
"columnName": "slug",
147+
"affinity": "TEXT",
148+
"notNull": true
149+
},
150+
{
151+
"fieldPath": "title",
152+
"columnName": "title",
153+
"affinity": "TEXT",
154+
"notNull": true
155+
},
156+
{
157+
"fieldPath": "subtitle",
158+
"columnName": "subtitle",
159+
"affinity": "TEXT",
160+
"notNull": true
161+
},
162+
{
163+
"fieldPath": "description",
164+
"columnName": "description",
165+
"affinity": "TEXT",
166+
"notNull": true
167+
},
168+
{
169+
"fieldPath": "persons",
170+
"columnName": "persons",
171+
"affinity": "TEXT",
172+
"notNull": true
173+
},
174+
{
175+
"fieldPath": "thumbUrl",
176+
"columnName": "thumb_url",
177+
"affinity": "TEXT",
178+
"notNull": false
179+
},
180+
{
181+
"fieldPath": "posterUrl",
182+
"columnName": "poster_url",
183+
"affinity": "TEXT",
184+
"notNull": false
185+
},
186+
{
187+
"fieldPath": "originalLanguage",
188+
"columnName": "original_language",
189+
"affinity": "TEXT",
190+
"notNull": true
191+
},
192+
{
193+
"fieldPath": "duration",
194+
"columnName": "duration",
195+
"affinity": "INTEGER",
196+
"notNull": false
197+
},
198+
{
199+
"fieldPath": "viewCount",
200+
"columnName": "view_count",
201+
"affinity": "INTEGER",
202+
"notNull": true
203+
},
204+
{
205+
"fieldPath": "promoted",
206+
"columnName": "promoted",
207+
"affinity": "INTEGER",
208+
"notNull": true
209+
},
210+
{
211+
"fieldPath": "tags",
212+
"columnName": "tags",
213+
"affinity": "TEXT",
214+
"notNull": true
215+
},
216+
{
217+
"fieldPath": "related",
218+
"columnName": "related",
219+
"affinity": "TEXT",
220+
"notNull": true
221+
},
222+
{
223+
"fieldPath": "releaseDate",
224+
"columnName": "release_date",
225+
"affinity": "TEXT",
226+
"notNull": false
227+
},
228+
{
229+
"fieldPath": "date",
230+
"columnName": "date",
231+
"affinity": "TEXT",
232+
"notNull": false
233+
},
234+
{
235+
"fieldPath": "updatedAt",
236+
"columnName": "updated_at",
237+
"affinity": "TEXT",
238+
"notNull": false
239+
}
240+
],
241+
"primaryKey": {
242+
"columnNames": [
243+
"id"
244+
],
245+
"autoGenerate": false
246+
},
247+
"indices": [
248+
{
249+
"name": "conference_idx",
250+
"unique": false,
251+
"columnNames": [
252+
"conference_acronym"
253+
],
254+
"createSql": "CREATE INDEX `conference_idx` ON `${TABLE_NAME}` (`conference_acronym`)"
255+
}
256+
],
257+
"foreignKeys": [
258+
{
259+
"table": "conferences",
260+
"onDelete": "NO ACTION",
261+
"onUpdate": "NO ACTION",
262+
"columns": [
263+
"conference_acronym"
264+
],
265+
"referencedColumns": [
266+
"acronym"
267+
]
268+
}
269+
]
270+
},
271+
{
272+
"tableName": "play_positions",
273+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`event_id` TEXT NOT NULL, `seconds` INTEGER NOT NULL, `created_at` TEXT NOT NULL, PRIMARY KEY(`event_id`), FOREIGN KEY(`event_id`) REFERENCES `events`(`id`) ON UPDATE NO ACTION ON DELETE NO ACTION )",
274+
"fields": [
275+
{
276+
"fieldPath": "eventId",
277+
"columnName": "event_id",
278+
"affinity": "TEXT",
279+
"notNull": true
280+
},
281+
{
282+
"fieldPath": "seconds",
283+
"columnName": "seconds",
284+
"affinity": "INTEGER",
285+
"notNull": true
286+
},
287+
{
288+
"fieldPath": "createdAt",
289+
"columnName": "created_at",
290+
"affinity": "TEXT",
291+
"notNull": true
292+
}
293+
],
294+
"primaryKey": {
295+
"columnNames": [
296+
"event_id"
297+
],
298+
"autoGenerate": false
299+
},
300+
"indices": [
301+
{
302+
"name": "event_play_position_idx",
303+
"unique": false,
304+
"columnNames": [
305+
"event_id"
306+
],
307+
"createSql": "CREATE INDEX `event_play_position_idx` ON `${TABLE_NAME}` (`event_id`)"
308+
}
309+
],
310+
"foreignKeys": [
311+
{
312+
"table": "events",
313+
"onDelete": "NO ACTION",
314+
"onUpdate": "NO ACTION",
315+
"columns": [
316+
"event_id"
317+
],
318+
"referencedColumns": [
319+
"id"
320+
]
321+
}
322+
]
323+
}
324+
],
325+
"setupQueries": [
326+
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
327+
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, \"f6cb8804fcee58a61b73dda2e93f82ec\")"
328+
]
329+
}
330+
}

app/src/androidTest/java/de/stefanmedack/ccctv/persistence/BaseDbTest.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,13 @@ abstract class BaseDbTest {
3333
val eventDao get() = db.eventDao()
3434
val playPositionDao get() = db.playPositionDao()
3535

36-
fun initDbWithConference(conferenceId: Int) {
37-
conferenceDao.insert(minimalConferenceEntity.copy(id = conferenceId))
36+
fun initDbWithConference(conferenceAcronym: String) {
37+
conferenceDao.insert(minimalConferenceEntity.copy(acronym = conferenceAcronym))
3838
}
3939

40-
fun initDbWithConferenceAndEvent(conferenceId: Int, eventId: Int) {
41-
conferenceDao.insert(minimalConferenceEntity.copy(id = conferenceId))
42-
eventDao.insert(minimalEventEntity.copy(id = eventId, conferenceId = conferenceId))
40+
fun initDbWithConferenceAndEvent(conferenceAcronym: String, eventId: String) {
41+
conferenceDao.insert(minimalConferenceEntity.copy(acronym = conferenceAcronym))
42+
eventDao.insert(minimalEventEntity.copy(id = eventId, conferenceAcronym = conferenceAcronym))
4343
}
4444

4545
}

0 commit comments

Comments
 (0)