/* * Copyright (C) 2014 TU Darmstadt, Hessen, Germany. * Department of Computer Science Databases and Distributed Systems * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package de.tudarmstadt.dvs.myhealthassistant.myhealthhub.services.transformationmanager.database; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; public class LocalTransformationDB extends SQLiteOpenHelper { private static final String TAG = LocalTransformationDB.class.getName(); public static final String TABLE_LOCAL_TRANSFORMATIONS = "local_transformations"; public static final String COLUMN_ID ="id"; public static final String COLUMN_BUNDLE_ID = "bundleId"; public static final String COLUMN_TRANSFORMATION_NAME = "tranformationName"; public static final String COLUMN_PRODUCED_EVENT_TYPE = "producedEventType"; public static final String COLUMN_REQUIRED_EVENT_TYPES = "requiredEventTypes"; public static final String COLUMN_TRANSFORMATION_COSTS = "transformationCosts"; // TRAFFIC MONITORING public static final String COLUMN_DATE_ID = "dateId"; public static final String TABLE_TRAFFIC_MON = "local_traffic_monitoring"; public static final String TABLE_DATE_TO_TRAFFIC = "local_date_to_traffic"; public static final String COLUMN_X_AXIS = "xValue"; public static final String COLUMN_Y_AXIS = "yValue"; public static final String COLUMN_DATE_TEXT = "dateValue"; public static final String COLUMN_TRAFFIC_ID = "trafficId"; public static final String COLUMN_TYPE = "trafficType"; public static final String TABLE_JSON_DATA_EXCHANGE = "local_data_exchange"; public static final String COLUMN_JSON_ID = "json_id"; public static final String COUMN_JSON_DATE = "json_date"; public static final String COUMN_JSON_CONTENT = "json_content"; public static final String COUMN_JSON_EXTRA = "json_extra"; public static final String COUMN_JSON_IMAGE = "json_image"; private static final String JSON_DATA_EXCHANGE = "CREATE TABLE " + TABLE_JSON_DATA_EXCHANGE + " (" + COLUMN_JSON_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COUMN_JSON_DATE + " TEXT, " + COUMN_JSON_CONTENT + " TEXT, " + COUMN_JSON_EXTRA + " TEXT, " + COUMN_JSON_IMAGE + " BLOB);"; public static final String DATABASE_NAME = "transformations.db"; public static final int DATABASE_VERSION = 1; public static final String[] columns = {COLUMN_ID,COLUMN_BUNDLE_ID,COLUMN_TRANSFORMATION_NAME, COLUMN_PRODUCED_EVENT_TYPE}; public static final String DATABASE_CREATE = "CREATE TABLE " + TABLE_LOCAL_TRANSFORMATIONS + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COLUMN_BUNDLE_ID+ " INTEGER, " + COLUMN_TRANSFORMATION_NAME+ " TEXT, " + COLUMN_PRODUCED_EVENT_TYPE+ " TEXT, " + COLUMN_REQUIRED_EVENT_TYPES+ " TEXT, " + COLUMN_TRANSFORMATION_COSTS+ " INTEGER);"; public static final String TRAFFIC_MON_CREATE = "CREATE TABLE " + TABLE_TRAFFIC_MON + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COLUMN_DATE_TEXT+ " TEXT, " + COLUMN_TYPE+ " INTEGER, " + COLUMN_X_AXIS+ " REAL, " + COLUMN_Y_AXIS+ " REAL);"; public static final String DATE_TO_TRAFFIC = "CREATE TABLE " + TABLE_DATE_TO_TRAFFIC + " (" + COLUMN_DATE_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COLUMN_TRAFFIC_ID+ " INTEGER, " + COLUMN_DATE_TEXT+ " TEXT);"; public LocalTransformationDB(Context context) { super(context, DATABASE_NAME,null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase database) { Log.i(TAG, "creating database tabelle"); database.execSQL(DATABASE_CREATE); database.execSQL(TRAFFIC_MON_CREATE); database.execSQL(DATE_TO_TRAFFIC); database.execSQL(JSON_DATA_EXCHANGE); } @Override public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) { Log.w(TAG, "Upgrading database from version "+ oldVersion+ " to "+ newVersion); database.execSQL("DROP TABLE IF EXISTS " + TABLE_LOCAL_TRANSFORMATIONS); database.execSQL("DROP TABLE IF EXISTS " + TABLE_TRAFFIC_MON); database.execSQL("DROP TABLE IF EXISTS " + DATE_TO_TRAFFIC); database.execSQL("DROP TABLE IF EXISTS " + JSON_DATA_EXCHANGE); onCreate(database); } }