/* * Copyright (C) 2012,2013 Scuola Superiore Sant'Anna (http://www.sssup.it) * and Consorzio Nazionale Interuniversitario per le Telecomunicazioni * (http://www.cnit.it). * * This file is part of Sniffer 15.4, an IEEE 802.15.4 packet sniffer for * Android devices. * * Sniffer 15.4 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. * * Sniffer 15.4 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 Sniffer 15.4. If not, see <http://www.gnu.org/licenses/>. */ package it.sssup.rtn.sniffer154.storage; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; /** * A subclass of SQLiteOpenHelper for storing sniffing sessions and captured * frames * * @author Daniele Alessandrelli * */ public class PacketDatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "sniffer"; private static final int DATABASE_VERSION = 3; /** * The constructor * @param context The context */ public PacketDatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } /* (non-Javadoc) * @see android.database.sqlite.SQLiteOpenHelper#onCreate(android.database.sqlite.SQLiteDatabase) */ @Override public void onCreate(SQLiteDatabase db) { SessionTable.onCreate(db); PacketTable.onCreate(db); } /* (non-Javadoc) * @see android.database.sqlite.SQLiteOpenHelper#onUpgrade(android.database.sqlite.SQLiteDatabase, int, int) */ @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { SessionTable.onUpgrade(db, oldVersion, newVersion); PacketTable.onUpgrade(db, oldVersion, newVersion); } /* (non-Javadoc) * @see android.database.sqlite.SQLiteOpenHelper#onOpen(android.database.sqlite.SQLiteDatabase) */ @Override public void onOpen(SQLiteDatabase db) { super.onOpen(db); if (!db.isReadOnly()) { // Enable foreign key constraints db.execSQL("PRAGMA foreign_keys=ON;"); } } }