6
6
import com .google .gson .Gson ;
7
7
import com .google .gson .reflect .TypeToken ;
8
8
import com .hitherejoe .androidboilerplate .data .model .Character ;
9
- import com .hitherejoe .androidboilerplate .data .model .Collection ;
10
9
import com .hitherejoe .androidboilerplate .util .DataUtils ;
11
10
11
+ import java .util .List ;
12
+
12
13
public class Db {
13
14
14
15
public Db () { }
@@ -17,50 +18,71 @@ public static abstract class CharacterTable {
17
18
public static final String TABLE_NAME = "characters" ;
18
19
public static final String COLUMN_ID = "id" ;
19
20
public static final String COLUMN_NAME = "name" ;
20
- public static final String COLUMN_DESCRIPTION = "description" ;
21
- public static final String COLUMN_THUMBNAIL = "thumbnail" ;
22
- public static final String COLUMN_COMICS = "comics" ;
23
- public static final String COLUMN_SERIES = "series" ;
24
- public static final String COLUMN_STORIES = "stories" ;
25
- public static final String COLUMN_EVENTS = "events" ;
21
+ public static final String COLUMN_HEIGHT = "height" ;
22
+ public static final String COLUMN_MASS = "mass" ;
23
+ public static final String COLUMN_HAIR_COLOR = "hair_color" ;
24
+ public static final String COLUMN_SKIN_COLOR = "skin_color" ;
25
+ public static final String COLUMN_EYE_COLOR = "eye_color" ;
26
+ public static final String COLUMN_BIRTH_YEAR = "birth_year" ;
27
+ public static final String COLUMN_GENDER = "gender" ;
28
+ public static final String COLUMN_HOME_WORLD = "home_world" ;
29
+ public static final String COLUMN_FILMS = "films" ;
30
+ public static final String COLUMN_SPECIES = "species" ;
31
+ public static final String COLUMN_VEHICLES = "vehicles" ;
32
+ public static final String COLUMN_STARSHIPS = "starships" ;
26
33
27
34
public static final String CREATE =
28
35
"CREATE TABLE " + TABLE_NAME + " (" +
29
- COLUMN_ID + " INTEGER PRIMARY KEY," +
36
+ COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL ," +
30
37
COLUMN_NAME + " TEXT NOT NULL," +
31
- COLUMN_DESCRIPTION + " TEXT," +
32
- COLUMN_THUMBNAIL + " TEXT," +
33
- COLUMN_COMICS + " TEXT," +
34
- COLUMN_SERIES + " TEXT," +
35
- COLUMN_STORIES + " TEXT," +
36
- COLUMN_EVENTS + " TEXT" +
38
+ COLUMN_HEIGHT + " TEXT," +
39
+ COLUMN_MASS + " TEXT," +
40
+ COLUMN_HAIR_COLOR + " TEXT," +
41
+ COLUMN_SKIN_COLOR + " TEXT," +
42
+ COLUMN_EYE_COLOR + " TEXT," +
43
+ COLUMN_BIRTH_YEAR + " TEXT," +
44
+ COLUMN_GENDER + " TEXT," +
45
+ COLUMN_HOME_WORLD + " TEXT," +
46
+ COLUMN_FILMS + " TEXT," +
47
+ COLUMN_SPECIES + " TEXT," +
48
+ COLUMN_VEHICLES + " TEXT," +
49
+ COLUMN_STARSHIPS + " TEXT" +
37
50
" ); " ;
38
51
39
52
public static ContentValues toContentValues (Character character ) {
40
53
Gson gson = DataUtils .getGsonInstance ();
41
54
ContentValues values = new ContentValues ();
42
- values .put (COLUMN_ID , character .id );
43
55
values .put (COLUMN_NAME , character .name );
44
- values .put (COLUMN_DESCRIPTION , character .description );
45
- values .put (COLUMN_THUMBNAIL , gson .toJson (character .thumbnail , new TypeToken <Character .Thumbnail >(){}.getType ()));
46
- values .put (COLUMN_COMICS , gson .toJson (character .comics , new TypeToken <Collection >(){}.getType ()));
47
- values .put (COLUMN_SERIES , gson .toJson (character .series , new TypeToken <Collection >(){}.getType ()));
48
- values .put (COLUMN_STORIES , gson .toJson (character .stories , new TypeToken <Collection >(){}.getType ()));
49
- values .put (COLUMN_EVENTS , gson .toJson (character .events , new TypeToken <Collection >(){}.getType ()));
56
+ values .put (COLUMN_HEIGHT , character .height );
57
+ values .put (COLUMN_MASS , character .mass );
58
+ values .put (COLUMN_HAIR_COLOR , character .hairColor );
59
+ values .put (COLUMN_SKIN_COLOR , character .skinColor );
60
+ values .put (COLUMN_EYE_COLOR , character .eyeColor );
61
+ values .put (COLUMN_BIRTH_YEAR , character .birthYear );
62
+ values .put (COLUMN_GENDER , character .gender );
63
+ values .put (COLUMN_HOME_WORLD , character .homeworld );
64
+ values .put (COLUMN_FILMS , gson .toJson (character .films , new TypeToken <List <String >>(){}.getType ()));
65
+ values .put (COLUMN_SPECIES , gson .toJson (character .species , new TypeToken <List <String >>(){}.getType ()));
66
+ values .put (COLUMN_VEHICLES , gson .toJson (character .vehicles , new TypeToken <List <String >>(){}.getType ()));
67
+ values .put (COLUMN_STARSHIPS , gson .toJson (character .starships , new TypeToken <List <String >>(){}.getType ()));
50
68
return values ;
51
69
}
52
70
53
71
public static Character parseCursor (Cursor cursor ) {
54
72
Gson gson = DataUtils .getGsonInstance ();
55
73
Character character = new Character ();
56
- character .id = cursor .getInt (cursor .getColumnIndexOrThrow (COLUMN_ID ));
57
74
character .name = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_NAME ));
58
- character .description = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_DESCRIPTION ));
59
- character .thumbnail = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_THUMBNAIL )), new TypeToken <Character .Thumbnail >() {}.getType ());
60
- character .comics = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_COMICS )), new TypeToken <Collection >() {}.getType ());
61
- character .series = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_SERIES )), new TypeToken <Collection >() {}.getType ());
62
- character .stories = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_STORIES )), new TypeToken <Collection >() {}.getType ());
63
- character .events = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_EVENTS )), new TypeToken <Collection >() {}.getType ());
75
+ character .height = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_HEIGHT ));
76
+ character .mass = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_MASS ));
77
+ character .hairColor = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_SKIN_COLOR ));
78
+ character .eyeColor = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_EYE_COLOR ));
79
+ character .birthYear = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_BIRTH_YEAR ));
80
+ character .gender = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_GENDER ));
81
+ character .homeworld = cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_HOME_WORLD ));
82
+ character .films = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_FILMS )), new TypeToken <List <String >>() {}.getType ());
83
+ character .species = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_SPECIES )), new TypeToken <List <String >>() {}.getType ());
84
+ character .vehicles = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_VEHICLES )), new TypeToken <List <String >>() {}.getType ());
85
+ character .starships = gson .fromJson (cursor .getString (cursor .getColumnIndexOrThrow (COLUMN_STARSHIPS )), new TypeToken <List <String >>() {}.getType ());
64
86
return character ;
65
87
}
66
88
}
0 commit comments