OSDN Git Service

T27820
authorYuji Konishi <yuji.k64613@gmail.com>
Tue, 20 Mar 2012 06:41:55 +0000 (15:41 +0900)
committerYuji Konishi <yuji.k64613@gmail.com>
Tue, 20 Mar 2012 06:41:55 +0000 (15:41 +0900)
12 files changed:
workspace/EverMemo/src/com/yuji/em/EverMemoActivity.java
workspace/EverMemo/src/com/yuji/em/HeaderActivity.java
workspace/EverMemo/src/com/yuji/em/Initialize.java [new file with mode: 0644]
workspace/EverMemo/src/com/yuji/em/NoteListActivity.java
workspace/EverMemo/src/com/yuji/em/SelectNoteListActivity.java
workspace/EverMemo/src/com/yuji/em/SettingActivity.java
workspace/EverMemo/src/com/yuji/em/UserPasswordActivity.java
workspace/EverMemo/src/com/yuji/em/task/NoteListTask.java
workspace/EverMemo/src/com/yuji/em/task/UpdateNoteTask.java
workspace/EverMemo/src/com/yuji/em/utility/AsyncTaskCommand.java
workspace/EverMemo/src/com/yuji/em/utility/AsyncTaskIF.java
workspace/EverMemo/src/com/yuji/em/utility/BaseActivity.java

index 26d0b53..efdcd14 100644 (file)
@@ -29,11 +29,9 @@ import com.yuji.em.utility.AsyncTaskCommand;
 import com.yuji.em.utility.BaseActivity;
 import com.yuji.em.utility.Debug;
 import com.yuji.em.utility.EditPrefUtil;
-import com.yuji.em.utility.EvernoteUtil;
 
 public class EverMemoActivity extends BaseActivity {
        private EditPrefUtil pref = new EditPrefUtil(this);
-       private EvernoteUtil util = EvernoteUtil.getInstance();
        private TextView titleText = null;
        private Button sendButton = null;
        private EditText editText = null;
@@ -97,10 +95,6 @@ public class EverMemoActivity extends BaseActivity {
                                        });
                }
 
-               String username = CommonUtil.getUsername(this);
-               String password = CommonUtil.getPassword(this);
-               util.setConfig(username, password);
-
                updateList();
                setStatus();
        }
