package org.maepaysoh.maepaysohsdk.db; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; /** * Created by Ye Lin Aung on 15/08/07. */ // TODO: 8/7/15 CREATE SEPERATE TABLE FOR ALL NESTED OBJECTS public class MaepaysohDbHelper extends SQLiteOpenHelper { public static final int DATABASE_VERSION = 1; public static final String DATABASE_NAME = "maepaesoh.db"; // PartyListReturnObject public static final String TABLE_NAME_PARTY = "parties"; public static final String COLUMN_PARTY_ID = "_id"; public static final String COLUMN_PARTY_NAME = "name"; public static final String COLUMN_PARTY_NAME_ENGLISH = "name_english"; public static final String COLUMN_PARTY_ESTABLISHMENT_DATE = "establishment_date"; public static final String COLUMN_PARTY_MEMBER_COUNT = "member_count"; public static final String COLUMN_PARTY_ESTABLISHMENT_APPROVAL_DATE = "establishment_approval_date"; public static final String COLUMN_PARTY_REGISTRATION_APPLICATION_DATE = "registration_application_date"; public static final String COLUMN_PARTY_REGISTRATION_APPROVAL_DATE = "registration_approval_date"; public static final String COLUMN_PARTY_APPROVED_PARTY_NUMBER = "approved_party_number"; public static final String COLUMN_PARTY_PARTY_FLAG = "party_flag"; public static final String COLUMN_PARTY_PARTY_SEAL = "party_seal"; public static final String COLUMN_PARTY_CHAIRMAN = "chairman"; public static final String COLUMN_PARTY_REGION = "region"; public static final String COLUMN_PARTY_CONTACT = "contact"; public static final String COLUMN_PARTY_POLICY = "policy"; public static final String COLUMN_PARTY_HEADQUARTER = "party_headquarter"; public static final String COLUMN_PARTY_LEADERSHIP = "leadership"; //FAQs public static final String TABLE_NAME_FAQ = "faqs"; public static final String COLUMN_FAQ_ID = "_id"; public static final String COLUMN_FAQ_question = "question"; public static final String COLUMN_FAQ_answer = "answer"; public static final String COLUMN_FAQ_type = "type"; public static final String COLUMN_FAQ_basis = "basis"; public static final String COLUMN_FAQ_sections = "sections"; public static final String COLUMN_FAQ_url = "url"; public static final String TABLE_NAME_CANDIDATE = "candidates"; public static final String COLUMN_CANDIDATE_ID = "_id"; public static final String COLUMN_CANDIDATE_NAME = "name"; public static final String COLUMN_CANDIDATE_LEGISLATURE = "legislature"; public static final String COLUMN_CANDIDATE_NATIONAL_ID = "national_id"; public static final String COLUMN_CANDIDATE_BIRTHDATE = "birthdate"; public static final String COLUMN_CANDIDATE_EDUCATION = "education"; public static final String COLUMN_CANDIDATE_OCCUPATION = "occupation"; public static final String COLUMN_CANDIDATE_RESIDENCY = "residence"; public static final String COLUMN_CANDIDATE_CONSTITUENCY = "constituency"; public static final String COLUMN_CANDIDATE_NATIONALITY_RELIGION = "nationality_religion"; public static final String COLUMN_CANDIDATE_PARTY_ID = "party_id"; public static final String COLUMN_CANDIDATE_FATHER = "father"; public static final String COLUMN_CANDIDATE_MOTHER = "mother"; public static final String COLUMN_CANDIDATE_PHOTO_URL = "photo_url"; private static final String COMMA_SEP = ","; private static final String TEXT_TYPE = " TEXT"; private static final String NUMERIC_TYPE = " LONG"; private static final String PRIMARY_KEY_NOT_NULL = " PRIMARY KEY NOT NULL"; private static final String SQL_CREATE_PARTY_TABLE = "CREATE TABLE " + MaepaysohDbHelper.TABLE_NAME_PARTY + " (" + MaepaysohDbHelper.COLUMN_PARTY_ID + TEXT_TYPE + PRIMARY_KEY_NOT_NULL + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_NAME + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_NAME_ENGLISH + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_HEADQUARTER + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_LEADERSHIP + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_ESTABLISHMENT_DATE + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_MEMBER_COUNT + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_ESTABLISHMENT_APPROVAL_DATE + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_REGISTRATION_APPLICATION_DATE + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_REGISTRATION_APPROVAL_DATE + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_APPROVED_PARTY_NUMBER + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_PARTY_FLAG + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_PARTY_SEAL + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_CHAIRMAN + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_REGION + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_CONTACT + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_PARTY_POLICY + TEXT_TYPE + " )"; private static final String SQL_DELETE_PARTIES = "DROP TABLE IF EXISTS " + MaepaysohDbHelper.TABLE_NAME_PARTY; private static final String SQL_CREATE_FAQ_TABLE = "CREATE TABLE " + MaepaysohDbHelper.TABLE_NAME_FAQ + " (" + MaepaysohDbHelper.COLUMN_FAQ_ID + TEXT_TYPE + PRIMARY_KEY_NOT_NULL + COMMA_SEP + MaepaysohDbHelper.COLUMN_FAQ_question + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_FAQ_answer + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_FAQ_basis + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_FAQ_type + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_FAQ_sections + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_FAQ_url + TEXT_TYPE + " )"; private static final String SQL_DELETE_FAQS = "DROP TABLE IF EXISTS " + MaepaysohDbHelper.TABLE_NAME_FAQ; private static final String SQL_CREATE_CANDIDATE_TABLE = "CREATE TABLE " + MaepaysohDbHelper.TABLE_NAME_CANDIDATE + " (" + MaepaysohDbHelper.COLUMN_CANDIDATE_ID + TEXT_TYPE + PRIMARY_KEY_NOT_NULL + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_NAME + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_LEGISLATURE + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_NATIONAL_ID + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_BIRTHDATE + NUMERIC_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_EDUCATION + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_OCCUPATION + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_RESIDENCY + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_CONSTITUENCY + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_NATIONALITY_RELIGION + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_PARTY_ID + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_FATHER + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_PHOTO_URL + TEXT_TYPE + COMMA_SEP + MaepaysohDbHelper.COLUMN_CANDIDATE_MOTHER + TEXT_TYPE + " )"; private static final String SQL_DELETE_CANDIDATES = "DROP TABLE IF EXISTS " + MaepaysohDbHelper.TABLE_NAME_CANDIDATE; public MaepaysohDbHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(SQL_CREATE_PARTY_TABLE); db.execSQL(SQL_CREATE_FAQ_TABLE); db.execSQL(SQL_CREATE_CANDIDATE_TABLE); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL(SQL_DELETE_PARTIES); db.execSQL(SQL_DELETE_FAQS); db.execSQL(SQL_DELETE_CANDIDATES); onCreate(db); } }