1 package com.yuji.ec.utility;
\r
3 import java.util.List;
\r
5 import android.content.Context;
\r
6 import android.database.sqlite.SQLiteDatabase;
\r
8 import com.evernote.edam.notestore.NoteList;
\r
9 import com.yuji.ec.common.CommonUtil;
\r
10 import com.yuji.ec.common.Constant;
\r
11 import com.yuji.ec.db.DatabaseHelper;
\r
12 import com.yuji.ec.db.Note;
\r
13 import com.yuji.ec.db.NoteDao;
\r
14 import com.yuji.ec.utility.EvernoteUtil.Error;
\r
16 public class NoteUpdator {
\r
17 private static NoteUpdator instance = null;
\r
18 private static Object obj = new Object();
\r
20 public static NoteUpdator getInstance() {
\r
21 if (instance == null) {
\r
22 synchronized (obj) {
\r
23 if (instance == null) {
\r
24 instance = new NoteUpdator();
\r
31 private NoteUpdator() {
\r
35 public void update(Context context, int noteItemType, String guid) {
\r
37 EvernoteUtil util = EvernoteUtil.getInstance();
\r
38 String username = PasswordUtil.getUsername(context);
\r
39 String password = PasswordUtil.getPassword(context);
\r
40 if (!CommonUtil.isNull(username) && !CommonUtil.isNull(password)) {
\r
41 util.setConfig(username, password);
\r
47 switch (noteItemType) {
\r
48 case Constant.NOTE_ITEM_TYPE_NOTE_BOOK:
\r
49 noteList = util.getNoteListByNotebook(guid);
\r
51 case Constant.NOTE_ITEM_TYPE_TAG:
\r
52 noteList = util.getNoteListByTag(guid);
\r
55 noteList = util.getNoteList();
\r
59 if (util.getErrorCode() != Error.NONE) {
\r
63 List<Note> list = util.getNoteContentList(noteList);
\r
69 DatabaseHelper helper = DatabaseHelper.getInstance();
\r
70 SQLiteDatabase db = helper.getWritableDatabase();
\r
71 NoteDao dao = (NoteDao) NoteDao.getInstance();
\r
73 synchronized (obj) {
\r
74 db.beginTransaction();
\r
77 for (Note note : list) {
\r
80 db.setTransactionSuccessful();
\r
82 db.endTransaction();
\r
85 } catch (Exception e) {
\r
86 Debug.d(this, null, e);
\r