@@ -256,7 +250,7 @@ public class EverMemoActivity extends BaseActivity {
 
                        // \8dX\90V
                        // util.updateNoteContext(guid, title, text);
-                       UpdateNoteTask task = new UpdateNoteTask(guid, title, text);
+                       UpdateNoteTask task = new UpdateNoteTask(this, guid, title, text);
                        AsyncTaskCommand command = new AsyncTaskCommand(this, task);
                        command.setDialog(false);
                        command.execute("");
index b1db3be..5439710 100644 (file)
@@ -1,6 +1,5 @@
 package com.yuji.em;
 
-import android.app.Activity;
 import android.os.Bundle;
 import android.view.View;
 import android.view.View.OnClickListener;
@@ -8,10 +7,10 @@ import android.widget.Button;
 import android.widget.EditText;
 
 import com.yuji.em.common.Constant;
+import com.yuji.em.utility.BaseActivity;
 import com.yuji.em.utility.EditPrefUtil;
-import com.yuji.em.utility.EvernoteUtil;
 
-public class HeaderActivity extends Activity {
+public class HeaderActivity extends BaseActivity {
        private EditPrefUtil pref = new EditPrefUtil(this);
        private EditText editText = null;
        private Button okButton = null;
diff --git a/workspace/EverMemo/src/com/yuji/em/Initialize.java b/workspace/EverMemo/src/com/yuji/em/Initialize.java
new file mode 100644 (file)
index 0000000..1eb3276
--- /dev/null
@@ -0,0 +1,26 @@
+package com.yuji.em;
+
+import com.yuji.em.common.CommonUtil;
+import com.yuji.em.utility.EvernoteUtil;
+
+import android.content.Context;
+
+public class Initialize {
+       private static boolean isInit = true; // TODO false\82É\82È\82Á\82Ä\82¢\82½\81B\82È\82¼\81B
+       
+       public static void initialize(Context context){
+               if (!isInit){
+                       return;
+               }
+               isInit = false;
+               
+               EvernoteUtil util = EvernoteUtil.getInstance();
+               String username = CommonUtil.getUsername(context);
+               String password = CommonUtil.getPassword(context);
+               util.setConfig(username, password);
+       }
+
+       public static void setInitialize() {
+               isInit = true;          
+       }
+}
index 1bdf273..9379ffa 100644 (file)
@@ -3,7 +3,6 @@ package com.yuji.em;
 import java.util.ArrayList;
 import java.util.List;
 
-import android.app.Activity;
 import android.content.Intent;
 import android.os.Bundle;
 import android.text.format.DateUtils;
@@ -20,8 +19,9 @@ import com.yuji.em.data.Note;
 import com.yuji.em.data.NoteDao;
 import com.yuji.em.task.NoteListTask;
 import com.yuji.em.utility.AsyncTaskCommand;
+import com.yuji.em.utility.BaseActivity;
 
-public class NoteListActivity extends Activity {
+public class NoteListActivity extends BaseActivity {
        private ListView listView = null;
        private Button closeButton = null;
        private int index = -1;
@@ -101,6 +101,10 @@ public class NoteListActivity extends Activity {
 
                // TODO
                List<com.evernote.edam.type.Note> notes = noteList.getNotes();
+               if (notes == null){
+                       return;
+               }
+               
                String oldTitle = "";
                NoteListItem item;
                for (com.evernote.edam.type.Note note : notes) {
index c7df436..40390b0 100644 (file)
@@ -2,7 +2,6 @@ package com.yuji.em;
 
 import java.util.List;
 
-import android.app.Activity;
 import android.content.Intent;
 import android.graphics.Color;
 import android.os.Bundle;
@@ -20,8 +19,9 @@ import com.yuji.em.common.CommonUtil;
 import com.yuji.em.common.Constant;
 import com.yuji.em.data.Note;
 import com.yuji.em.data.NoteDao;
+import com.yuji.em.utility.BaseActivity;
 
-public class SelectNoteListActivity extends Activity {
+public class SelectNoteListActivity extends BaseActivity {
        private LinearLayout messageLayout = null;
        private TextView titleView = null;
        private TextView messageView = null;
index ab82260..b6e03c1 100644 (file)
@@ -1,9 +1,5 @@
 package com.yuji.em;
 
-import com.yuji.em.common.CommonUtil;
-import com.yuji.em.data.NoteDao;
-
-import android.app.Activity;
 import android.content.Intent;
 import android.os.Bundle;
 import android.view.View;
@@ -12,7 +8,11 @@ import android.widget.Button;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
-public class SettingActivity extends Activity {
+import com.yuji.em.common.CommonUtil;
+import com.yuji.em.data.NoteDao;
+import com.yuji.em.utility.BaseActivity;
+
+public class SettingActivity extends BaseActivity {
        private LinearLayout messageLayout = null;
        private TextView messageView = null;
        private Button userButton = null;
index 3c66dde..4c02ec7 100644 (file)
@@ -1,6 +1,5 @@
 package com.yuji.em;
 
-import android.app.Activity;
 import android.os.Bundle;
 import android.view.View;
 import android.view.View.OnClickListener;
@@ -8,10 +7,11 @@ import android.widget.Button;
 import android.widget.EditText;
 
 import com.yuji.em.common.Constant;
+import com.yuji.em.utility.BaseActivity;
 import com.yuji.em.utility.EditPrefUtil;
 import com.yuji.em.utility.EvernoteUtil;
 
-public class UserPasswordActivity extends Activity {
+public class UserPasswordActivity extends BaseActivity {
        private EditPrefUtil pref = new EditPrefUtil(this);
        private EditText userEditText = null;
        private EditText passwordEditText = null;
index 4a861da..a5bc7ef 100644 (file)
@@ -19,11 +19,12 @@ public class NoteListTask implements AsyncTaskIF {
        @Override
        public void doExecute() {
                noteList = util.getNoteList();
+               //noteList = new NoteList();
        }
 
        @Override
        public void cancel() {
-
+               activityRef = null;
        }
 
        @Override
@@ -31,9 +32,15 @@ public class NoteListTask implements AsyncTaskIF {
                NoteListActivity activity = activityRef.get();
                if (activity != null){
                        activity.done((!isCancel? noteList : null));
+                       activityRef = null;
                }
        }
 
+       @Override
+       public int getStatus(){
+               return 0;
+       }
+       
        public NoteList getNoteList() {
                return noteList;
        }
index a259bbf..d1dc623 100644 (file)
@@ -1,5 +1,8 @@
 package com.yuji.em.task;
 
+import android.content.Context;
+import android.widget.Toast;
+
 import com.evernote.edam.type.Note;
 import com.yuji.em.utility.AsyncTaskIF;
 import com.yuji.em.utility.Debug;
@@ -7,38 +10,45 @@ import com.yuji.em.utility.EvernoteUtil;
 
 public class UpdateNoteTask implements AsyncTaskIF {
        private static int RETRY_COUNT = 3;
-       private EvernoteUtil util = EvernoteUtil.getInstance();
+
+       private Context context = null;
        private String guid;
        private String title;
        private String text;
 
-       public UpdateNoteTask(String guid, String title, String text) {
+       private EvernoteUtil util = EvernoteUtil.getInstance();
+       private int status = -1;
+
+       public UpdateNoteTask(Context context, String guid, String title, String text) {
+               this.context = context;
                this.guid = guid;
                this.title = title;
                this.text = text;
        }
-       
+
        @Override
        public void doExecute() {
-//             try {
-//                     util.updateNoteContext(guid, title, text);
-//             }
-//             catch (Exception e){
-//                     e.printStackTrace();
-//             }
                int i = 0;
-               for (i = 0; i < RETRY_COUNT; i++){
-                       Note note = util.updateNoteContext(guid, title, text);
-                       if (note != null){
-                               break;
-                       }
-                       try {
-                               Thread.sleep(1000);
-                       } catch (InterruptedException e) {
-                               ;
+               synchronized (context) {
+                       for (i = 0; i < RETRY_COUNT; i++) {
+                               Note note = util.updateNoteContext(guid, title, text);
+                               if (note != null) {
+                                       break;
+                               }
+                               Debug.d(this, "retry updateNoteContext()"); // TODO
+                               try {
+                                       Thread.sleep(1000);
+                               } catch (InterruptedException e) {
+                                       ;
+                               }
                        }
                }
-               if (i >= RETRY_COUNT){
+               if (i < RETRY_COUNT) {
+                       status = 0;
+               }
+               else {
+                       status = 1;
+                       Toast.makeText(context, "\8f\91\82«\8d\9e\82Ý\82É\8e¸\94s\82µ\82Ü\82µ\82½" + text, Toast.LENGTH_LONG); // TODO
                        Debug.d(this, "doExecute"); // TODO
                }
        }
@@ -55,4 +65,8 @@ public class UpdateNoteTask implements AsyncTaskIF {
 
        }
 
+       @Override
+       public int getStatus(){
+               return status;
+       }
 }
index d3b3e35..7f4bceb 100644 (file)
@@ -17,7 +17,8 @@ public class AsyncTaskCommand extends AsyncTask<String, Integer, String> {
        private ProgressDialog dialog;\r
        private boolean isCancel = false;\r
        private boolean isDialog = true;\r
-\r
+       private int status = -1;\r
+       \r
        @SuppressWarnings({ "rawtypes", "unchecked" })\r
        public AsyncTaskCommand(Activity activity, AsyncTaskIF command) {\r
                this.activityRef = new WeakReference(activity);\r
@@ -69,6 +70,7 @@ public class AsyncTaskCommand extends AsyncTask<String, Integer, String> {
                try {\r
                        Debug.d(this, "doInBackground start");\r
                        command.doExecute();\r
+                       status = command.getStatus();\r
                        Debug.d(this, "doInBackground end");\r
                } catch (RuntimeException e) {\r
                        Debug.d(this, null, e);\r
@@ -132,4 +134,8 @@ public class AsyncTaskCommand extends AsyncTask<String, Integer, String> {
        public void setDialog(boolean b) {\r
                isDialog = b;\r
        }\r
+       \r
+       public int getResultStatus(){\r
+               return status;\r
+       }\r
 }\r
index d369bb9..e4496f5 100644 (file)
@@ -4,4 +4,5 @@ public interface AsyncTaskIF {
        void doExecute();\r
        void cancel();\r
        void done(boolean isCancel);\r
+       int getStatus();\r
 }\r
index e4ac874..91f255e 100755 (executable)
@@ -2,6 +2,7 @@ package com.yuji.em.utility;
 \r
 import android.app.Activity;\r
 import android.app.AlertDialog;\r
+import android.content.Context;\r
 import android.content.DialogInterface;\r
 import android.content.Intent;\r
 import android.os.Bundle;\r
@@ -9,21 +10,19 @@ import android.view.KeyEvent;
 import android.view.Window;\r
 import android.view.WindowManager;\r
 \r
+import com.yuji.em.Initialize;\r
+\r
 public class BaseActivity extends Activity {\r
        @Override\r
     public void onCreate(Bundle savedInstanceState) {\r
         super.onCreate(savedInstanceState);\r
                Debug.d(this, Debug.ON_CREATE);\r
-//        \r
-//             Context context = getApplicationContext();\r
-//        try {\r
-//                     Thread.setDefaultUncaughtExceptionHandler(new TrainDelayedUncaughtExceptionHandler(\r
-//                                     context));\r
-//                     DatabaseHelper.init(context);\r
-//                     Initialize.initialize(context);\r
-//             } catch (TdException e) {\r
-//                     terminate(e);\r
-//             }\r
+\r
+               Context context = getApplicationContext();\r
+               //Thread.setDefaultUncaughtExceptionHandler(new TrainDelayedUncaughtExceptionHandler(\r
+               //              context));\r
+               //DatabaseHelper.init(context);\r
+               Initialize.initialize(context);\r
     }\r
     \r
     @Override\r