From: hyeran74.kim Date: Fri, 26 Sep 2014 01:19:49 +0000 (+0900) Subject: File: chaged db select query module X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=62a7d511a4a645805c6b9b3fd5c02db7c504a815;p=sdk%2Ftools%2Fdynamic-analyzer.git File: chaged db select query module Change-Id: Ifd3ff6df95556bcc447fbce718a58e713155d4a5 Signed-off-by: hyeran74.kim --- diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListTable.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListTable.java index 3eac296..fda48e9 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListTable.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListTable.java @@ -26,6 +26,8 @@ package org.tizen.dynamicanalyzer.ui.file; +import java.sql.ResultSet; +import java.sql.SQLException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -33,24 +35,35 @@ import java.util.List; import org.eclipse.nebula.widgets.grid.GridItem; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Composite; +import org.tizen.dynamicanalyzer.common.AnalyzerConstants; import org.tizen.dynamicanalyzer.common.AnalyzerManager; import org.tizen.dynamicanalyzer.common.DASelectionData; import org.tizen.dynamicanalyzer.common.Global; import org.tizen.dynamicanalyzer.constant.CommonConstants; +import org.tizen.dynamicanalyzer.database.SqlConnectionManager; import org.tizen.dynamicanalyzer.error.ErrorCodeManager; import org.tizen.dynamicanalyzer.logparser.LogCenterConstants; import org.tizen.dynamicanalyzer.model.TableInput; +import org.tizen.dynamicanalyzer.resources.ColorResources; import org.tizen.dynamicanalyzer.swap.model.data.FileData; +import org.tizen.dynamicanalyzer.swap.model.data.LogData; +import org.tizen.dynamicanalyzer.ui.file.data.FileApiDB; +import org.tizen.dynamicanalyzer.ui.file.data.FileApiDB.COLUMN; import org.tizen.dynamicanalyzer.ui.file.manager.FileDataManager; import org.tizen.dynamicanalyzer.ui.file.model.FileEvent; +import org.tizen.dynamicanalyzer.ui.file.model.FileSelectedData; import org.tizen.dynamicanalyzer.ui.timeline.common.TimelineConstants; import org.tizen.dynamicanalyzer.ui.widgets.table.DAApiListTableComposite; import org.tizen.dynamicanalyzer.ui.widgets.table.DATableDataFormat; import org.tizen.dynamicanalyzer.utils.Formatter; +import org.tizen.dynamicanalyzer.widgets.chart.DAChartSeriesItem; public class FileApiListTable extends DAApiListTableComposite { + private FileDataManager fileDataManager = FileDataManager.getInstance(); + public FileApiListTable(Composite parent, int compStyle, int tableStyle) { super(parent, compStyle, tableStyle); table.addSelectionListener(new SelectionListener() { @@ -102,118 +115,141 @@ public class FileApiListTable extends DAApiListTableComposite { long rangeEndTime = view.getRangeEndTime(); HashMap findStartAPITableIndexHashMap = new HashMap(); + HashMap findStartTimeHashMap = new HashMap(); List removeTableIndex = new ArrayList(); List input = new ArrayList(); - List contents = FileDataManager.getInstance().getSelectedTableAPIList(); - if(contents == null) { - return null; - } - for (int i = 0; i < contents.size(); i++) { - FileEvent contentTemp = contents.get(i); - List contentText = new ArrayList(); - List contentData = new ArrayList(); + FileSelectedData selectedData = fileDataManager.getSelectedData(); + ResultSet rs = fileDataManager.getApiDB().selectAPI( + selectedData.getFilePath(), selectedData.getPid(), + selectedData.getTid(), selectedData.isParentChart()); + if (rs != null) { + try { + int i = -1; + while (rs.next()) { + i++; + + List contentText = new ArrayList(); + List contentData = new ArrayList(); - Integer startLogIndex = 0; - int fdApiType = contentTemp.getFdApiType(); + Integer startLogIndex = 0; + int seq = rs.getInt(FileApiDB.COLUMN.SEQ.index ); + String filePath = rs.getString(FileApiDB.COLUMN.FILE_PATH.index ); + int pid = rs.getInt(FileApiDB.COLUMN.PID.index); + int tid = rs.getInt(FileApiDB.COLUMN.TID.index); + long fd = rs.getLong(FileApiDB.COLUMN.FD.index); + int fdApiType = rs.getInt(FileApiDB.COLUMN.API_TYPE.index); + long time = rs.getLong(FileApiDB.COLUMN.EVENT_TIME.index); + int apiId = rs.getInt(FileApiDB.COLUMN.API_ID.index); + long errno = rs.getLong(FileApiDB.COLUMN.ERRNO.index); + String returns = rs.getString(COLUMN.RETURN_VALUE.index); + String args = rs.getString(FileApiDB.COLUMN.ARGS.index); + boolean isTarget =rs.getBoolean(COLUMN.TARGET.index); + long fileSize = rs.getLong(COLUMN.FILE_SIZE.index); + long size = rs.getLong(COLUMN.SIZE.index); + + FileEvent fileEvent = new FileEvent(seq, filePath, pid, + tid, fd, fdApiType, apiId, time, fileSize, size, + args, returns, errno, isTarget); + + String apiName = Global.getFunctionName(apiId); + long startTime = 0; + + contentText.add(0, Integer.toString(seq)); + contentData.add(Integer.toString(seq)); + + boolean isExistStartTimeLog = false; + if (fdApiType == LogCenterConstants.FD_API_TYPE_READ_START + || fdApiType == LogCenterConstants.FD_API_TYPE_WRITE_START + || fdApiType == LogCenterConstants.FD_API_TYPE_LOCK_START) { + String keString = apiName + pid + tid + fd; + findStartAPITableIndexHashMap.put(keString, i); + findStartTimeHashMap.put(i, time); + } else if (fdApiType == LogCenterConstants.FD_API_TYPE_READ_END + || fdApiType == LogCenterConstants.FD_API_TYPE_WRITE_END + || fdApiType == LogCenterConstants.FD_API_TYPE_LOCK_END) { + String keString = apiName + pid + tid + fd; + startLogIndex = findStartAPITableIndexHashMap.get(keString); + findStartAPITableIndexHashMap.remove(keString); + if (null != startLogIndex) { + contentText.add(input.get(startLogIndex.intValue()) + .getText().get(1)); // start time + contentData.add(input.get(startLogIndex.intValue()) + .getText().get(1)); - int seq = contentTemp.getSeq(); - contentText.add(0, Integer.toString(seq)); - contentData.add(Integer.toString(seq)); - long time = contentTemp.getTime(); + startTime = findStartTimeHashMap.get(startLogIndex); + String timeFormat = Formatter + .toTimeFormat(time - startTime); + String removeTimeFormat = timeFormat.replace( + "00:", CommonConstants.EMPTY);//$NON-NLS-1$ - boolean isExistStartTimeLog = false; - if (fdApiType == LogCenterConstants.FD_API_TYPE_READ_START - || fdApiType == LogCenterConstants.FD_API_TYPE_WRITE_START - || fdApiType == LogCenterConstants.FD_API_TYPE_LOCK_START) { - String keString = contentTemp.getApiName() - + contentTemp.getPid() + contentTemp.getTid() + contentTemp.getFdValue(); - findStartAPITableIndexHashMap.put(keString, i); + contentText.add(removeTimeFormat); // elapsed time + contentData.add(Long.toString(time - startTime)); + + isExistStartTimeLog = true; + removeTableIndex.add(startLogIndex.intValue()); + } else { + contentText.add(Formatter.toTimeFormat(time)); // start// + contentData.add(Long.toString(time)); + contentText.add("00.000");//$NON-NLS-1$ + contentData.add("00.000");//$NON-NLS-1$ + } + } - } else if (fdApiType == LogCenterConstants.FD_API_TYPE_READ_END - || fdApiType == LogCenterConstants.FD_API_TYPE_WRITE_END - || fdApiType == LogCenterConstants.FD_API_TYPE_LOCK_END) { - String keString = contentTemp.getApiName() - + contentTemp.getPid() + contentTemp.getTid() + contentTemp.getFdValue(); - startLogIndex = findStartAPITableIndexHashMap.get(keString); - findStartAPITableIndexHashMap.remove(keString); - if (null != startLogIndex) { - contentText.add(input.get(startLogIndex.intValue()) - .getText().get(1)); // start time - contentData.add(input.get(startLogIndex.intValue()) - .getText().get(1)); + if (!isExistStartTimeLog) { + contentText.add(Formatter.toTimeFormat(time)); // start time + contentData.add(Long.toString(time)); + contentText.add("00.000");//$NON-NLS-1$ //elapsed time + contentData.add("00.000");//$NON-NLS-1$ + } - long startTime = contents.get(startLogIndex.intValue()).getTime(); - String timeFormat = Formatter - .toTimeFormat(time - startTime); - String removeTimeFormat = timeFormat.replace( - "00:", CommonConstants.EMPTY);//$NON-NLS-1$ + contentText.add(Integer.toString(pid)); + contentData.add(Integer.toString(pid)); - contentText.add(removeTimeFormat); // elapsed time - contentData.add(Long.toString(time - startTime)); + contentText.add(Integer.toString(tid)); + contentData.add(Integer.toString(tid)); - isExistStartTimeLog = true; - removeTableIndex.add(startLogIndex.intValue()); - } else { - contentText.add(Formatter.toTimeFormat(contentTemp - .getTime())); // start// - contentData.add(Long.toString(contentTemp.getTime())); - contentText.add("00.000");//$NON-NLS-1$ - contentData.add("00.000");//$NON-NLS-1$ - } - } - - if (!isExistStartTimeLog) { - contentText.add(Formatter.toTimeFormat(time)); // start time - contentData.add(Long.toString(time)); - contentText.add("00.000");//$NON-NLS-1$ //elapsed time - contentData.add("00.000");//$NON-NLS-1$ - } + contentText.add(Long.toString(fd)); + contentData.add(Long.toString(fd)); - contentText.add(Integer.toString(contentTemp.getPid())); - contentData.add(Integer.toString(contentTemp.getPid())); + contentText.add(apiName); + contentData.add(apiName); - contentText.add(Integer.toString(contentTemp.getTid())); - contentData.add(Integer.toString(contentTemp.getTid())); - - contentText.add(Long.toString(contentTemp.getFdValue())); - contentData.add(Long.toString(contentTemp.getFdValue())); - - contentText.add(Global.getFunctionName(contentTemp.getApiId())); - contentData.add(Global.getFunctionName(contentTemp.getApiId())); - - contentText.add(contentTemp.getArgs()); - contentData.add(contentTemp.getArgs()); - - contentText.add(contentTemp.getReturn()); - contentData.add(contentTemp.getReturn()); + contentText.add(args); + contentData.add(args); + + contentText.add(returns); + contentData.add(returns); - String errMsg = ErrorCodeManager.getInatance() - .getErrorCode(contentTemp.getErrno()).name(); - if (null == errMsg) { - errMsg = "undefined error code"; //$NON-NLS-1$ - } - contentText.add(errMsg); - contentData.add(errMsg); - contentText.add(Long.toString(contentTemp.getFileSize())); - contentData.add(Long.toString(contentTemp.getFileSize())); + String errMsg = ErrorCodeManager.getInatance() + .getErrorCode(errno).name(); + if (null == errMsg) { + errMsg = "undefined error code"; //$NON-NLS-1$ + } - DATableDataFormat tableData = new DATableDataFormat( - contentTemp.getSeq()); - tableData.setLogData(contentTemp); - tableData.getData().addAll(contentData); - TableInput tableInput = new TableInput(); - tableInput.setText(contentText); - tableInput.setData(tableData); - if (!errMsg.contains("SUCCESS")) {//$NON-NLS-1$ - tableInput.setFailed(true); - } - input.add(tableInput); + // create DATableDataFormat + DATableDataFormat tableData = new DATableDataFormat(seq); + tableData.setLogData(fileEvent); + tableData.getData().addAll(contentData); + TableInput tableInput = new TableInput(); + tableInput.setText(contentText); + tableInput.setData(tableData); + if (!errMsg.contains("SUCCESS")) {//$NON-NLS-1$ + tableInput.setFailed(true); + } + input.add(tableInput); - if (time >= rangeStartTime && time <= rangeEndTime) { - tableInput.setInRange(true); + if (time >= rangeStartTime && time <= rangeEndTime) { + tableInput.setInRange(true); + } + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); } } + int removeCount = 0; for (int index : removeTableIndex) { int removeIndex = index - removeCount; diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListView.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListView.java index 5722dd9..c5fd02e 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListView.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileApiListView.java @@ -26,6 +26,8 @@ package org.tizen.dynamicanalyzer.ui.file; +import java.sql.ResultSet; +import java.sql.SQLException; import java.util.List; import org.eclipse.swt.SWT; @@ -34,6 +36,7 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.tizen.dynamicanalyzer.common.AnalyzerConstants; import org.tizen.dynamicanalyzer.common.DASelectionData; +import org.tizen.dynamicanalyzer.database.SqlConnectionManager; import org.tizen.dynamicanalyzer.nl.FilePageLabels; import org.tizen.dynamicanalyzer.resources.ColorResources; import org.tizen.dynamicanalyzer.ui.file.manager.FileDataManager; @@ -145,18 +148,25 @@ public class FileApiListView extends DAViewComposite { } // if new event is put from swap, update table - List events = manager.getApiDB().selectAPITable( + ResultSet rs = manager.getApiDB().selectAPI( selectedData.getFilePath(), selectedData.getPid(), selectedData.getTid(), selectedData.isParentChart()); - if(events != null) { - if (tableComp.getTable().getItemCount() > 0 - && events.size() != tableComp.getTable().getItemCount()) { - manager.setSelectedTableAPIList(events); - isUpdate = true; + + if(rs != null) { + try { + if(rs.next() && tableComp.getTable().getItemCount() > 0) { + manager.setSelectedData(selectedData); + isUpdate = true; + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); } + isUpdate = true; } - + return isUpdate; } @@ -184,12 +194,8 @@ public class FileApiListView extends DAViewComposite { if (null == selectedData) { return; } - manager.setSelectedTableAPIList( - manager.getApiDB(). - selectAPITable(selectedData.getFilePath(), - selectedData.getPid(), - selectedData.getTid(), - selectedData.isParentChart())); + + manager.setSelectedData(selectedData); tableComp.updateTable(); tableComp.setSelectionByTime(selectionStartTime, diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChart.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChart.java index 28f726b..20e3825 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChart.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChart.java @@ -26,14 +26,19 @@ package org.tizen.dynamicanalyzer.ui.file; +import java.sql.ResultSet; +import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.eclipse.swt.graphics.Color; import org.tizen.dynamicanalyzer.common.Global; +import org.tizen.dynamicanalyzer.database.SqlConnectionManager; import org.tizen.dynamicanalyzer.logparser.LogCenterConstants; import org.tizen.dynamicanalyzer.nl.FilePageLabels; import org.tizen.dynamicanalyzer.resources.ColorResources; +import org.tizen.dynamicanalyzer.ui.file.data.FileApiDB; +import org.tizen.dynamicanalyzer.ui.file.manager.FileDataManager; import org.tizen.dynamicanalyzer.ui.file.model.FileAccess; import org.tizen.dynamicanalyzer.ui.file.model.FileEvent; import org.tizen.dynamicanalyzer.ui.file.model.FileStatus; @@ -60,11 +65,12 @@ public class FileChart { private int tid = -1; private long fd = -1; private long fileSize = 0; - //private int parentChartIndex = -1; private int chartIndex = -1; private boolean isTarget = false; + private FileDataManager fileChartManager = FileDataManager.getInstance(); + public FileChart(String filePath) { this.filePath = filePath; } @@ -108,21 +114,25 @@ public class FileChart { * Update API series chart * @param apiList */ - public void updateApiSeries(List apiList){ - for(int i=0; i < apiList.size(); i++) { - FileEvent event = apiList.get(i); - if(!event.getFilePath().equals(this.filePath) || - event.getPid() != this.pid || - event.getTid() != this.tid) { - continue; + public void updateApiSeries(double startTime, double endTime){ + ResultSet rs = fileChartManager.getApiDB().selectFailedAPI( + startTime, endTime, this.filePath, this.pid, this.tid); + if (rs != null) { + try { + while (rs.next()) { + double time = rs.getLong(1) / TimelineConstants.MEGA_DOUBLE; + String apiName = Global.getFunctionName(rs.getInt(2)); + Color color = ColorResources.FILE_API_FAILED; + + DAChartSeriesItem seriesItem = new DAChartSeriesItem(time, + DAChartSeriesItem.SERIES_AREA_BAR, color, color, apiName); + accessSeries.addSeriesItem(seriesItem); + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); } - double time = event.getTime() / TimelineConstants.MEGA_DOUBLE; - String apiName = Global.getFunctionName(event.getApiId()); - Color color = ColorResources.FILE_API_FAILED; - - DAChartSeriesItem seriesItem = new DAChartSeriesItem(time, - DAChartSeriesItem.SERIES_AREA_BAR, color, color, apiName); - accessSeries.addSeriesItem(seriesItem); } chart.redraw(); } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartBoard.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartBoard.java index 650d25f..2d86bee 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartBoard.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartBoard.java @@ -48,7 +48,6 @@ import org.tizen.dynamicanalyzer.ui.common.PopupFromSelectionMenuItemClickListen import org.tizen.dynamicanalyzer.ui.common.PopupStartMenuItemClickListener; import org.tizen.dynamicanalyzer.ui.common.TimelineChartMouseEventListener; import org.tizen.dynamicanalyzer.ui.common.TimelineChartMouseTrackAdapter; -import org.tizen.dynamicanalyzer.ui.file.data.FileApiDB; import org.tizen.dynamicanalyzer.ui.file.manager.FileDataMaker; import org.tizen.dynamicanalyzer.ui.file.manager.FileDataManager; import org.tizen.dynamicanalyzer.ui.file.model.FileAccess; @@ -72,14 +71,12 @@ public class FileChartBoard extends DAChartBoard { private List chartList = new ArrayList(); private FileDataManager fileChartManager = FileDataManager.getInstance(); private FileDataMaker dataMaker; - private FileApiDB apiDB; private int parentChartIndex = -1; private Map, int[]> chartIndexMap = new HashMap, int[]>(); public FileChartBoard(Composite parent, String title) { super(parent, title); dataMaker = fileChartManager.getFileChartDataMaker(); - apiDB = fileChartManager.getApiDB(); } @Override @@ -268,22 +265,12 @@ public class FileChartBoard extends DAChartBoard { */ private void updateApiSeries() { if (chartList.size() > 0) { - /*List apiList = apiDB.selectAPISeries( - getVisibleStartTime(), getVisibleEndTime());*/ - List apiList = apiDB.selectFailedAPISeries( - getVisibleStartTime(), getVisibleEndTime()); - if (null == apiList) { - // no file event within the selected time range. - return; - } for (FileChart chart : chartList) { if (chart.isParentChart()) { continue; } - chart.updateApiSeries(apiList); + chart.updateApiSeries(getVisibleStartTime(), getVisibleEndTime()); } - } else { // chartList.size() <= 0 - // no data at all } } @@ -335,16 +322,16 @@ public class FileChartBoard extends DAChartBoard { parentChart.getLastChildChartIndex() }); } - public int[] getChartIndex(FileEvent event) { + public int[] getChartIndex(String filePath, int pid, int tid) { HashSet set = new HashSet(); - set.add(event.getFilePath()); - set.add(event.getPid()); - set.add(event.getTid()); + set.add(filePath); + set.add(pid); + set.add(tid); if(chartIndexMap.containsKey(set)) { return chartIndexMap.get(set); } - Logger.error("couldn't find index:" + event.getFilePath() + "," - + event.getPid() + "," + event.getTid()); + Logger.error("couldn't find index:" + filePath + "," + + pid + "," + tid); return new int[]{0, 0}; } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartView.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartView.java index ceb91ce..0ca78d5 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartView.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileChartView.java @@ -26,7 +26,8 @@ package org.tizen.dynamicanalyzer.ui.file; -import java.util.List; +import java.sql.ResultSet; +import java.sql.SQLException; import org.eclipse.swt.custom.StackLayout; import org.eclipse.swt.layout.FillLayout; @@ -34,6 +35,7 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.tizen.dynamicanalyzer.common.AnalyzerManager; import org.tizen.dynamicanalyzer.common.DASelectionData; +import org.tizen.dynamicanalyzer.database.SqlConnectionManager; import org.tizen.dynamicanalyzer.nl.FilePageLabels; import org.tizen.dynamicanalyzer.resources.ColorResources; import org.tizen.dynamicanalyzer.resources.FontResources; @@ -41,7 +43,6 @@ import org.tizen.dynamicanalyzer.swap.model.data.LogData; import org.tizen.dynamicanalyzer.ui.common.SetRangeMarkerMouseMoveListener; import org.tizen.dynamicanalyzer.ui.common.UICommonConstants; import org.tizen.dynamicanalyzer.ui.file.manager.FileDataManager; -import org.tizen.dynamicanalyzer.ui.file.model.FileEvent; import org.tizen.dynamicanalyzer.ui.range.RangeDataManager; import org.tizen.dynamicanalyzer.ui.timeline.common.TimelineConstants; import org.tizen.dynamicanalyzer.ui.timeline.logparser.LifecycleLogParser; @@ -82,19 +83,13 @@ public class FileChartView extends DAViewComposite { @Override public void handleSelectionEvent(DAChartBoardItem item) { lastSelectedItemForSummary = item; - AnalyzerManager - .getCurrentPage().updateView( - new DASelectionData( - FilePage.chartViewID, - (long) (((DAChartPlotIntervalMarker) fileChartBoard - .getMarkers() - .get(UICommonConstants.SELECTION_MARKER_INDEX)) - .getStartVal() * TimelineConstants.MEGA_DOUBLE), - (long) (((DAChartPlotIntervalMarker) fileChartBoard - .getMarkers() - .get(UICommonConstants.SELECTION_MARKER_INDEX)) - .getEndVal() * TimelineConstants.MEGA_DOUBLE), - item.getData(), null)); + DAChartPlotIntervalMarker intervalMarker = (DAChartPlotIntervalMarker) fileChartBoard + .getMarkers().get(UICommonConstants.SELECTION_MARKER_INDEX); + long selectiedStartTime = (long) (intervalMarker.getStartVal() * TimelineConstants.MEGA_DOUBLE); + long selectiedEndTime = (long) (intervalMarker.getEndVal() * TimelineConstants.MEGA_DOUBLE); + AnalyzerManager.getCurrentPage().updateView( + new DASelectionData(FilePage.chartViewID, + selectiedStartTime, selectiedEndTime, item.getData(), null)); } }); @@ -168,18 +163,27 @@ public class FileChartView extends DAViewComposite { LogData ldata = (LogData) obData; dataTime = ldata.getTime(); int seq = ldata.getSeq(); - FileEvent event = chartManager.getApiDB().selectFileEventBySeq(seq); - if(event != null) { - int selectedIndex[] = fileChartBoard.getChartIndex(event); - fileChartBoard.selectItem(selectedIndex[0], selectedIndex[1]); - if (null != lastSelectedItemForSummary) { - AnalyzerManager.getCurrentPage().updateView( - new DASelectionData(FilePage.chartViewID, - dataTime, dataTime, - lastSelectedItemForSummary.getData(), - null)); + ResultSet rs = chartManager.getApiDB().selectFileEventBySeq(seq); + if (rs != null) { + try { + if (rs.next()) { + int selectedIndex[] = fileChartBoard.getChartIndex(rs.getString(1), + rs.getInt(2), rs.getInt(3)); + fileChartBoard.selectItem(selectedIndex[0], selectedIndex[1]); + if (null != lastSelectedItemForSummary) { + AnalyzerManager.getCurrentPage().updateView( + new DASelectionData(FilePage.chartViewID, + dataTime, dataTime, + lastSelectedItemForSummary.getData(), + null)); + } + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); } - } // else, no need to update + } } } else { dataTime = selData.getStartTime(); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileDetailInfoView.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileDetailInfoView.java index 342f38c..c630032 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileDetailInfoView.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/FileDetailInfoView.java @@ -26,7 +26,8 @@ package org.tizen.dynamicanalyzer.ui.file; -import java.util.List; +import java.sql.ResultSet; +import java.sql.SQLException; import org.eclipse.swt.SWT; import org.eclipse.swt.events.PaintEvent; @@ -38,13 +39,14 @@ import org.eclipse.swt.widgets.Canvas; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.tizen.dynamicanalyzer.common.DASelectionData; +import org.tizen.dynamicanalyzer.database.SqlConnectionManager; import org.tizen.dynamicanalyzer.logparser.LogCenterConstants; import org.tizen.dynamicanalyzer.nl.AnalyzerLabels; import org.tizen.dynamicanalyzer.nl.FilePageLabels; import org.tizen.dynamicanalyzer.resources.ColorResources; import org.tizen.dynamicanalyzer.resources.FontResources; +import org.tizen.dynamicanalyzer.ui.file.data.FileApiDB; import org.tizen.dynamicanalyzer.ui.file.manager.FileDataManager; -import org.tizen.dynamicanalyzer.ui.file.model.FileEvent; import org.tizen.dynamicanalyzer.ui.file.model.FileSelectedData; import org.tizen.dynamicanalyzer.widgets.da.view.DAViewComposite; import org.tizen.dynamicanalyzer.widgets.da.view.DAViewData; @@ -140,59 +142,75 @@ public class FileDetailInfoView extends DAViewComposite { private void updateData(FileSelectedData selectData) { failedApiCount = 0; - List events = null; - events = fileChartManager.getApiDB().selectAPITable( + ResultSet rs = fileChartManager.getApiDB().selectAPI( selectData.getFilePath(), selectData.getPid(), selectData.getTid(), selectData.isParentChart()); - if (events != null) { - filePath = events.get(0).getFilePath(); - fileName = events.get(0).getFileName(); - fileSize = events.get(events.size()-1).getFileSize(); - - long readSize = 0; - long writeSize = 0; - int apiCount = events.size(); - for(FileEvent data : events) { - switch(data.getFdApiType()) { - case LogCenterConstants.FD_API_TYPE_OPEN: - case LogCenterConstants.FD_API_TYPE_CLOSE: - case LogCenterConstants.FD_API_TYPE_OTHERS: - case LogCenterConstants.FD_API_TYPE_UNLOCK: - if(data.getErrno() != 0) { - failedApiCount++; - } - break; - case LogCenterConstants.FD_API_TYPE_LOCK_END: - if(data.getErrno() != 0) { - failedApiCount++; - } - apiCount--; - break; - case LogCenterConstants.FD_API_TYPE_READ_END: - if(data.getErrno() != 0) { - failedApiCount++; + + if (rs != null) { + try { + long readSize = 0; + long writeSize = 0; + int apiCount = 0; + + while (rs.next()) { + apiCount++; + + if(rs.isFirst()) { + filePath = rs.getString(FileApiDB.COLUMN.FILE_PATH.index); + String[] splitPath = filePath.split("\\/"); //$NON-NLS-1$ + fileName = new String(splitPath[splitPath.length - 1]); + }else if(rs.isLast()) { + fileSize = rs.getLong(FileApiDB.COLUMN.FILE_SIZE.index); } - readSize += data.getSize(); - // except *_end event among the API count - apiCount--; - break; - case LogCenterConstants.FD_API_TYPE_WRITE_END: - if(data.getErrno() != 0) { - failedApiCount++; + int apiType = rs.getInt(FileApiDB.COLUMN.API_TYPE.index); + long errno = rs.getInt(FileApiDB.COLUMN.ERRNO.index); + long size = rs.getLong(FileApiDB.COLUMN.SIZE.index); + + switch(apiType) { + case LogCenterConstants.FD_API_TYPE_OPEN: + case LogCenterConstants.FD_API_TYPE_CLOSE: + case LogCenterConstants.FD_API_TYPE_OTHERS: + case LogCenterConstants.FD_API_TYPE_UNLOCK: + if(errno != 0) { + failedApiCount++; + } + break; + case LogCenterConstants.FD_API_TYPE_LOCK_END: + if(errno != 0) { + failedApiCount++; + } + apiCount--; + break; + case LogCenterConstants.FD_API_TYPE_READ_END: + if(errno != 0) { + failedApiCount++; + } + readSize += size; + // except *_end event among the API count + apiCount--; + break; + case LogCenterConstants.FD_API_TYPE_WRITE_END: + if(errno != 0) { + failedApiCount++; + } + writeSize += size; + // except *_end event among the API count + apiCount--; + break; + default: + break; } - writeSize += data.getSize(); - // except *_end event among the API count - apiCount--; - break; - default: - break; } + this.apiCount = apiCount; + this.readSize = readSize; + this.writeSize = writeSize; + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); } - this.apiCount = apiCount; - this.readSize = readSize; - this.writeSize = writeSize; + canvas.redraw(); } - canvas.redraw(); } @Override diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileAccessDB.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileAccessDB.java index a67867d..5359fb4 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileAccessDB.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileAccessDB.java @@ -27,6 +27,7 @@ package org.tizen.dynamicanalyzer.ui.file.data; import java.sql.PreparedStatement; +import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; @@ -43,25 +44,25 @@ public class FileAccessDB extends DBTable { private static final String TABLE_NAME = FilePageLabels.FILE_ACCESS_DB; public static enum COLUMN { - PID(0, "pid"), - TID(1, "tid"), - FILE_PATH(2, "filePath"), - FD(3, "fd"), - API_TYPE(4, "apiType"), - START_TIME(5, "startTime"), - END_TIME(6, "endTime"), - ERRNO(7, "errNo"), - FILE_SIZE(8, "fileSize"); + PID(1, "PID"), + TID(2, "TID"), + FILE_PATH(3, "FILE_PATH"), + FD(4, "FD"), + API_TYPE(5, "API_TYPE"), + START_TIME(6, "START_TIME"), + END_TIME(7, "END_TIME"), + ERRNO(8, "ERRNO"), + FILE_SIZE(9, "FILE_SIZE"); - private final int value; + private final int index; private final String name; - private COLUMN(int value, String name) { - this.value = value; + private COLUMN(int index, String name) { + this.index = index; this.name = name; } - public int getValue() { - return value; + public int getIndex() { + return index; } public String getName() { @@ -70,17 +71,18 @@ public class FileAccessDB extends DBTable { } public FileAccessDB() { - addColumn(new DBColumn(COLUMN.PID.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.TID.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.FILE_PATH.getName(), DBConstants.EMPTY, DBConstants.BIG_TEXT)); - addColumn(new DBColumn(COLUMN.FD.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.API_TYPE.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.START_TIME.getName(), DBConstants.NOT_NULL, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.END_TIME.getName(), DBConstants.NOT_NULL, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.ERRNO.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.FILE_SIZE.getName(), DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.PID.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.TID.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.FILE_PATH.name, DBConstants.EMPTY, DBConstants.BIG_TEXT)); + addColumn(new DBColumn(COLUMN.FD.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.API_TYPE.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.START_TIME.name, DBConstants.NOT_NULL, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.END_TIME.name, DBConstants.NOT_NULL, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.ERRNO.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.FILE_SIZE.name, DBConstants.EMPTY, DBConstants.LONG)); } + @Override public String getTableName() { return TABLE_NAME; @@ -91,6 +93,47 @@ public class FileAccessDB extends DBTable { + selectAll + " from " + TABLE_NAME; //$NON-NLS-1$ + public List executeQueryRS(String query) { + List resultData = new ArrayList(); + ResultSet rs = SqlConnectionManager.executeQueryRS(query); + if (rs != null) { + try { + while (rs.next()) { + FileAccess access= getDataFromResultSet(rs); + if (access != null) { + resultData.add(access); + } + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); + } + } + return resultData; + } + + public FileAccess getDataFromResultSet(ResultSet rs) { + FileAccess access = null; + try { + access = new FileAccess( + rs.getInt(COLUMN.PID.index), + rs.getInt(COLUMN.TID.index), + rs.getString(COLUMN.FILE_PATH.index), + rs.getLong(COLUMN.FD.index), + rs.getInt(COLUMN.API_TYPE.index), + rs.getLong(COLUMN.START_TIME.index), + rs.getLong(COLUMN.END_TIME.index), + rs.getLong(COLUMN.ERRNO.index), + rs.getLong(COLUMN.FILE_SIZE.index) + ); + } catch (SQLException e) { + e.printStackTrace(); + return null; + } + return access; + } + public void insert(FileAccess insertData) { List> insertDataList = new ArrayList>(); insertDataList.add(insertData.getDBData()); @@ -101,37 +144,29 @@ public class FileAccessDB extends DBTable { String query = String.format(SELECT_QUERY); List accessList = new ArrayList(); - - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return accessList; - } - - for (List data : result) { - accessList.add(new FileAccess(data)); - } + accessList = executeQueryRS(query); return accessList; } public static String selectAll() { StringBuffer selectAllColumn = new StringBuffer(); - selectAllColumn.append(COLUMN.PID.getName()); + selectAllColumn.append(COLUMN.PID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.TID.getName()); + selectAllColumn.append(COLUMN.TID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FILE_PATH.getName()); + selectAllColumn.append(COLUMN.FILE_PATH.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FD.getName()); + selectAllColumn.append(COLUMN.FD.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.API_TYPE.getName()); + selectAllColumn.append(COLUMN.API_TYPE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.START_TIME.getName()); + selectAllColumn.append(COLUMN.START_TIME.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.END_TIME.getName()); + selectAllColumn.append(COLUMN.END_TIME.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.ERRNO.getName()); + selectAllColumn.append(COLUMN.ERRNO.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FILE_SIZE.getName()); + selectAllColumn.append(COLUMN.FILE_SIZE.name); return selectAllColumn.toString(); } @@ -144,15 +179,15 @@ public class FileAccessDB extends DBTable { isPrepared = false; } else { try { - prep.setInt(1, (Integer)(rowData.get(COLUMN.PID.getValue()))); - prep.setInt(2, (Integer)(rowData.get(COLUMN.TID.getValue()))); - prep.setString(3, (String)(rowData.get(COLUMN.FILE_PATH.getValue()))); - prep.setLong(4, (Long)(rowData.get(COLUMN.FD.getValue()))); - prep.setInt(5, (Integer)(rowData.get(COLUMN.API_TYPE.getValue()))); - prep.setLong(6, (Long)(rowData.get(COLUMN.START_TIME.getValue()))); - prep.setLong(7, (Long)(rowData.get(COLUMN.END_TIME.getValue()))); - prep.setLong(8, (Long)(rowData.get(COLUMN.ERRNO.getValue()))); - prep.setLong(9, (Long)(rowData.get(COLUMN.FILE_SIZE.getValue()))); + prep.setInt(1, (Integer)(rowData.get(0))); + prep.setInt(2, (Integer)(rowData.get(1))); + prep.setString(3, (String)(rowData.get(2))); + prep.setLong(4, (Long)(rowData.get(3))); + prep.setInt(5, (Integer)(rowData.get(4))); + prep.setLong(6, (Long)(rowData.get(5))); + prep.setLong(7, (Long)(rowData.get(6))); + prep.setLong(8, (Long)(rowData.get(7))); + prep.setLong(9, (Long)(rowData.get(8))); } catch (SQLException e) { e.printStackTrace(); isPrepared = false; diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileApiDB.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileApiDB.java index a21fea2..3a435b4 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileApiDB.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileApiDB.java @@ -27,6 +27,7 @@ package org.tizen.dynamicanalyzer.ui.file.data; import java.sql.PreparedStatement; +import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; @@ -43,32 +44,32 @@ public class FileApiDB extends DBTable { private static final String TABLE_NAME = FilePageLabels.FILE_API_DB; public static enum COLUMN { - SEQ(0, "seq"), - FILE_PATH(1, "filePath"), - PID(2, "pid"), - TID(3, "tid"), - FD(4, "fd"), - API_TYPE(5, "apiType"), - EVENT_TIME(6, "eventTime"), - API_ID(7, "apiId"), - ERRNO(8, "errNo"), - IO_SIZE(9, "ioSize"), - FILE_SIZE(10, "fileSize"), - SIZE(11, "size"), - RETURN_VALUE(12, "returnValue"), - ARGS(13, "args"), - TARGET(14, "target"); + SEQ(1, "SEQ"), + FILE_PATH(2, "FILE_PATH"), + PID(3, "PID"), + TID(4, "TID"), + FD(5, "FD"), + API_TYPE(6, "API_TYPE"), + EVENT_TIME(7, "EVENT_TIME"), + API_ID(8, "API_ID"), + ERRNO(9, "ERRNO"), + IO_SIZE(10, "IO_SIZE"), + FILE_SIZE(11, "FILE_SIZE"), + SIZE(12, "SIZE"), + RETURN_VALUE(13, "RETURN_VALUE"), + ARGS(14, "ARGS"), + TARGET(15, "TARGET"); - private final int value; - private final String name; + public final int index; + public final String name; - private COLUMN(int value, String name) { - this.value = value; + private COLUMN(int index, String name) { + this.index = index; this.name = name; } - public int getValue() { - return value; + public int getIndex() { + return index; } public String getName() { @@ -82,200 +83,193 @@ public class FileApiDB extends DBTable { } public FileApiDB() { - addColumn(new DBColumn(COLUMN.SEQ.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.FILE_PATH.getName(), DBConstants.EMPTY, DBConstants.BIG_TEXT)); - addColumn(new DBColumn(COLUMN.PID.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.TID.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.FD.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.API_TYPE.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.EVENT_TIME.getName(), DBConstants.NOT_NULL, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.API_ID.getName(), DBConstants.EMPTY, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.ERRNO.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.IO_SIZE.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.FILE_SIZE.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.SIZE.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.RETURN_VALUE.getName(), DBConstants.EMPTY, DBConstants.BIG_TEXT)); - addColumn(new DBColumn(COLUMN.ARGS.getName(), DBConstants.EMPTY, DBConstants.BIG_TEXT)); - addColumn(new DBColumn(COLUMN.TARGET.getName(), DBConstants.NOT_NULL, DBConstants.BOOLEAN)); + addColumn(new DBColumn(COLUMN.SEQ.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.FILE_PATH.name, DBConstants.EMPTY, DBConstants.BIG_TEXT)); + addColumn(new DBColumn(COLUMN.PID.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.TID.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.FD.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.API_TYPE.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.EVENT_TIME.name, DBConstants.NOT_NULL, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.API_ID.name, DBConstants.EMPTY, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.ERRNO.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.IO_SIZE.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.FILE_SIZE.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.SIZE.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.RETURN_VALUE.name, DBConstants.EMPTY, DBConstants.BIG_TEXT)); + addColumn(new DBColumn(COLUMN.ARGS.name, DBConstants.EMPTY, DBConstants.BIG_TEXT)); + addColumn(new DBColumn(COLUMN.TARGET.name, DBConstants.NOT_NULL, DBConstants.BOOLEAN)); } private static final String selectAllColumn = selectAllColumn(); - private static final String SELECT_API_SERIES = "select " - + selectAllColumn - +" from " - + TABLE_NAME + " where %s <= " - + COLUMN.EVENT_TIME.getName() + " and " - + COLUMN.EVENT_TIME.getName() - + " <= %s"; - + private static final String SELECT_FAILED_API_SERIES = "select " - + selectAllColumn + + COLUMN.EVENT_TIME + " , " + + COLUMN.API_ID +" from " + TABLE_NAME + " where %s <= " - + COLUMN.EVENT_TIME.getName() + " and " - + COLUMN.EVENT_TIME.getName() + + COLUMN.EVENT_TIME.name + " and " + + COLUMN.EVENT_TIME.name + " <= %s" + " and " - + COLUMN.ERRNO.getName() + " != '0'" + " and " - + COLUMN.TARGET.getName() + " = 'true'"; + + COLUMN.FILE_PATH.name + " = '%s'" + " and " + + COLUMN.PID.name + " = '%d'" + " and " + + COLUMN.TID.name + " = '%d'" + " and " + + COLUMN.ERRNO.name + " != '0'" + " and " + + COLUMN.TARGET.name + " = 'true'"; private static final String SELECT_APIS_FOR_CHILD = "select " + selectAllColumn +" from " + TABLE_NAME + " where " - + COLUMN.FILE_PATH.getName() + " = '%s'" + " and " - + COLUMN.PID.getName() + " = '%d'" + " and " - + COLUMN.TID.getName() + " = '%d'" + " and " - + COLUMN.TARGET.getName() + " = 'true'"; + + COLUMN.FILE_PATH.name + " = '%s'" + " and " + + COLUMN.PID.name + " = '%d'" + " and " + + COLUMN.TID.name + " = '%d'" + " and " + + COLUMN.TARGET.name + " = 'true'"; private static final String SELECT_APIS_FOR_PARENT= "select " + selectAllColumn + " from " + TABLE_NAME + " where " - + COLUMN.FILE_PATH.getName() + " = '%s'" + " and " - + COLUMN.TARGET.getName() + " = 'true'"; + + COLUMN.FILE_PATH.name + " = '%s'" + " and " + + COLUMN.TARGET.name + " = 'true'"; private static final String SELECT_FILE_EVENT_BY_SEQ = "select " - //+ selectAllColumn - + COLUMN.SEQ.getName() + " , " - + COLUMN.FILE_PATH.getName() + " , " - + COLUMN.PID.getName() + " , " - + COLUMN.TID.getName() + + COLUMN.FILE_PATH.name + " , " + + COLUMN.PID.name + " , " + + COLUMN.TID.name + " from " + TABLE_NAME + " where " - + COLUMN.SEQ.getName() + " = '%d'"+ " and " - + COLUMN.TARGET.getName() + " = 'true'"; + + COLUMN.SEQ.name + " = '%d'"+ " and " + + COLUMN.TARGET.name + " = 'true'"; private static final String SELECT_ALL = "select " + selectAllColumn + " from " + TABLE_NAME + " where " - + COLUMN.TARGET.getName() + " = 'true'"; + + COLUMN.TARGET.name + " = 'true'"; - public void insert(List> insertData) { - insertData(insertData); + public ResultSet executeQuery(String query) { + ResultSet rs = SqlConnectionManager.executeQueryRS(query); + return rs; } - // for updating api series chart - public List selectAPISeries(double visibleStartTime, - double visibleEndTime) { - double selectStartTime = visibleStartTime * TimelineConstants.MEGA_DOUBLE; - double selectEndTime = visibleEndTime * TimelineConstants.MEGA_DOUBLE; - - String query = String.format(SELECT_API_SERIES, selectStartTime, selectEndTime); - - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return null; + public List executeQueryRS(String query) { + List resultData = new ArrayList(); + ResultSet rs = SqlConnectionManager.executeQueryRS(query); + if (rs != null) { + try { + while (rs.next()) { + FileEvent event= getDataFromResultSet(rs); + if (event != null) { + resultData.add(event); + } + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); + } } - List apiList = new ArrayList(); - for (List data : result) { - apiList.add(new FileEvent(data)); + return resultData; + } + + public FileEvent getDataFromResultSet(ResultSet rs) { + FileEvent event = null; + try { + event = new FileEvent( + rs.getInt(COLUMN.SEQ.index), + rs.getString(COLUMN.FILE_PATH.index), + rs.getInt(COLUMN.PID.index), + rs.getInt(COLUMN.TID.index), + rs.getLong(COLUMN.FD.index), + rs.getInt(COLUMN.API_TYPE.index), + rs.getInt(COLUMN.API_ID.index), + rs.getLong(COLUMN.EVENT_TIME.index), + rs.getLong(COLUMN.FILE_SIZE.index), + rs.getLong(COLUMN.SIZE.index), + rs.getString(COLUMN.ARGS.index), + rs.getString(COLUMN.RETURN_VALUE.index), + rs.getLong(COLUMN.ERRNO.index), + rs.getBoolean(COLUMN.TARGET.index) + ); + } catch (SQLException e) { + e.printStackTrace(); + return null; } - return apiList; + return event; + } + + public void insert(List> insertData) { + insertData(insertData); } // for updating api series chart - public List selectFailedAPISeries(double visibleStartTime, - double visibleEndTime) { + public ResultSet selectFailedAPI(double visibleStartTime, + double visibleEndTime, String filePath, int pid, int tid) { double selectStartTime = visibleStartTime * TimelineConstants.MEGA_DOUBLE; double selectEndTime = visibleEndTime * TimelineConstants.MEGA_DOUBLE; - String query = String.format(SELECT_FAILED_API_SERIES, selectStartTime, - selectEndTime); - - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return null; - } - List apiList = new ArrayList(); - for (List data : result) { - apiList.add(new FileEvent(data)); - } - return apiList; + selectEndTime, filePath, pid, tid); + + return SqlConnectionManager.executeQueryRS(query); } + - // for updating api table view - public List selectAPITable(String filePath, int pid, int tid, + // for updating api table view and detail view + public ResultSet selectAPI(String filePath, int pid, int tid, boolean isParentChart) { String query = String.format(SELECT_APIS_FOR_CHILD, filePath, pid, tid); if (isParentChart) { - query = String - .format(SELECT_APIS_FOR_PARENT, filePath); - } - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return null; + query = String.format(SELECT_APIS_FOR_PARENT, filePath); } - List apiList = new ArrayList(); - for (List data : result) { - apiList.add(new FileEvent(data)); - } - return apiList; + return SqlConnectionManager.executeQueryRS(query); } - public FileEvent selectFileEventBySeq(long seq) { + // to get chart row index + public ResultSet selectFileEventBySeq(long seq) { String query = String.format(SELECT_FILE_EVENT_BY_SEQ, seq); - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return null; - } - List data = result.get(0); - FileEvent fileEvent = new FileEvent( - (Integer) data.get(FileApiDB.COLUMN.SEQ.getValue()), - (String) data.get(FileApiDB.COLUMN.FILE_PATH.getValue()), - (Integer) data.get(FileApiDB.COLUMN.PID.getValue()), - (Integer) data.get(FileApiDB.COLUMN.TID.getValue())); - return fileEvent; + + return SqlConnectionManager.executeQueryRS(query); } public List select() { String query = String.format(SELECT_ALL); - - List apiList = new ArrayList(); - - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return apiList; - } - - for (List data : result) { - apiList.add(new FileEvent(data)); - } + List apiList = executeQueryRS(query); + return apiList; } public static String selectAllColumn() { StringBuffer selectAllColumn = new StringBuffer(); - selectAllColumn.append(COLUMN.SEQ.getName()); + selectAllColumn.append(COLUMN.SEQ.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FILE_PATH.getName()); + selectAllColumn.append(COLUMN.FILE_PATH.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.PID.getName()); + selectAllColumn.append(COLUMN.PID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.TID.getName()); + selectAllColumn.append(COLUMN.TID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FD.getName()); + selectAllColumn.append(COLUMN.FD.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.API_TYPE.getName()); + selectAllColumn.append(COLUMN.API_TYPE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.EVENT_TIME.getName()); + selectAllColumn.append(COLUMN.EVENT_TIME.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.API_ID.getName()); + selectAllColumn.append(COLUMN.API_ID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.ERRNO.getName()); + selectAllColumn.append(COLUMN.ERRNO.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.IO_SIZE.getName()); + selectAllColumn.append(COLUMN.IO_SIZE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FILE_SIZE.getName()); + selectAllColumn.append(COLUMN.FILE_SIZE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.SIZE.getName()); + selectAllColumn.append(COLUMN.SIZE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.RETURN_VALUE.getName()); + selectAllColumn.append(COLUMN.RETURN_VALUE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.ARGS.getName()); + selectAllColumn.append(COLUMN.ARGS.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.TARGET.getName()); + selectAllColumn.append(COLUMN.TARGET.name); return selectAllColumn.toString(); } @@ -288,21 +282,21 @@ public class FileApiDB extends DBTable { isPrepared = false; } else { try { - prep.setInt(1, (Integer)(rowData.get(COLUMN.SEQ.getValue()))); - prep.setString(2, (String)(rowData.get(COLUMN.FILE_PATH.getValue()))); - prep.setInt(3, (Integer)(rowData.get(COLUMN.PID.getValue()))); - prep.setInt(4, (Integer)(rowData.get(COLUMN.TID.getValue()))); - prep.setLong(5, (Long)(rowData.get(COLUMN.FD.getValue()))); - prep.setInt(6, (Integer)(rowData.get(COLUMN.API_TYPE.getValue()))); - prep.setLong(7, (Long)(rowData.get(COLUMN.EVENT_TIME.getValue()))); - prep.setInt(8, (Integer)(rowData.get(COLUMN.API_ID.getValue()))); - prep.setLong(9, (Long)(rowData.get(COLUMN.ERRNO.getValue()))); - prep.setLong(10, (Long)(rowData.get(COLUMN.IO_SIZE.getValue()))); - prep.setLong(11, (Long)(rowData.get(COLUMN.FILE_SIZE.getValue()))); - prep.setLong(12, (Long)(rowData.get(COLUMN.SIZE.getValue()))); - prep.setString(13, (String)(rowData.get(COLUMN.RETURN_VALUE.getValue()))); - prep.setString(14, (String)(rowData.get(COLUMN.ARGS.getValue()))); - prep.setBoolean(15, (Boolean)(rowData.get(COLUMN.TARGET.getValue()))); + prep.setInt(1, (Integer)(rowData.get(0))); + prep.setString(2, (String)(rowData.get(1))); + prep.setInt(3, (Integer)(rowData.get(2))); + prep.setInt(4, (Integer)(rowData.get(3))); + prep.setLong(5, (Long)(rowData.get(4))); + prep.setInt(6, (Integer)(rowData.get(5))); + prep.setLong(7, (Long)(rowData.get(6))); + prep.setInt(8, (Integer)(rowData.get(7))); + prep.setLong(9, (Long)(rowData.get(8))); + prep.setLong(10, (Long)(rowData.get(9))); + prep.setLong(11, (Long)(rowData.get(10))); + prep.setLong(12, (Long)(rowData.get(11))); + prep.setString(13, (String)(rowData.get(12))); + prep.setString(14, (String)(rowData.get(13))); + prep.setBoolean(15, (Boolean)(rowData.get(14))); } catch (SQLException e) { e.printStackTrace(); isPrepared = false; diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileStatusDB.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileStatusDB.java index a215358..29141a3 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileStatusDB.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/data/FileStatusDB.java @@ -27,6 +27,7 @@ package org.tizen.dynamicanalyzer.ui.file.data; import java.sql.PreparedStatement; +import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; @@ -43,23 +44,23 @@ public class FileStatusDB extends DBTable { private static final String TABLE_NAME = FilePageLabels.FILE_STATUS_DB; public static enum COLUMN { - PID(0, "pid"), - TID(1, "tid"), - FILE_PATH(2, "filePath"), - FD(3, "FD"), - API_TYPE(4, "apiType"), - EVENT_TIME(5, "eventTime"), - ERRNO(6, "errNo"); + PID(1, "PID"), + TID(2, "TID"), + FILE_PATH(3, "FILE_PATH"), + FD(4, "FD"), + API_TYPE(5, "API_TYPE"), + EVENT_TIME(6, "EVENT_TIME"), + ERRNO(7, "ERRNO"); - private final int value; + private final int index; private final String name; - private COLUMN(int value, String name) { - this.value = value; + private COLUMN(int index, String name) { + this.index = index; this.name = name; } - public int getValue() { - return value; + public int getIndex() { + return index; } public String getName() { @@ -68,13 +69,13 @@ public class FileStatusDB extends DBTable { } public FileStatusDB() { - addColumn(new DBColumn(COLUMN.PID.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.TID.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.FILE_PATH.getName(), DBConstants.NOT_NULL, DBConstants.BIG_TEXT)); - addColumn(new DBColumn(COLUMN.FD.getName(), DBConstants.EMPTY, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.API_TYPE.getName(), DBConstants.NOT_NULL, DBConstants.INTEGER)); - addColumn(new DBColumn(COLUMN.EVENT_TIME.getName(), DBConstants.NOT_NULL, DBConstants.LONG)); - addColumn(new DBColumn(COLUMN.ERRNO.getName(), DBConstants.NOT_NULL, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.PID.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.TID.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.FILE_PATH.name, DBConstants.NOT_NULL, DBConstants.BIG_TEXT)); + addColumn(new DBColumn(COLUMN.FD.name, DBConstants.EMPTY, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.API_TYPE.name, DBConstants.NOT_NULL, DBConstants.INTEGER)); + addColumn(new DBColumn(COLUMN.EVENT_TIME.name, DBConstants.NOT_NULL, DBConstants.LONG)); + addColumn(new DBColumn(COLUMN.ERRNO.name, DBConstants.NOT_NULL, DBConstants.LONG)); } @Override @@ -87,6 +88,45 @@ public class FileStatusDB extends DBTable { + selectAll + " from " + TABLE_NAME; //$NON-NLS-1$ + public List executeQueryRS(String query) { + List resultData = new ArrayList(); + ResultSet rs = SqlConnectionManager.executeQueryRS(query); + if (rs != null) { + try { + while (rs.next()) { + FileStatus status= getDataFromResultSet(rs); + if (status != null) { + resultData.add(status); + } + } + } catch (SQLException e) { + e.printStackTrace(); + } finally { + SqlConnectionManager.releaseResultSet(rs); + } + } + return resultData; + } + + public FileStatus getDataFromResultSet(ResultSet rs) { + FileStatus status = null; + try { + status = new FileStatus( + rs.getInt(COLUMN.PID.index), + rs.getInt(COLUMN.TID.index), + rs.getLong(COLUMN.FD.index), + rs.getString(COLUMN.FILE_PATH.index), + rs.getInt(COLUMN.API_TYPE.index), + rs.getLong(COLUMN.EVENT_TIME.index), + rs.getLong(COLUMN.ERRNO.index) + ); + } catch (SQLException e) { + e.printStackTrace(); + return null; + } + return status; + } + public void insert(FileStatus insertData) { List> insertDataList = new ArrayList>(); insertDataList.add(insertData.getDBData()); @@ -97,33 +137,25 @@ public class FileStatusDB extends DBTable { String query = String.format(SELECT_QUERY); List statusList = new ArrayList(); - - List> result = SqlConnectionManager.executeQuery(query); - if (null == result || result.size() == 0 || result.get(0).size() == 0) { - return statusList; - } - - for (List data : result) { - statusList.add(new FileStatus(data)); - } + statusList = executeQueryRS(query); return statusList; } public static String selectAll() { StringBuffer selectAllColumn = new StringBuffer(); - selectAllColumn.append(COLUMN.PID.getName()); + selectAllColumn.append(COLUMN.PID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.TID.getName()); + selectAllColumn.append(COLUMN.TID.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FILE_PATH.getName()); + selectAllColumn.append(COLUMN.FILE_PATH.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.FD.getName()); + selectAllColumn.append(COLUMN.FD.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.API_TYPE.getName()); + selectAllColumn.append(COLUMN.API_TYPE.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.EVENT_TIME.getName()); + selectAllColumn.append(COLUMN.EVENT_TIME.name); selectAllColumn.append(","); - selectAllColumn.append(COLUMN.ERRNO.getName()); + selectAllColumn.append(COLUMN.ERRNO.name); return selectAllColumn.toString(); } @@ -136,13 +168,13 @@ public class FileStatusDB extends DBTable { isPrepared = false; } else { try { - prep.setInt(1, (Integer)(rowData.get(COLUMN.PID.getValue()))); - prep.setInt(2, (Integer)(rowData.get(COLUMN.TID.getValue()))); - prep.setString(3, (String)(rowData.get(COLUMN.FILE_PATH.getValue()))); - prep.setLong(4, (Long)(rowData.get(COLUMN.FD.getValue()))); - prep.setInt(5, (Integer)(rowData.get(COLUMN.API_TYPE.getValue()))); - prep.setLong(6, (Long)(rowData.get(COLUMN.EVENT_TIME.getValue()))); - prep.setLong(7, (Long)(rowData.get(COLUMN.ERRNO.getValue()))); + prep.setInt(1, (Integer)(rowData.get(0))); + prep.setInt(2, (Integer)(rowData.get(1))); + prep.setString(3, (String)(rowData.get(2))); + prep.setLong(4, (Long)(rowData.get(3))); + prep.setInt(5, (Integer)(rowData.get(4))); + prep.setLong(6, (Long)(rowData.get(5))); + prep.setLong(7, (Long)(rowData.get(6))); } catch (SQLException e) { e.printStackTrace(); isPrepared = false; diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/manager/FileDataManager.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/manager/FileDataManager.java index b835d88..a571c00 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/manager/FileDataManager.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/manager/FileDataManager.java @@ -26,7 +26,6 @@ package org.tizen.dynamicanalyzer.ui.file.manager; -import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -36,7 +35,7 @@ import org.tizen.dynamicanalyzer.ui.file.data.FileAccessDB; import org.tizen.dynamicanalyzer.ui.file.data.FileApiDB; import org.tizen.dynamicanalyzer.ui.file.data.FileStatusDB; import org.tizen.dynamicanalyzer.ui.file.model.FileAccess; -import org.tizen.dynamicanalyzer.ui.file.model.FileEvent; +import org.tizen.dynamicanalyzer.ui.file.model.FileSelectedData; public class FileDataManager extends PageDataManager { @@ -47,7 +46,7 @@ public class FileDataManager extends PageDataManager { private FileApiDB apiDB = null; private FileStatusDB statusDB = null; - private List selectedTableAPIList = new ArrayList(); + private FileSelectedData selectedData = null; private FileDataManager() { dataMaker = new FileDataMaker(); @@ -72,7 +71,7 @@ public class FileDataManager extends PageDataManager { accessDB = null; apiDB = null; statusDB = null; - selectedTableAPIList = new ArrayList(); + selectedData = null; } public FileAccessDB getAccessDB(){ @@ -120,13 +119,12 @@ public class FileDataManager extends PageDataManager { return dataMaker; } - public List getSelectedTableAPIList() { - return selectedTableAPIList; + public void setSelectedData(FileSelectedData selectedData) { + this.selectedData = selectedData; } - - public void setSelectedTableAPIList( - List selectedTableAPIList) { - this.selectedTableAPIList = selectedTableAPIList; + + public FileSelectedData getSelectedData() { + return selectedData; } /** diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileAccess.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileAccess.java index be49768..d0a967e 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileAccess.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileAccess.java @@ -63,6 +63,19 @@ public class FileAccess { this.apiType = apiType; this.startTime = startTime; } + + public FileAccess(int pid, int tid, String filePath, long fd, int apiType, long startTime, + long endTime, long erroNo, long fileSize) { + this.pid = pid; + this.tid = tid; + this.filePath = filePath; + this.fd = fd; + this.apiType = apiType; + this.startTime = startTime; + this.endTime = endTime; + this.erroNo = erroNo; + this.fileSize = fileSize; + } public List getDBData() { List data = new ArrayList(); @@ -78,18 +91,6 @@ public class FileAccess { return data; } - public FileAccess(List data) { - this.pid = (Integer)data.get(FileAccessDB.COLUMN.PID.getValue()); - this.tid = (Integer)data.get(FileAccessDB.COLUMN.TID.getValue()); - this.filePath = (String)data.get(FileAccessDB.COLUMN.FILE_PATH.getValue()); - this.fd = (Long)data.get(FileAccessDB.COLUMN.FD.getValue()); - this.apiType = (Integer)data.get(FileAccessDB.COLUMN.API_TYPE.getValue()); - this.startTime = (Long)data.get(FileAccessDB.COLUMN.START_TIME.getValue()); - this.endTime = (Long)data.get(FileAccessDB.COLUMN.END_TIME.getValue()); - this.erroNo = (Long)data.get(FileAccessDB.COLUMN.ERRNO.getValue()); - this.fileSize = (Long)data.get(FileAccessDB.COLUMN.FILE_SIZE.getValue()); - } - public String getFilePath() { return filePath; } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileEvent.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileEvent.java index 4592b4b..b0b1ccb 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileEvent.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileEvent.java @@ -81,23 +81,6 @@ public class FileEvent extends FileData{ this.tid = tid; } - public FileEvent(List data) { - this.seq = (Integer) data.get(FileApiDB.COLUMN.SEQ.getValue()); - this.filePath = (String) data.get(FileApiDB.COLUMN.FILE_PATH.getValue()); - this.pid = (Integer) data.get(FileApiDB.COLUMN.PID.getValue()); - this.tid = (Integer) data.get(FileApiDB.COLUMN.TID.getValue()); - this.fdValue = (Long) data.get(FileApiDB.COLUMN.FD.getValue()); - this.fdApiType = (Integer) data.get(FileApiDB.COLUMN.API_TYPE.getValue()); - this.apiId = (Integer) data.get(FileApiDB.COLUMN.API_ID.getValue()); - this.time = (Long) data.get(FileApiDB.COLUMN.EVENT_TIME.getValue()); - this.fileSize = (Long) data.get(FileApiDB.COLUMN.FILE_SIZE.getValue()); - this.size = (Long) data.get(FileApiDB.COLUMN.SIZE.getValue()); - this.ret = (String) data.get(FileApiDB.COLUMN.RETURN_VALUE.getValue()); - this.args = (String) data.get(FileApiDB.COLUMN.ARGS.getValue()); - this.errno = (Long) data.get(FileApiDB.COLUMN.ERRNO.getValue()); - this.target = (Boolean) data.get(FileApiDB.COLUMN.TARGET.getValue()); - } - public List getDBData() { List data = new ArrayList(); data.add(this.seq); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileStatus.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileStatus.java index 04af3c7..04854ac 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileStatus.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/file/model/FileStatus.java @@ -63,16 +63,6 @@ public class FileStatus { return data; } - public FileStatus(List data) { - this.pid = (Integer)data.get(FileStatusDB.COLUMN.PID.getValue()); - this.tid = (Integer)data.get(FileStatusDB.COLUMN.TID.getValue()); - this.filePath = (String)data.get(FileStatusDB.COLUMN.FILE_PATH.getValue()); - this.fd = (Long)data.get(FileStatusDB.COLUMN.FD.getValue()); - this.apiType = (Integer)data.get(FileStatusDB.COLUMN.API_TYPE.getValue()); - this.eventTime = (Long)data.get(FileStatusDB.COLUMN.EVENT_TIME.getValue()); - this.errNo = (Long)data.get(FileStatusDB.COLUMN.ERRNO.getValue()); - } - public String getFilePath() { return filePath; }