package com.jm.db;\r
\r
+import android.R;\r
+import android.content.Context;\r
import android.database.Cursor;\r
import android.database.SQLException;\r
import android.database.sqlite.SQLiteDatabase;\r
}\r
\r
private Dao(){\r
- \r
+\r
}\r
\r
- public void init(SQLiteDatabase db)\r
- {\r
+ public void init(SQLiteDatabase db){\r
db.execSQL(\r
"create table pattern ("\r
+ "id integer primary key, "\r
+ "height integer, "\r
+ "dwell integer, "\r
+ "name integer, "\r
- + "motion text);"\r
+ + "motion text,"\r
+ + "lang integer);"\r
);\r
start(db);\r
}\r
public void start(SQLiteDatabase db){\r
insertStmt = db.compileStatement(\r
"insert into pattern ("\r
- + "type, siteswap, height, dwell, name, motion"\r
+ + "type, siteswap, height, dwell, name, motion, lang"\r
+ ") values ("\r
- + "?, ?, ?, ?, ?, ?"\r
+ + "?, ?, ?, ?, ?, ?, ?"\r
+ ");"); \r
updateStmt = db.compileStatement(\r
"update pattern set "\r
+ "siteswap = ?, height = ?, dwell = ?, name = ?, motion = ? "\r
- + "where id = ?;");\r
+ + "where id = ? and lang = ?;");\r
deleteStmt = db.compileStatement(\r
- "delete from pattern where id = ?;");\r
+ "delete from pattern where id = ? and lang = ?;");\r
}\r
\r
public void add(JmPattern jp) throws JmException{\r
stmt.bindLong(i++, jp.getDwell());\r
stmt.bindString(i++, jp.getName());\r
stmt.bindString(i++, jp.motionToString());\r
+ stmt.bindLong(i++, helper.getLangId());\r
stmt.executeInsert();\r
db.setTransactionSuccessful();\r
} catch (SQLException e){\r
stmt.bindString(i++, jp.getName());\r
stmt.bindString(i++, jp.motionToString());\r
stmt.bindLong(i++, jp.getId());\r
+ stmt.bindLong(i++, helper.getLangId());\r
stmt.execute();\r
db.setTransactionSuccessful();\r
} catch (SQLException e){\r
int i = 1;\r
SQLiteStatement stmt = deleteStmt;\r
stmt.bindLong(i++, id);\r
+ stmt.bindLong(i++, helper.getLangId());\r
stmt.execute();\r
db.setTransactionSuccessful();\r
} catch (SQLException e){\r
try {\r
DatabaseHelper helper = DatabaseHelper.getInstance();\r
SQLiteDatabase db = helper.getReadableDatabase();\r
- String selection = "type = " + type;\r
+ String selection = "lang = " + helper.getLangId() + " type = " + type;\r
Cursor c = db.query(\r
"pattern",\r
new String[] {\r
try {\r
DatabaseHelper helper = DatabaseHelper.getInstance();\r
SQLiteDatabase db = helper.getReadableDatabase();\r
- String selection = "id = " + id;\r
+ String selection = "id = " + id + " lang = " + helper.getLangId();\r
Cursor c = db.query(\r
"pattern",\r
new String[] {\r
try {\r
DatabaseHelper helper = DatabaseHelper.getInstance();\r
SQLiteDatabase db = helper.getReadableDatabase();\r
- String sql = "select count(*) from pattern;";\r
+ String sql = "select count(*) from pattern where lang = " + helper.getLangId() + ";";\r
Cursor c = db.rawQuery(sql, null);\r
c.moveToFirst();\r
count = c.getInt(0); // count;\r
import com.jm.utility.JmException;\r
\r
public class DatabaseHelper extends SQLiteOpenHelper {\r
+ public final static int ENGLISH_ID = 1;\r
+ public final static int JAPANEASE_ID = 1;\r
+ public static int langId = -1;\r
+ \r
private static DatabaseHelper instance = null;\r
\r
public static DatabaseHelper getInstance() {\r
}\r
\r
public DatabaseHelper(Context context) {\r
- super(context, "JuggleMaster.db", null, 1);\r
+ //super(context, "JuggleMaster.db", null, 1);\r
+ super(context, "JuggleMaster.db", null, 2);\r
instance = this;\r
+ \r
+ setLangId(context);\r
}\r
\r
@Override\r
}\r
\r
@Override\r
- public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {\r
-\r
+ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {\r
+ if (oldVersion == 1 && newVersion == 2){\r
+ db.execSQL("ALTER TABLE pattern ADD COLUMN lang integer;");\r
+ db.execSQL("UPDATE pattern set LANG = " + JAPANEASE_ID + ";");\r
+ db.execSQL("create index langindex on pattern(lang);");\r
+ }\r
+ }\r
+ \r
+ \r
+ public void setLangId(Context context){\r
+ if (langId < 0){\r
+ String id = context.getString(com.jm.R.string.lang);\r
+ try {\r
+ langId = Integer.valueOf(id).intValue();\r
+ }\r
+ catch (Exception e){\r
+ langId = ENGLISH_ID;\r
+ }\r
+ }\r
+ }\r
+ \r
+ public int getLangId(){\r
+ return langId;\r
}\r
}\r