OSDN Git Service

3fe13306bf84e1ca6563b8aabc78e6992909e2d0
[everfolder/source.git] / source / workspace / EverFolder / src / com / yuji / ef / Initialize.java
1 package com.yuji.ef;
2
3 import android.app.Activity;
4 import android.content.Context;
5
6 import com.yuji.ef.common.Constant;
7 import com.yuji.ef.dao.BookDao;
8 import com.yuji.ef.dao.DatabaseHelper;
9 import com.yuji.ef.dao.LockDao;
10 import com.yuji.ef.dao.NodeCacheDao;
11 import com.yuji.ef.exception.EfError;
12 import com.yuji.ef.exception.EfException;
13 import com.yuji.ef.pref.EditPrefUtil;
14 import com.yuji.ef.service.NoteUpdatorService;
15
16 public class Initialize {
17         private static Context context;
18         private static boolean isInit = true;
19         
20         public static void initialize(Context applicatonContext, Activity activity) throws EfException {
21                 if (!isInit) {
22                         return;
23                 }
24
25                 try {
26                         context = applicatonContext;
27                         
28                         EditPrefUtil pref = new EditPrefUtil(context);
29                         pref.getInt(Constant.PREF_UPDATE_TIME, 0);
30                         pref.get(Constant.PREF_UPDATE_DATETIME, "");
31                         pref.getInt(Constant.PREF_DELETE_LOCK, 0);
32                         pref.getInt(Constant.PREF_UPDATE_DATA, Constant.OFF);
33                         pref.getLong(Constant.PREF_NEXT_TIME, 0L);
34                         pref.getLong(Constant.PREF_LOGIN_DATE, 0L);
35                         pref.update();
36                         
37                         DatabaseHelper.addDao(NodeCacheDao.getInstance());
38                         DatabaseHelper.addDao(BookDao.getInstance());
39                         DatabaseHelper.init(context, "EverFolder.db");
40                         DatabaseHelper.addDao(LockDao.getInstance());                                   
41                         DatabaseHelper.init(context, "Lock.db");
42                         
43                         // #29573
44                         if (activity != null && activity.getClass() == EverFolderActivity.class){
45                                 pref.put(Constant.PREF_DELETE_LOCK, Constant.ON);
46                                 pref.update();
47                         }
48                         
49                         NoteUpdatorService.init(context);
50                         
51                         isInit = false;
52                 } catch (Exception e) {
53                         EfException.msg(R.string.ErrorSystem, e);
54                         throw new EfException(EfError.INIT);
55                 }
56         }
57
58         public static Context getContext() {
59                 return context;
60         }
61 }