From 87bb885420ecd4bfb6403ac258d3e4ddeb3de383 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E5=B0=8F=E8=A5=BF=20=E8=A3=95=E6=B2=BB?= Date: Fri, 19 Aug 2011 10:02:12 +0900 Subject: [PATCH] =?utf8?q?=E5=88=9D=E6=9C=9F=E5=8C=96=E5=87=A6=E7=90=86?= =?utf8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- workspace/TrainDelayed/gen/com/td/R.java | 45 +++++---- workspace/TrainDelayed/res/values/strings.xml | 13 ++- .../TrainDelayed/src/com/td/ConfActivity.java | 6 +- .../src/com/td/TrainDelayedActivity.java | 9 +- .../TrainDelayed/src/com/td/WaitActivity.java | 106 +++++++++++++-------- workspace/TrainDelayed/src/com/td/WaitView.java | 19 ++-- .../TrainDelayed/src/com/td/db/DatabaseHelper.java | 50 ++++++---- .../TrainDelayed/src/com/td/db/KeywordDao.java | 11 ++- .../TrainDelayed/src/com/td/db/MonitorDao.java | 12 ++- .../src/com/td/service/TrainService.java | 2 + .../src/com/td/service/TrainTwitterAdapter.java | 7 +- .../src/com/td/utility/ExceptionUtil.java | 22 +++-- .../TrainDelayed/src/com/td/wait/IWating.java | 3 +- .../src/com/td/wait/InitializeWating.java | 47 +++++---- .../src/com/td/wait/TrainServiceWaiting.java | 21 ++-- .../TrainDelayed/src/com/td/wait/WatingImpl.java | 10 -- 16 files changed, 226 insertions(+), 157 deletions(-) diff --git a/workspace/TrainDelayed/gen/com/td/R.java b/workspace/TrainDelayed/gen/com/td/R.java index 32f5de8..bd05f7c 100644 --- a/workspace/TrainDelayed/gen/com/td/R.java +++ b/workspace/TrainDelayed/gen/com/td/R.java @@ -143,11 +143,11 @@ public final class R { public static final int wait=0x7f03000f; } public static final class string { - public static final int add_button=0x7f040037; + public static final int add_button=0x7f04003a; public static final int app_name=0x7f040001; - public static final int cancel_button=0x7f04003a; + public static final int cancel_button=0x7f04003d; public static final int comma_msg=0x7f040022; - public static final int conf_button=0x7f040036; + public static final int conf_button=0x7f040039; public static final int conf_edit_msg1_title=0x7f040016; public static final int conf_edit_msg2_title=0x7f040017; public static final int conf_edit_msg3_title=0x7f040018; @@ -155,54 +155,57 @@ public final class R { public static final int conf_time_msg=0x7f04001f; public static final int conf_title=0x7f040005; public static final int date_title=0x7f040002; - public static final int debug_button=0x7f04002f; - public static final int def_button=0x7f040034; - public static final int delay_conf_button=0x7f040030; - public static final int delete_button=0x7f040039; + public static final int debug_button=0x7f040032; + public static final int def_button=0x7f040037; + public static final int delay_conf_button=0x7f040033; + public static final int delete_button=0x7f04003c; public static final int do_service_msg=0x7f040023; public static final int edit_conf_title=0x7f040014; + public static final int end_clear_conf_msg=0x7f04002a; public static final int end_rouote_emsg=0x7f040027; public static final int end_rouote_msg=0x7f040025; public static final int end_service_qmsg=0x7f04001b; public static final int end_time_title=0x7f040004; - public static final int exit_button=0x7f040033; + public static final int exit_button=0x7f040036; public static final int friday_title=0x7f04000c; public static final int hello=0x7f040000; - public static final int history_button=0x7f04002d; + public static final int history_button=0x7f040030; public static final int history_tite=0x7f040010; - public static final int init_button=0x7f040032; + public static final int init_button=0x7f040035; public static final int init_qmsg=0x7f04001c; public static final int is_delay_msg=0x7f040026; - public static final int keyword_button=0x7f040031; + public static final int keyword_button=0x7f040034; public static final int keyword_title=0x7f04000e; - public static final int list_button=0x7f04003c; + public static final int list_button=0x7f04003f; public static final int list_title=0x7f040015; public static final int monday_title=0x7f040008; - public static final int monitor_button=0x7f04002a; - public static final int other_conf_button=0x7f04002e; - public static final int return_button=0x7f040035; - public static final int route_button=0x7f040029; + public static final int monitor_button=0x7f04002d; + public static final int other_conf_button=0x7f040031; + public static final int return_button=0x7f040038; + public static final int route_button=0x7f04002c; public static final int route_title=0x7f04000f; public static final int saturday_title=0x7f04000d; + public static final int start_clear_conf_msg=0x7f040029; public static final int start_rouote_msg=0x7f040024; - public static final int start_service_button=0x7f04002b; + public static final int start_service_button=0x7f04002e; public static final int start_service_msg=0x7f040020; public static final int start_service_qmsg=0x7f04001a; public static final int start_time_title=0x7f040003; public static final int starting_service_msg=0x7f040021; - public static final int stop_service_button=0x7f04002c; + public static final int stop_service_button=0x7f04002f; public static final int sunday_title=0x7f040007; public static final int thursday_title=0x7f04000b; public static final int time_title=0x7f040011; public static final int tpm_title=0x7f040012; public static final int tuesday_title=0x7f040009; - public static final int update_button=0x7f040038; - public static final int update_route_button=0x7f040028; + public static final int update_button=0x7f04003b; + public static final int update_route_button=0x7f04002b; public static final int update_route_msg=0x7f04001d; public static final int update_route_qmsg=0x7f040019; + public static final int waiting_msg=0x7f040028; public static final int warn_dialog_title=0x7f040013; public static final int wednesday_title=0x7f04000a; public static final int week_title=0x7f040006; - public static final int yes_button=0x7f04003b; + public static final int yes_button=0x7f04003e; } } diff --git a/workspace/TrainDelayed/res/values/strings.xml b/workspace/TrainDelayed/res/values/strings.xml index aa54b2f..7109a6f 100755 --- a/workspace/TrainDelayed/res/values/strings.xml +++ b/workspace/TrainDelayed/res/values/strings.xml @@ -32,17 +32,20 @@ 監視を停止しますか 設定を初期の状態に戻しますか - 路線の情報を更新してください - 監視する路線を設定してください - 監視する時間を設定してください - 監視を開始してください - 監視を開始中です + 路線の情報を更新してください。 + 監視する路線を設定してください。 + 監視する時間を設定してください。 + 監視を開始してください。 + 監視を開始中です。 、 を監視しています。 路線の情報を更新しています。 路線の情報を更新しました。メニューに戻って、監視する路線を設定してください。 が遅延しているかもしれません。詳細は、履歴を参照してください 路線の更新に失敗しました。しばらくしてから、もう一度実行してください。 + しばらくお待ちください。 + 設定を初期化しています。 + 設定を初期化しました。 路線の情報を更新する 監視する路線を設定する diff --git a/workspace/TrainDelayed/src/com/td/ConfActivity.java b/workspace/TrainDelayed/src/com/td/ConfActivity.java index 9121343..30ca867 100755 --- a/workspace/TrainDelayed/src/com/td/ConfActivity.java +++ b/workspace/TrainDelayed/src/com/td/ConfActivity.java @@ -82,10 +82,12 @@ public class ConfActivity extends BaseActivity { (Class) WaitActivity.class); intent.putExtra(WaitActivity.CLASS, InitializeWating.class.getName()); + intent.putExtra(WaitActivity.MESSAGE0, + getString(R.string.waiting_msg)); intent.putExtra(WaitActivity.MESSAGE1, - getString(R.string.start_rouote_msg)); + getString(R.string.start_clear_conf_msg)); intent.putExtra(WaitActivity.MESSAGE2, - getString(R.string.end_rouote_msg)); + getString(R.string.end_clear_conf_msg)); intent.putExtra(WaitActivity.MESSAGE3, ""); diff --git a/workspace/TrainDelayed/src/com/td/TrainDelayedActivity.java b/workspace/TrainDelayed/src/com/td/TrainDelayedActivity.java index 603e852..d92d75e 100755 --- a/workspace/TrainDelayed/src/com/td/TrainDelayedActivity.java +++ b/workspace/TrainDelayed/src/com/td/TrainDelayedActivity.java @@ -25,6 +25,7 @@ import com.td.broadcast.DelayReceiver; import com.td.db.Keyword; import com.td.db.Monitor; import com.td.db.MonitorDao; +import com.td.db.PrefectureDao; import com.td.db.Train; import com.td.db.TrainDao; import com.td.service.SchedulerTest; @@ -290,6 +291,8 @@ public class TrainDelayedActivity extends BaseActivity implements TrainDelayedSe (Class) WaitActivity.class); intent.putExtra(WaitActivity.CLASS, TrainServiceWaiting.class.getName()); + intent.putExtra(WaitActivity.MESSAGE0, + getString(R.string.waiting_msg)); intent.putExtra(WaitActivity.MESSAGE1, getString(R.string.start_rouote_msg)); intent.putExtra(WaitActivity.MESSAGE2, @@ -579,7 +582,7 @@ public class TrainDelayedActivity extends BaseActivity implements TrainDelayedSe private void debug(){ Intent intent; - int n = 2; + int n = 8; switch (n){ case 1: @@ -625,6 +628,10 @@ public class TrainDelayedActivity extends BaseActivity implements TrainDelayedSe case 7: TrainDelayedActivityTest.main(this); break; + case 8: + // DBíœ + PrefectureDao.getInstance().delete(); + break; default: break; } diff --git a/workspace/TrainDelayed/src/com/td/WaitActivity.java b/workspace/TrainDelayed/src/com/td/WaitActivity.java index f23e4f3..959fde3 100755 --- a/workspace/TrainDelayed/src/com/td/WaitActivity.java +++ b/workspace/TrainDelayed/src/com/td/WaitActivity.java @@ -3,6 +3,7 @@ package com.td; import android.content.Context; import android.os.Bundle; import android.os.Handler; +import android.view.KeyEvent; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; @@ -10,34 +11,34 @@ import android.widget.TextView; import com.td.utility.BaseActivity; import com.td.utility.Debug; -import com.td.utility.EditPrefUtil; import com.td.utility.StatusFlag; import com.td.utility.StatusFlagFactory; import com.td.wait.IWating; public class WaitActivity extends BaseActivity { - // TODO StatusFlag‚ðŽg—p‚·‚éBˆ—Ž©‘Ì‚àÄŒŸ“¢ - // public static final String PREF_WIT_FLAG = "WIT_FLAG"; - public static final String CLASS = "CLASS"; + public static final String MESSAGE0 = "MESSAGE0"; public static final String MESSAGE1 = "MESSAGE1"; public static final String MESSAGE2 = "MESSAGE2"; public static final String MESSAGE3 = "MESSAGE3"; - public static final int ID_OK = 0; - public static final int ID_NG = -1; + public static final int ID_OK = 1; + public static final int ID_NG = 0; + public static final int ID_NONE = -1; private TextView textView; private WaitView waitView; private Button button; - private IWating waiting = null; private String clazzName; + private String message0; private String message1; private String message2; private String message3; - private EditPrefUtil pref = new EditPrefUtil(this); + private static IWating waiting = null; + private Thread thread = null; + private StatusFlag waSf = StatusFlagFactory.getInstance().getStatusFlag( this, StatusFlagFactory.Type.WAIT_ACTIVITY); @@ -59,11 +60,13 @@ public class WaitActivity extends BaseActivity { Bundle extras = getIntent().getExtras(); clazzName = extras.getString(CLASS); + message0 = extras.getString(MESSAGE0); message1 = extras.getString(MESSAGE1); message2 = extras.getString(MESSAGE2); message3 = extras.getString(MESSAGE3); - Debug.d(this, waSf.toString()); + waitView.setMessage(message0); + if (waSf.isOff()) { textView.setText(message1); } else if (waSf.isRdy()) { @@ -74,32 +77,33 @@ public class WaitActivity extends BaseActivity { textView.setText(message3); } - // TODO - // int flag = pref.getInt(PREF_WIT_FLAG, 0); - if (waSf.isOff() || waSf.isRdy()) { + if (waSf.isOff() || waiting == null) { + if (!waSf.isOff() && waiting == null){ + // ƒvƒƒZƒX’âŽ~‚©‚ç•œ‹A‚̏ꍇ + waSf.setOff(); + } + Class clazz; try { clazz = (Class) Class.forName(clazzName); IWating obj = clazz.newInstance(); waiting = obj; - waiting.setContext(this); - waiting.setHandler(handler); - - // TODO - //if (waSf.isOff()){ - waitView.start(); - //} } catch (Exception e) { this.setResult(ID_NG); this.finish(); + return; } - // TODO - // pref.put(PREF_WIT_FLAG, 1); - // waSf.setRdy(); - + waiting.setContext(this); + waitView.start(); + button.setEnabled(false); + } + else if (waSf.isRdy()) { + waiting.setContext(this); + waitView.start(); button.setEnabled(false); } else { + waiting.setContext(this); waitView.stop(); waiting = null; } @@ -113,32 +117,56 @@ public class WaitActivity extends BaseActivity { waSf.setRdy(); waiting.onStart(); } + + thread = new Thread(){ + public void run(){ + while (thread != null){ + if (waiting != null){ + int status = waiting.getStatus(); + if (status != ID_NONE){ + handler.sendMessage(handler.obtainMessage(status)); + break; + } + } + try { + Thread.sleep(3 * 1000); + } catch (InterruptedException e) { + ; + } + } + } + }; + thread.start(); } @Override protected void onStop() { - // TODO ‰æ–ʂ̏c‰¡Ø‚è‘Ö‚¦Žž‘Ήž - // if (waiting != null) { - // waiting.onStop(); - // } - super.onStop(); + + thread = null; } @Override protected void onDestroy() { super.onDestroy(); - if (waiting != null && waSf.isOn()) { - waiting.onStop(); - } if (waitView != null){ // ŽŸ‚ÌonCreate‚ŐV‚½‚ɍ쐬‚³‚ê‚邽‚߁A‚±‚ÌwaitView‚ÍŽ~‚ß‚Ä‚¨‚©‚È‚¯‚ê‚΂¢‚¯‚È‚¢ waitView.stop(); waitView = null; } + thread = null; } - + + public boolean onKeyDown(int keyCode, KeyEvent event) { + if(keyCode == KeyEvent.KEYCODE_BACK){ + // –ß‚éƒ{ƒ^ƒ“‘΍ô + waiting.onStop(); + waiting = null; + } + return super.onKeyDown(keyCode, event); + } + private Handler handler = new Handler() { public void handleMessage(android.os.Message msg) { try { @@ -148,13 +176,10 @@ public class WaitActivity extends BaseActivity { switch (code) { case ID_OK: case ID_NG: - // TODO ƒvƒƒZƒX‚̍ċN“®‚ɂ͑Ήž‚Å‚«‚È‚¢ - if (waitView == null){ - // íœÏ‚Ý‚ÌView - Debug.d(this, "waitView == null"); - return; + if (waitView != null){ + waitView.stop(); + waitView = null; } - waitView.stop(); textView.setText((code == ID_OK) ? message2 : message3); button.setEnabled(true); if (code == ID_OK){ @@ -164,8 +189,8 @@ public class WaitActivity extends BaseActivity { waSf.setErr(); } if (waiting != null) { + waiting.onStop(); waiting.setContext(null); - waiting.setHandler(null); waiting = null; } break; @@ -183,9 +208,6 @@ public class WaitActivity extends BaseActivity { }; public static void init(Context context) { - // TODO - // EditPrefUtil pref = new EditPrefUtil(context); - // pref.remove(WaitActivity.PREF_WIT_FLAG); StatusFlag waSf = StatusFlagFactory.getInstance().getStatusFlag( context, StatusFlagFactory.Type.WAIT_ACTIVITY); waSf.setOff(); diff --git a/workspace/TrainDelayed/src/com/td/WaitView.java b/workspace/TrainDelayed/src/com/td/WaitView.java index 899b106..7071200 100755 --- a/workspace/TrainDelayed/src/com/td/WaitView.java +++ b/workspace/TrainDelayed/src/com/td/WaitView.java @@ -11,28 +11,27 @@ import android.util.AttributeSet; import android.view.View; public class WaitView extends View { - // TODO - private static final String MESSAGE = "‚µ‚΂炭‚¨‘Ò‚¿‚­‚¾‚³‚¢B"; - private boolean flag = false; private int x = 0; private int y = 0; private Thread thread = null; private Paint paint = new Paint(); - + private String message = ""; + public WaitView(Context context, AttributeSet attrs) { super(context, attrs); } + public void setMessage(String message){ + this.message = message; + } + public void start(){ initialize(); } public void stop(){ - if (thread != null){ - thread.stop(); - thread = null; - } + thread = null; } private void initialize() { @@ -71,7 +70,7 @@ public class WaitView extends View { int h = getHeight(); paint.setColor(Color.BLACK); paint.setTextSize(h / 10); - int w = (int)paint.measureText(MESSAGE); + int w = (int)paint.measureText(message); if (!flag) { x = getWidth(); @@ -81,7 +80,7 @@ public class WaitView extends View { else if (x < -w){ x = getWidth(); } - canvas.drawText(MESSAGE, x, y, paint); + canvas.drawText(message, x, y, paint); x -= 5; } diff --git a/workspace/TrainDelayed/src/com/td/db/DatabaseHelper.java b/workspace/TrainDelayed/src/com/td/db/DatabaseHelper.java index 44a6268..2b963ef 100755 --- a/workspace/TrainDelayed/src/com/td/db/DatabaseHelper.java +++ b/workspace/TrainDelayed/src/com/td/db/DatabaseHelper.java @@ -38,8 +38,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { instance = this; } - @Override - public void onCreate(SQLiteDatabase db) { + public void initDB(SQLiteDatabase db, boolean isCreate){ PrefectureDao prefectureDao = PrefectureDao.getInstance(); TrainDao trainDao = TrainDao.getInstance(); RelationDao relationDao = RelationDao.getInstance(); @@ -47,23 +46,33 @@ public class DatabaseHelper extends SQLiteOpenHelper { MonitorDao monitorDao = MonitorDao.getInstance(); try { - prefectureDao.onCreate(db); - prefectureDao.start(db); - - trainDao.onCreate(db); - trainDao.start(db); - - relationDao.onCreate(db); - relationDao.start(db); - - keywordDao.onCreate(db); - keywordDao.start(db); - - monitorDao.onCreate(db); - monitorDao.start(db); - + if (isCreate){ + prefectureDao.onCreate(db); + prefectureDao.start(db); + + trainDao.onCreate(db); + trainDao.start(db); + + relationDao.onCreate(db); + relationDao.start(db); + + keywordDao.onCreate(db); + keywordDao.start(db); + + monitorDao.onCreate(db); + monitorDao.start(db); + } + db.beginTransaction(); try { + if (!isCreate){ + prefectureDao.deleteNT(); + trainDao.deleteNT(); + relationDao.deleteNT(); + keywordDao.deleteNT(); + monitorDao.deleteNT(); + } + prefectureDao.init(db); trainDao.init(db); relationDao.init(db); @@ -76,7 +85,12 @@ public class DatabaseHelper extends SQLiteOpenHelper { } } catch (Exception e) { Debug.d(this, null, e); - } + } + } + + @Override + public void onCreate(SQLiteDatabase db) { + initDB(db, true); } @Override diff --git a/workspace/TrainDelayed/src/com/td/db/KeywordDao.java b/workspace/TrainDelayed/src/com/td/db/KeywordDao.java index c078e27..bad388c 100755 --- a/workspace/TrainDelayed/src/com/td/db/KeywordDao.java +++ b/workspace/TrainDelayed/src/com/td/db/KeywordDao.java @@ -12,6 +12,7 @@ public class KeywordDao { private SQLiteStatement insertStmt = null; private SQLiteStatement updateStmt = null; private SQLiteStatement deleteStmt = null; + private SQLiteStatement deleteByIdStmt = null; public static KeywordDao getInstance() { if (instance == null) { @@ -44,7 +45,8 @@ public class KeywordDao { + ") VALUES (" + "?" + ");"); updateStmt = db.compileStatement("UPDATE KEYWORD SET " + "TEXT = ? " + "WHERE " + android.provider.BaseColumns._ID + " = ?;"); - deleteStmt = db.compileStatement("DELETE FROM KEYWORD " + "WHERE " + deleteStmt = db.compileStatement("DELETE FROM KEYWORD"); + deleteByIdStmt = db.compileStatement("DELETE FROM KEYWORD " + "WHERE " + android.provider.BaseColumns._ID + " = ?;"); } @@ -120,7 +122,7 @@ public class KeywordDao { db.beginTransaction(); try { int i = 1; - SQLiteStatement stmt = deleteStmt; + SQLiteStatement stmt = deleteByIdStmt; stmt.bindLong(i++, id); stmt.execute(); db.setTransactionSuccessful(); @@ -128,4 +130,9 @@ public class KeywordDao { db.endTransaction(); } } + + public void deleteNT() { + SQLiteStatement stmt = deleteStmt; + stmt.execute(); + } } diff --git a/workspace/TrainDelayed/src/com/td/db/MonitorDao.java b/workspace/TrainDelayed/src/com/td/db/MonitorDao.java index 663782c..7209552 100755 --- a/workspace/TrainDelayed/src/com/td/db/MonitorDao.java +++ b/workspace/TrainDelayed/src/com/td/db/MonitorDao.java @@ -8,7 +8,6 @@ import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteStatement; import com.td.utility.DateUtil; -import com.td.utility.Debug; import com.td.utility.Util; public class MonitorDao { @@ -16,6 +15,7 @@ public class MonitorDao { private SQLiteStatement insertStmt = null; private SQLiteStatement updateStmt = null; private SQLiteStatement deleteStmt = null; + private SQLiteStatement deleteByIdStmt = null; public static MonitorDao getInstance() { if (instance == null) { @@ -56,7 +56,8 @@ public class MonitorDao { + "WEEK1 = ?," + "WEEK2 = ?," + "WEEK3 = ?," + "WEEK4 = ?," + "WEEK5 = ?," + "WEEK6 = ?," + "FRM = ?," + "TT = ? " + "WHERE " + android.provider.BaseColumns._ID + " = ?;"); - deleteStmt = db.compileStatement("DELETE FROM MONITOR " + "WHERE " + deleteStmt = db.compileStatement("DELETE FROM MONITOR"); + deleteByIdStmt = db.compileStatement("DELETE FROM MONITOR " + "WHERE " + android.provider.BaseColumns._ID + " = ?;"); } @@ -155,7 +156,7 @@ public class MonitorDao { db.beginTransaction(); try { int i = 1; - SQLiteStatement stmt = deleteStmt; + SQLiteStatement stmt = deleteByIdStmt; stmt.bindLong(i++, id); stmt.execute(); db.setTransactionSuccessful(); @@ -163,4 +164,9 @@ public class MonitorDao { db.endTransaction(); } } + + public void deleteNT() { + SQLiteStatement stmt = deleteStmt; + stmt.execute(); + } } diff --git a/workspace/TrainDelayed/src/com/td/service/TrainService.java b/workspace/TrainDelayed/src/com/td/service/TrainService.java index acaecff..f589724 100755 --- a/workspace/TrainDelayed/src/com/td/service/TrainService.java +++ b/workspace/TrainDelayed/src/com/td/service/TrainService.java @@ -62,6 +62,8 @@ public class TrainService extends Service { Debug.t(TrainService.this, "TrainService end"); } catch (RemoteException e) { Debug.d(TrainService.this, null, e); + } catch (Exception e) { + Debug.d(TrainService.this, null, e); } finally { if (!status) { PrefectureDao.getInstance().delete(); diff --git a/workspace/TrainDelayed/src/com/td/service/TrainTwitterAdapter.java b/workspace/TrainDelayed/src/com/td/service/TrainTwitterAdapter.java index 4577c8f..f759492 100755 --- a/workspace/TrainDelayed/src/com/td/service/TrainTwitterAdapter.java +++ b/workspace/TrainDelayed/src/com/td/service/TrainTwitterAdapter.java @@ -23,6 +23,7 @@ import com.td.utility.DateUtil; import com.td.utility.Debug; import com.td.utility.Delay; import com.td.utility.EditPrefUtil; +import com.td.utility.ExceptionUtil; public class TrainTwitterAdapter extends TwitterAdapter { public static final long START_ID = Long.MAX_VALUE; @@ -111,6 +112,10 @@ public class TrainTwitterAdapter extends TwitterAdapter { if (minDate != null && maxDate != null) { Debug.d(this, minDate.toString(), "-", maxDate.toString()); } + if (ExceptionUtil.getInstance().isDebug(ExceptionUtil.TAG_E90)) { + count += 10; + } + Debug.d(this, "routeId=" + routeId); Debug.d(this, "diff=" + diff); Debug.d(this, "count=" + count); @@ -184,7 +189,7 @@ public class TrainTwitterAdapter extends TwitterAdapter { impl.notificate(train.getName()); Intent intent = new Intent(DelayReceiver.DELAY); - intent.putExtra("ID", delay.getId()); + intent.putExtra("ID", train.getId()); impl.getContext().sendBroadcast(intent); } } diff --git a/workspace/TrainDelayed/src/com/td/utility/ExceptionUtil.java b/workspace/TrainDelayed/src/com/td/utility/ExceptionUtil.java index ec3cbd3..7ad2002 100644 --- a/workspace/TrainDelayed/src/com/td/utility/ExceptionUtil.java +++ b/workspace/TrainDelayed/src/com/td/utility/ExceptionUtil.java @@ -4,15 +4,15 @@ import android.os.RemoteException; import android.util.Log; public class ExceptionUtil { - public static final String TAG_E10 = "com.tde10"; - public static final String TAG_E20 = "com.tde20"; - public static final String TAG_E30 = "com.tde30"; - public static final String TAG_E40 = "com.tde40"; - public static final String TAG_E50 = "com.tde50"; - public static final String TAG_E60 = "com.tde60"; - public static final String TAG_E70 = "com.tde70"; - public static final String TAG_E80 = "com.tde80"; - public static final String TAG_E90 = "com.tde90"; + public static final String TAG_E10 = "com.td.e10"; + public static final String TAG_E20 = "com.td.e20"; + public static final String TAG_E30 = "com.td.e30"; + public static final String TAG_E40 = "com.td.e40"; + public static final String TAG_E50 = "com.td.e50"; + public static final String TAG_E60 = "com.td.e60"; + public static final String TAG_E70 = "com.td.e70"; + public static final String TAG_E80 = "com.td.e80"; + public static final String TAG_E90 = "com.td.e90"; private static ExceptionUtil instance = null; @@ -38,4 +38,8 @@ public class ExceptionUtil { throw new RemoteException(); } } + + public boolean isDebug(String tag) { + return Log.isLoggable(tag, Log.DEBUG); + } } diff --git a/workspace/TrainDelayed/src/com/td/wait/IWating.java b/workspace/TrainDelayed/src/com/td/wait/IWating.java index 6f438f5..1f94b22 100755 --- a/workspace/TrainDelayed/src/com/td/wait/IWating.java +++ b/workspace/TrainDelayed/src/com/td/wait/IWating.java @@ -1,11 +1,10 @@ package com.td.wait; import android.content.Context; -import android.os.Handler; public interface IWating { void setContext(Context context); - void setHandler(Handler handler); void onStart(); void onStop(); + int getStatus(); } \ No newline at end of file diff --git a/workspace/TrainDelayed/src/com/td/wait/InitializeWating.java b/workspace/TrainDelayed/src/com/td/wait/InitializeWating.java index bbbaaea..2a74c1f 100755 --- a/workspace/TrainDelayed/src/com/td/wait/InitializeWating.java +++ b/workspace/TrainDelayed/src/com/td/wait/InitializeWating.java @@ -1,54 +1,63 @@ package com.td.wait; import android.content.Context; -import android.os.Handler; +import android.database.sqlite.SQLiteDatabase; import com.td.WaitActivity; +import com.td.db.DatabaseHelper; +import com.td.db.PrefectureDao; +import com.td.db.RelationDao; +import com.td.db.TrainDao; import com.td.utility.ConfUtil; +import com.td.utility.Debug; import com.td.utility.EditPrefUtil; import com.td.utility.StatusFlagFactory; public class InitializeWating extends WatingImpl { private EditPrefUtil pref; - private Thread t = null; - - public InitializeWating(){ - Context context = getContext(); - pref = new EditPrefUtil(context); - } + private Thread thread = null; + private int status = WaitActivity.ID_NONE; public void onStart() { - if (t != null){ + if (thread != null){ return; } - t = new Thread() { + thread = new Thread() { public void run() { try { - Thread.sleep(10 * 1000); - init(); - - Handler handler = getHandler(); - handler.sendMessage(handler - .obtainMessage(WaitActivity.ID_OK)); - } catch (InterruptedException e) { - e.printStackTrace(); + status = WaitActivity.ID_OK; + } + catch (Exception e){ + Debug.d(this, null, e); + status = WaitActivity.ID_NG; } } }; - t.start(); + thread.start(); } public void onStop() { - + thread = null; } private void init() { Context context = getContext(); + pref = new EditPrefUtil(context); ConfUtil.init(pref); pref.update(); + StatusFlagFactory sff = StatusFlagFactory.getInstance(); sff.init(context); + + DatabaseHelper helper = DatabaseHelper.getInstance(); + SQLiteDatabase db = helper.getWritableDatabase(); + + helper.initDB(db, false); + } + + public int getStatus() { + return status; } } diff --git a/workspace/TrainDelayed/src/com/td/wait/TrainServiceWaiting.java b/workspace/TrainDelayed/src/com/td/wait/TrainServiceWaiting.java index dc34b26..66f7d6f 100755 --- a/workspace/TrainDelayed/src/com/td/wait/TrainServiceWaiting.java +++ b/workspace/TrainDelayed/src/com/td/wait/TrainServiceWaiting.java @@ -17,7 +17,8 @@ import com.td.utility.Debug; public class TrainServiceWaiting extends WatingImpl implements ServiceConnection { private ITrainService serviceImpl; - + private int status = WaitActivity.ID_NONE; + public void onStart() { try { Context context = getContext(); @@ -55,8 +56,7 @@ public class TrainServiceWaiting extends WatingImpl implements } catch (RemoteException e) { Debug.d(this, null, e); - Handler handler = getHandler(); - handler.sendMessage(handler.obtainMessage(WaitActivity.ID_NG)); + this.status = WaitActivity.ID_NG; } } @@ -69,7 +69,7 @@ public class TrainServiceWaiting extends WatingImpl implements if (serviceImpl == null) { return; } - int val = serviceImpl.doExecute("123"); + int val = serviceImpl.doExecute("DUMMY"); Context context = getContext(); Debug.t(context, "serviceImpl.doExecute() " + val); @@ -77,14 +77,11 @@ public class TrainServiceWaiting extends WatingImpl implements private ITrainServiceCallback.Stub interfaceImpl = new ITrainServiceCallback.Stub() { public void notify(String msg, int status) throws RemoteException { - Handler handler = getHandler(); - if (handler == null) { - return; - } - // ƒnƒ“ƒhƒ‰‚ɃƒbƒZ[ƒW‚𑗐M - // ƒƒbƒZ[ƒW‚Í‚¢‚¿‚¢‚¿ì¬‚·‚é‚ƃRƒXƒg‚ª‚©‚©‚邽‚߁AƒƒbƒZ[ƒWƒv[ƒ‹‚É‚ ‚éƒCƒ“ƒXƒ^ƒ“ƒX‚ðŽg—p‚·‚é(obtainMessage) - // ‘—M“à—e‚̓ƒbƒZ[ƒWŽí•Ê‚ƈø”(ˆø”‚ɉž‚¶‚ăI[ƒo[ƒ[ƒh‚³‚ê‚Ä‚¢‚éobtainMessage‚̃oƒŠƒG[ƒVƒ‡ƒ“‚ªŽg‚¦‚é) - handler.sendMessage(handler.obtainMessage(status)); + TrainServiceWaiting.this.status = status; } }; + + public int getStatus() { + return status; + } } diff --git a/workspace/TrainDelayed/src/com/td/wait/WatingImpl.java b/workspace/TrainDelayed/src/com/td/wait/WatingImpl.java index 703f166..e235d2b 100755 --- a/workspace/TrainDelayed/src/com/td/wait/WatingImpl.java +++ b/workspace/TrainDelayed/src/com/td/wait/WatingImpl.java @@ -3,25 +3,15 @@ package com.td.wait; import java.lang.ref.WeakReference; import android.content.Context; -import android.os.Handler; public abstract class WatingImpl implements IWating { private WeakReference contextRef; - private WeakReference handlerRef; public void setContext(Context context){ contextRef = new WeakReference(context); } - public void setHandler(Handler handler) { - handlerRef = new WeakReference(handler);; - } - public Context getContext(){ return contextRef.get(); } - - public Handler getHandler(){ - return handlerRef.get(); - } } -- 2.11.0