OSDN Git Service

init
authoryuji <yuji.k64613@gmail.com>
Sat, 12 Jan 2013 02:02:24 +0000 (11:02 +0900)
committeryuji <yuji.k64613@gmail.com>
Sat, 12 Jan 2013 02:02:24 +0000 (11:02 +0900)
workspace/JuggleMaster/src/com/jm/PatternList.java
workspace/JuggleMaster/src/com/jm/db/Dao.java
workspace/JuggleMaster/src/com/jm/db/DatabaseHelper.java

index 5e64867..ba7c770 100644 (file)
@@ -29,6 +29,8 @@ public class PatternList {
 \r
        // edit {\r
        public PatternList() throws JmException {\r
+               言語別に追加\r
+               \r
                setPackage00();\r
                setPackage01();\r
                setPackage02();\r
index bd5dff6..2c99663 100644 (file)
@@ -1,5 +1,7 @@
 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
@@ -19,11 +21,10 @@ public class Dao {
        }\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
@@ -32,7 +33,8 @@ public class Dao {
                                + "height integer, "\r
                                + "dwell integer, "\r
                                + "name integer, "\r
-                               + "motion text);"\r
+                               + "motion text,"\r
+                               + "lang integer);"\r
                        );\r
                start(db);\r
        }\r
@@ -40,16 +42,16 @@ public class Dao {
        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
@@ -65,6 +67,7 @@ public class Dao {
                        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
@@ -87,6 +90,7 @@ public class Dao {
                        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
@@ -104,6 +108,7 @@ public class Dao {
                        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
@@ -118,7 +123,7 @@ public class Dao {
                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
@@ -156,7 +161,7 @@ public class Dao {
                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
@@ -194,7 +199,7 @@ public class Dao {
                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
index 702fa48..3ed1a88 100644 (file)
@@ -10,6 +10,10 @@ import com.jm.utility.Debug;
 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
@@ -31,8 +35,11 @@ public class DatabaseHelper extends SQLiteOpenHelper {
        }\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
@@ -50,7 +57,28 @@ public class DatabaseHelper extends SQLiteOpenHelper {
        }\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