File : using DBInserter when saving data while tracing 87/31787/1
authorhyeran74.kim <hyeran74.kim@samsung.com>
Wed, 10 Dec 2014 04:51:11 +0000 (13:51 +0900)
committerhyeran74.kim <hyeran74.kim@samsung.com>
Wed, 10 Dec 2014 04:51:11 +0000 (13:51 +0900)
Change-Id: I4b591809ae4d06f43a19da64001045dc40832bc7
Signed-off-by: hyeran74.kim <hyeran74.kim@samsung.com>
org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/manager/FileDataMaker.java
org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/manager/FileDataManager.java

index 6f98aba..be4a6ab 100644 (file)
@@ -76,6 +76,7 @@ public class FileDataMaker {
        
        AtomicInteger idGenerator = new AtomicInteger();
        
+       
        public FileDataMaker() {}
        
        public void clear(){
@@ -282,7 +283,7 @@ public class FileDataMaker {
                        for(FileEvent data : fileEventList) {
                                fileApiList.add(data.getDBData());
                        }
-                       FileDataManager.getInstance().getApiDB().insert((List<List<Object>>)fileApiList);
+                       FileDataManager.getInstance().getApiDBInserter().pushData((List<List<Object>>)fileApiList);
                }
                
                Set<String> kyeSet = fileAccessorMap.keySet();
@@ -330,9 +331,13 @@ public class FileDataMaker {
                                event.setFileId(fileInfo[0]);
                                event.setAccessorId(fileInfo[1]);
                                event.setFilePath(filePath);
-                       }else if(filePath == null || filePath.equals("")) { 
+                       } else if(filePath == null || filePath.equals("")) {
                                // get file path except open event
                                Object[] fileInfo = getFilePathInfo(key);
+                               // deal with the exception when tracing while running of the App
+                               if(fileInfo == null) {
+                                       return;
+                               }
                                filePath = (String)fileInfo[0];
                                event.setFilePath(filePath);
                                event.setFileId((Integer)fileInfo[1]);
@@ -451,7 +456,9 @@ public class FileDataMaker {
        
        public void addStatusData(FileStatus data) {
                fileStatusList.add(data);
-               FileDataManager.getInstance().getStatusDB().insert(data);
+               List<List<Object>> insertDataList = new ArrayList<List<Object>>();
+               insertDataList.add(data.getDBData());
+               FileDataManager.getInstance().getSatatusDBInserter().pushData(insertDataList);
        }
        
        public void addStartAccessData(FileAccess data) {
@@ -460,7 +467,9 @@ public class FileDataMaker {
        
        public void addAccessData(FileAccess data) {
                fileAccessList.add(data);
-               FileDataManager.getInstance().getAccessDB().insert(data);
+               List<List<Object>> insertDataList = new ArrayList<List<Object>>();
+               insertDataList.add(data.getDBData());
+               FileDataManager.getInstance().getAccessDBInserter().pushData(insertDataList);
        }
        
        // in case of file read/write/lock probe/system call
@@ -481,7 +490,9 @@ public class FileDataMaker {
                                                String tooltip = data.getTooltip() + " , " + String.valueOf(ioSize);
                                                data.setTooltip(tooltip);
                                        }
-                                       FileDataManager.getInstance().getAccessDB().insert(data);
+                                       List<List<Object>> insertDataList = new ArrayList<List<Object>>();
+                                       insertDataList.add(data.getDBData());
+                                       FileDataManager.getInstance().getAccessDBInserter().pushData(insertDataList);
                                }
                                break;
                        }
index b9fa88e..6d449d5 100644 (file)
@@ -29,6 +29,8 @@ package org.tizen.dynamicanalyzer.ui.file.manager;
 import java.util.List;
 import java.util.Map;
 
+import org.tizen.dynamicanalyzer.database.DBInsertManager;
+import org.tizen.dynamicanalyzer.database.DBInserter;
 import org.tizen.dynamicanalyzer.swap.logparser.LogPackage;
 import org.tizen.dynamicanalyzer.swap.logparser.PageDataManager;
 import org.tizen.dynamicanalyzer.ui.file.data.FileAccessDB;
@@ -48,6 +50,11 @@ public class FileDataManager extends PageDataManager {
        private FileStatusDB statusDB = null;
        private FileAccessorDB accessorDB = null;
        
+       private DBInserter accessDBInserter = null;
+       private DBInserter accessorDBInserter = null;
+       private DBInserter satatusDBInserter = null;
+       private DBInserter apiDBInserter = null;
+       
        private FileSelectedData selectedData = null;
 
        private FileDataManager() {
@@ -68,6 +75,11 @@ public class FileDataManager extends PageDataManager {
                apiDB = new FileApiDB();
                statusDB = new FileStatusDB();
                accessorDB = new FileAccessorDB();
+               
+               apiDBInserter = DBInsertManager.makeInserter(apiDB);
+               accessDBInserter = DBInsertManager.makeInserter(accessDB);
+               accessorDBInserter = DBInsertManager.makeInserter(accessorDB);
+               satatusDBInserter = DBInsertManager.makeInserter(statusDB);
        }
        
        public void clear() {
@@ -146,6 +158,25 @@ public class FileDataManager extends PageDataManager {
        protected void makeData(LogPackage pack) {
                dataMaker.makeData(pack);
        }
-       
+
+       public DBInserter getApiDBInserter() {
+               return apiDBInserter;
+       }
+
+       public DBInserter getAccessDBInserter() {
+               return accessDBInserter;
+       }
+
+       public void setAccessDBInserter(DBInserter accessDBInserter) {
+               this.accessDBInserter = accessDBInserter;
+       }
+
+       public DBInserter getAccessorDBInserter() {
+               return accessorDBInserter;
+       }
+
+       public DBInserter getSatatusDBInserter() {
+               return satatusDBInserter;
+       }
 
 }