From aa8f86b4e4227e4bf141bc42b224447de88bd2c5 Mon Sep 17 00:00:00 2001 From: greatim Date: Mon, 9 Jun 2014 17:15:35 +0900 Subject: [PATCH] INTERNAL: refactor Project.java refactor Project.java, Remove some unnecessary member varaible and methods. Rename some methods, variable. Remove conflict for commit #22402 Change-Id: Id2f52c5b88ca210837be91b4eab9f2489608fe58 Signed-off-by: greatim --- .../dynamicanalyzer/handlers/OpenTraceHandler.java | 5 +- .../handlers/ReplayTraceHandler.java | 4 +- .../org/tizen/dynamicanalyzer/project/Project.java | 223 ++++++--------------- .../swap/communicator/Communicator30.java | 11 +- .../swap/logparser/MessageParser.java | 10 +- .../swap/logparser/SWAPLogParser.java | 3 - .../ui/toolbar/StopLogProcessor.java | 2 +- .../dynamicanalyzer/ui/toolbar/ToolbarArea.java | 34 ++-- .../ui/toolbar/opentrace/OpenTraceDialog.java | 2 +- .../ui/toolbar/opentrace/OpenTraceInputReader.java | 26 ++- 10 files changed, 120 insertions(+), 200 deletions(-) diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/OpenTraceHandler.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/OpenTraceHandler.java index f9e411a..bd02e1d 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/OpenTraceHandler.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/OpenTraceHandler.java @@ -29,6 +29,7 @@ package org.tizen.dynamicanalyzer.handlers; import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Map; import org.eclipse.core.commands.AbstractHandler; import org.eclipse.core.commands.ExecutionEvent; @@ -139,7 +140,7 @@ public class OpenTraceHandler extends AbstractHandler { return null; } - ToolbarArea.getInstance().setTime(project.getLastTime()); + ToolbarArea.getInstance().setTime(project.getTotalStopTime()); ToolbarArea.getInstance().setDeviceComboText(project.getDevice()); ToolbarArea.getInstance().setAppComboText(project.getAppName()); ToolbarArea.getInstance().checkStartButtonAndAppListEnablement(); @@ -261,7 +262,7 @@ public class OpenTraceHandler extends AbstractHandler { List pids = SqlManager.getInstance().getPids(); int pidCount = pids.size(); - HashMap processPkgMap = AnalyzerManager + Map processPkgMap = AnalyzerManager .getProject().getProcessInfoPackHash(); for (int h = 0; h < pidCount; h++) { ProcessInfoPackage pip = new ProcessInfoPackage(); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/ReplayTraceHandler.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/ReplayTraceHandler.java index 6dd9e69..0cbeec2 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/ReplayTraceHandler.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/handlers/ReplayTraceHandler.java @@ -65,11 +65,11 @@ public class ReplayTraceHandler extends AbstractHandler { return FAILED; } else { isReplay = true; - stopTime = AnalyzerManager.getProject().getStopTime(); + stopTime = AnalyzerManager.getProject().getReplayStopTime(); } } else { isReplay = true; - stopTime = AnalyzerManager.getProject().getStopTime(); + stopTime = AnalyzerManager.getProject().getReplayStopTime(); startTime = AnalyzerManager.getProject().getProfileStartTime(); // make replay event diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/project/Project.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/project/Project.java index be7e1dc..7bd7a3a 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/project/Project.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/project/Project.java @@ -4,7 +4,7 @@ * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. * * Contact: - * Jooyoul Lee + * Jaewon Lim * Juyoung Kim * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -40,6 +40,8 @@ import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; +import java.util.Map; + import org.tizen.dynamicanalyzer.common.AnalyzerConstants; import org.tizen.dynamicanalyzer.common.AnalyzerManager; import org.tizen.dynamicanalyzer.common.GlobalInformation; @@ -48,16 +50,13 @@ import org.tizen.dynamicanalyzer.common.path.PathManager; import org.tizen.dynamicanalyzer.communicator.DACommunicator; import org.tizen.dynamicanalyzer.constant.CommonConstants; import org.tizen.dynamicanalyzer.database.SqlConnectionManager; -import org.tizen.dynamicanalyzer.handlers.ReplayTraceHandler; import org.tizen.dynamicanalyzer.model.DeviceInfo; import org.tizen.dynamicanalyzer.sql.SqlManager; -import org.tizen.dynamicanalyzer.swap.channel.data.DataChannelConstants; import org.tizen.dynamicanalyzer.swap.channel.data.ProcessInfo; import org.tizen.dynamicanalyzer.swap.channel.data.ProcessInfoPackage; import org.tizen.dynamicanalyzer.swap.logparser.DataManagerRegistry; import org.tizen.dynamicanalyzer.swap.model.DATime; import org.tizen.dynamicanalyzer.ui.toolbar.ToolbarArea; -import org.tizen.dynamicanalyzer.util.ByteUtil; import org.tizen.dynamicanalyzer.util.CommonUtil; import org.tizen.dynamicanalyzer.util.DALogger; @@ -65,96 +64,89 @@ public class Project { // public static final String TABLE_NAME = "project"; private static final DALogger DA_LOG = DALogger.getInstance(); - private static final String VERSION = "version"; - private static final String PROTOCOL_VERSION = "protocolVersion"; - private static final String DEVICE = "device"; - private static final String PACKAGE_ID = "pakID"; - private static final String APP_NAME = "appName"; - private static final String CREATE_TIME = "createTime"; - private static final String LAST_TIME = "lastTime"; - private static final String STOP_TIME = "stopTime"; - private static final String PROF_START_TIME = "profStatTime"; - private static final String LOG_COUNT = "logCount"; - private static final String SYSTEM_COUNT = "systemCount"; - private static final String PROFILE_COUNT = "profileCount"; - private static final String SAVE_PATH = "savePath"; - private static final String MAIN_PID = "mainPID"; - - private final static int MAX_FILENAME_LENGTH = 50; - private final static String DEFAULT_TIME_FORMAT = "_yyyy-MM-dd-HH-mm-ss";//$NON-NLS-1$ + private static final int MAX_FILENAME_LENGTH = 50; + private static final String DEFAULT_TIME_FORMAT = "_yyyy-MM-dd-HH-mm-ss";//$NON-NLS-1$ - private long logCount_Total = 0; - private long logCount_System = 0; - private long logCount_Profile = 0; + private static final String VERSION = "Version"; + private static final String PROTOCOL_VERSION = "ProtocolVersion"; + private static final String DEVICE = "Device"; + private static final String PACKAGE_ID = "PKGID"; + private static final String APP_NAME = "AppName"; + private static final String CREATE_TIME = "CreateTime"; + private static final String TOTAL_STOP_TIME = "TotalStopTime"; + private static final String REPLAY_STOP_TIME = "ReplayStopTime"; + private static final String PROF_START_TIME = "ProfStartTime"; + private static final String SAVE_PATH = "SavePath"; - private byte[] replayEvent = null; + private Map projectProperties = new HashMap(); - private HashMap projectInfoMap = new HashMap(); + private Map processInfoPackageMap = new HashMap(); - private HashMap processInfoPackageMap = new HashMap(); + // for performance + private DATime profileStartTimeCache = null; public ProcessInfoPackage getProcessInfoPackage(int pid) { return processInfoPackageMap.get(pid); } public void setVersion(String ver) { - projectInfoMap.put(VERSION, ver); + projectProperties.put(VERSION, ver); } public String getVersion() { - return projectInfoMap.get(VERSION); + return projectProperties.get(VERSION); } public void setDevice(String dev) { - projectInfoMap.put(DEVICE, dev); + projectProperties.put(DEVICE, dev); } public String getDevice() { - return projectInfoMap.get(DEVICE); + return projectProperties.get(DEVICE); } public void setPkgId(String pkgId) { - projectInfoMap.put(PACKAGE_ID, pkgId); + projectProperties.put(PACKAGE_ID, pkgId); } public String getPkgId() { - return projectInfoMap.get(PACKAGE_ID); + return projectProperties.get(PACKAGE_ID); } public void setAppName(String name) { - projectInfoMap.put(APP_NAME, name); + projectProperties.put(APP_NAME, name); } public String getAppName() { - return projectInfoMap.get(APP_NAME); + return projectProperties.get(APP_NAME); } public void setCreateTime(String createTime) { - projectInfoMap.put(CREATE_TIME, createTime); + projectProperties.put(CREATE_TIME, createTime); } public String getCreateTime() { - return projectInfoMap.get(CREATE_TIME); + return projectProperties.get(CREATE_TIME); } - public void setLastTime(long lastTime) { - projectInfoMap.put(LAST_TIME, Long.toString(lastTime)); + public void setTotalStopTime(long lastTime) { + projectProperties.put(TOTAL_STOP_TIME, Long.toString(lastTime)); } - public long getLastTime() { - String last_time = projectInfoMap.get(LAST_TIME); + public long getTotalStopTime() { + String last_time = projectProperties.get(TOTAL_STOP_TIME); if (last_time != null && !last_time.isEmpty()) return Long.parseLong(last_time); else return 0; } - public void setStopTime(long time) { - projectInfoMap.put(STOP_TIME, Long.toString(time)); + public void setReplayStopTime(long time) { + projectProperties.put(REPLAY_STOP_TIME, Long.toString(time)); } - public long getStopTime() { - String stoptime = projectInfoMap.get(STOP_TIME); + public long getReplayStopTime() { + String stoptime = projectProperties.get(REPLAY_STOP_TIME); if (stoptime != null && !stoptime.isEmpty()) return Long.parseLong(stoptime); else @@ -162,69 +154,35 @@ public class Project { } public void setProfileStartTime(DATime time) { - projectInfoMap.put(PROF_START_TIME, time.toString()); + projectProperties.put(PROF_START_TIME, time.toString()); System.out.printf("profile starttime : %d\n", time.getSec()); } public DATime getProfileStartTime() { - String profstarttime = projectInfoMap.get(PROF_START_TIME); - if (profstarttime != null && !profstarttime.isEmpty()) - return new DATime(profstarttime); - else - return new DATime(); - } - - // TODO (greatim) : last number means log count ? i don't think so - public void setLastLogNum(long last, int type) { - if (type == DataChannelConstants.MSG_DATA_SYSTEM) { - if (last > logCount_System) { - logCount_System = last; - } - } else if (type == DataChannelConstants.MSG_DATA_SAMPLE) { - if (last > logCount_Profile) { - logCount_Profile = last; - } - } else { - if (last > logCount_Total) { - logCount_Total = last; + if (profileStartTimeCache == null) { + // this synchronized block is not perfect but it is enough to cache. + synchronized (this) { + String profstarttime = projectProperties.get(PROF_START_TIME); + if (profstarttime != null && !profstarttime.isEmpty()) + profileStartTimeCache = new DATime(profstarttime); + else + profileStartTimeCache = new DATime(); } } - } - - public long getLogCount() { - return logCount_Total; - } - public long getDeviceLogCount() { - return logCount_System; - } - - public long getProfileLogCount() { - return logCount_Profile; + return profileStartTimeCache; } public void setSavePath(String path) { - projectInfoMap.put(SAVE_PATH, path); + projectProperties.put(SAVE_PATH, path); } public String getSavePath() { - return projectInfoMap.get(SAVE_PATH); - } - - public void setMainPid(int mainPid) { - projectInfoMap.put(MAIN_PID, Integer.toString(mainPid)); - } - - public int getMainPid() { - String mainpid = projectInfoMap.get(MAIN_PID); - if (mainpid != null && !mainpid.isEmpty()) - return Integer.parseInt(mainpid); - else - return -1; + return projectProperties.get(SAVE_PATH); } public double getProtocolVersion() { - String protocolVer = projectInfoMap.get(PROTOCOL_VERSION); + String protocolVer = projectProperties.get(PROTOCOL_VERSION); if (protocolVer != null && !protocolVer.isEmpty()) return Double.parseDouble(protocolVer); else @@ -232,7 +190,8 @@ public class Project { } public void setProtocolVersion(double protocolVersion) { - projectInfoMap.put(PROTOCOL_VERSION, Double.toString(protocolVersion)); + projectProperties.put(PROTOCOL_VERSION, + Double.toString(protocolVersion)); } public void setCoreCount(int count) { @@ -255,17 +214,6 @@ public class Project { .getSystemMemorySize(); } - // for save - public String getLastLogNumbers() { - StringBuffer buffer = new StringBuffer(); - buffer.append(getLogCount()); - buffer.append("|"); - buffer.append(getDeviceLogCount()); - buffer.append("|"); - buffer.append(getProfileLogCount()); - return buffer.toString(); - } - public void init() { if (null == GlobalInformation.getCurrentApplication()) { String comboText = ToolbarArea.getInstance().getAppCombo() @@ -332,13 +280,6 @@ public class Project { DataManagerRegistry.createDBTables(); SqlManager.getInstance().createTables(); SqlManager.getInstance().createProbeTable(); - - // create replay data - if (ReplayTraceHandler.isReplay) { - replayEvent = ReplayTraceHandler.getReplayEvent(); - } else { - replayEvent = ByteUtil.getByte(ReplayTraceHandler.REPLAY_OFF); - } } public boolean isValid() { @@ -361,20 +302,7 @@ public class Project { return processInfo.getHighestAddress(); } - /* - * public void setTotalProfilingSampleCount(int count) { - * FunctionUsageProfiler.getInstance().getProfileDataMaker() - * .setTotalSampleCount(count); } - * - * public int getTotalProfilingSampleCount() { return - * FunctionUsageProfiler.getInstance().getProfileDataMaker() - * .getTotalSampleCount(); } - */ - public byte[] getReplayEvent() { - return replayEvent; - } - - public HashMap getProcessInfoPackHash() { + public Map getProcessInfoPackHash() { return processInfoPackageMap; } @@ -384,23 +312,14 @@ public class Project { setPkgId(data.get(AnalyzerConstants.PROJECT_PACKAGE_ID_INDEX)); setAppName(data.get(AnalyzerConstants.PROJECT_APP_NAME_INDEX)); setCreateTime(data.get(AnalyzerConstants.PROJECT_CREATE_TIME_INDEX)); - setLastTime(Long.parseLong(data + setTotalStopTime(Long.parseLong(data .get(AnalyzerConstants.PROJECT_LAST_TIME_INDEX))); - setStopTime(Long.parseLong(data + setReplayStopTime(Long.parseLong(data .get(AnalyzerConstants.PROJECT_STOP_TIME_INDEX))); DATime profilingStartTime = new DATime(); profilingStartTime.fromString(data .get(AnalyzerConstants.PROJECT_PROF_START_TIME_INDEX)); setProfileStartTime(profilingStartTime); - - logCount_Total = Long.parseLong(data - .get(AnalyzerConstants.PROJECT_LOG_COUNT_INDEX)); - logCount_System = Long.parseLong(data - .get(AnalyzerConstants.PROJECT_SYSTEM_COUNT_INDEX)); - logCount_Profile = Long.parseLong(data - .get(AnalyzerConstants.PROJECT_PROFILE_COUNT_INDEX)); - setMainPid(Integer.parseInt(data - .get(AnalyzerConstants.PROJECT_MAIN_PID_INDEX))); } public List makeSaveProjectInfo() { @@ -410,18 +329,10 @@ public class Project { projectInfoDBList.add(getPkgId()); projectInfoDBList.add(getAppName()); projectInfoDBList.add(getCreateTime()); - projectInfoDBList.add(Long.toString(getLastTime())); - projectInfoDBList.add(Long.toString(getStopTime())); + projectInfoDBList.add(Long.toString(getTotalStopTime())); + projectInfoDBList.add(Long.toString(getReplayStopTime())); projectInfoDBList.add(getProfileStartTime().toString()); - projectInfoDBList.add(Long.toString(getLogCount())); - projectInfoDBList.add(Long.toString(getDeviceLogCount())); - projectInfoDBList.add(Long.toString(getProfileLogCount())); projectInfoDBList.add(getSavePath()); - projectInfoDBList.add(Integer.toString(getMainPid())); - - projectInfoMap.put(LOG_COUNT, Long.toString(getLogCount())); - projectInfoMap.put(SYSTEM_COUNT, Long.toString(getDeviceLogCount())); - projectInfoMap.put(PROFILE_COUNT, Long.toString(getProfileLogCount())); return projectInfoDBList; } @@ -445,10 +356,10 @@ public class Project { buffWriter = new BufferedWriter(fileWriter); printWriter = new PrintWriter(buffWriter); - Iterator iter = projectInfoMap.keySet().iterator(); + Iterator iter = projectProperties.keySet().iterator(); while (iter.hasNext()) { String key = (String) iter.next(); - String val = projectInfoMap.get(key); + String val = projectProperties.get(key); printWriter.println(key + CommonConstants.EQUAL + val); printWriter.checkError(); } @@ -504,24 +415,16 @@ public class Project { setAppName(val); } else if (infoKey.equals(CREATE_TIME)) { setCreateTime(val); - } else if (infoKey.equals(LAST_TIME)) { - setLastTime(Long.parseLong(val)); - } else if (infoKey.equals(STOP_TIME)) { - setStopTime(Long.parseLong(val)); + } else if (infoKey.equals(TOTAL_STOP_TIME)) { + setTotalStopTime(Long.parseLong(val)); + } else if (infoKey.equals(REPLAY_STOP_TIME)) { + setReplayStopTime(Long.parseLong(val)); } else if (infoKey.equals(PROF_START_TIME)) { DATime profilingStartTime = new DATime(); profilingStartTime.fromString(val); setProfileStartTime(profilingStartTime); - } else if (infoKey.equals(LOG_COUNT)) { - logCount_Total = Long.parseLong(val); - } else if (infoKey.equals(SYSTEM_COUNT)) { - logCount_System = Long.parseLong(val); - } else if (infoKey.equals(PROFILE_COUNT)) { - logCount_Profile = Long.parseLong(val); } else if (infoKey.equals(SAVE_PATH)) { setSavePath(val); - } else if (infoKey.equals(MAIN_PID)) { - setMainPid(Integer.parseInt(val)); } } } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/communicator/Communicator30.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/communicator/Communicator30.java index 7eea771..6149ce3 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/communicator/Communicator30.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/communicator/Communicator30.java @@ -65,6 +65,7 @@ import org.tizen.dynamicanalyzer.communicator.BaseCommunicator; import org.tizen.dynamicanalyzer.communicator.CommunicatorUtils; import org.tizen.dynamicanalyzer.communicator.DACommunicator; import org.tizen.dynamicanalyzer.constant.CommonConstants; +import org.tizen.dynamicanalyzer.handlers.ReplayTraceHandler; import org.tizen.dynamicanalyzer.model.AddrSymbolPair; import org.tizen.dynamicanalyzer.model.DeviceInfo; import org.tizen.dynamicanalyzer.project.AppInfo; @@ -177,7 +178,15 @@ public class Communicator30 extends BaseCommunicator { DACommunicator.setRunning(true); UserSpaceInst userSpaceInst = getUserSpaceInst(); DA_LOG.performance("TEST", "Start Trace", "Set application inst"); - byte[] replayData = AnalyzerManager.getProject().getReplayEvent(); + + byte[] replayData; + // create replay data + if (ReplayTraceHandler.isReplay) { + replayData = ReplayTraceHandler.getReplayEvent(); + } else { + replayData = ByteUtil.getByte(ReplayTraceHandler.REPLAY_OFF); + } + byte[] rear = ByteUtil.getByte(userSpaceInst.toByteStream(), replayData); int length = rear.length; diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/MessageParser.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/MessageParser.java index 2c43c9a..622aaee 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/MessageParser.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/MessageParser.java @@ -38,6 +38,7 @@ import java.net.Socket; import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Timer; import java.util.TimerTask; import java.util.concurrent.locks.Lock; @@ -160,7 +161,7 @@ public class MessageParser { } private void processProcessInfo(byte[] data) { - HashMap processPkgMap = AnalyzerManager + Map processPkgMap = AnalyzerManager .getProject().getProcessInfoPackHash(); int pid = 0; int ppid = 0; @@ -200,9 +201,6 @@ public class MessageParser { pInfoPack.setPpid(ppid); pInfoPack.setTargetBinaryPath(targetBinaryPath); pInfoPack.setCmdLineName(commandLineName); - if (processPkgMap.isEmpty()) { - AnalyzerManager.getProject().setMainPid(pid); - } processPkgMap.put(pid, pInfoPack); } ProcessInfo pInfo = new ProcessInfo(); @@ -261,7 +259,7 @@ public class MessageParser { } private void memoryMapChanged(byte[] data) { - HashMap processPkgMap = AnalyzerManager + Map processPkgMap = AnalyzerManager .getProject().getProcessInfoPackHash(); /** parsing */ @@ -619,7 +617,7 @@ public class MessageParser { String name = ByteUtil.getString(data, index); index += ByteUtil.getStringLength(data, index); - HashMap processPkgMap = AnalyzerManager + Map processPkgMap = AnalyzerManager .getProject().getProcessInfoPackHash(); ProcessInfoPackage pInfoPack = processPkgMap.get(pid); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/SWAPLogParser.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/SWAPLogParser.java index 8b76b8f..a5c4d93 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/SWAPLogParser.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/swap/logparser/SWAPLogParser.java @@ -273,9 +273,6 @@ public class SWAPLogParser implements Runnable { AnalyzerManager.getFailedChecker().check(log); } - - // set last log number - AnalyzerManager.getProject().setLastLogNum(seqNum, id); } // System.out.println("update logs"); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/StopLogProcessor.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/StopLogProcessor.java index 58624c5..6daeed5 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/StopLogProcessor.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/StopLogProcessor.java @@ -111,7 +111,7 @@ public class StopLogProcessor implements Runnable { if (null == project || !project.isValid()) { DA_LOG.debug("project temp save is fail : project is not valid"); //$NON-NLS-1$ } else { - project.setLastTime(ToolbarArea.getInstance().getTime()); + project.setTotalStopTime(ToolbarArea.getInstance().getTime()); SqlManager.getInstance().insertProject(); SqlManager.getInstance().insertTargetInfo(); SqlManager.getInstance().insertProcessInfo(); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/ToolbarArea.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/ToolbarArea.java index abdebed..d3a4ff6 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/ToolbarArea.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/ToolbarArea.java @@ -170,19 +170,22 @@ public class ToolbarArea { return; } - String sDeviceName = GlobalInformation.getCurrentDeviceInfo() - .getIDevice().getSerialNumber(); + String sDeviceName = null; + DeviceInfo curDev = GlobalInformation.getCurrentDeviceInfo(); + if (curDev != null) { + sDeviceName = curDev.getIDevice().getSerialNumber(); + } String pDeviceName = p.getDevice(); String appName = p.getAppName(); String text = appCombo.getText(); - if ((null != pDeviceName && !pDeviceName.isEmpty() - && !sDeviceName.isEmpty() && pDeviceName - .equals(sDeviceName)) - && (null != appName && !appName.isEmpty() - && !text.isEmpty() && appName.equals(text))) { + if ((null != pDeviceName && !pDeviceName.isEmpty() && pDeviceName + .equals(sDeviceName)) + && (null != appName && !appName.isEmpty() && appName + .equals(text))) { replayButton.setButtonEnabled(true); - replayEditButton.setButtonEnabled(false); //disable button until complete TV SDK + replayEditButton.setButtonEnabled(false); + // disable button until complete TV SDK } else { replayButton.setButtonEnabled(false); replayEditButton.setButtonEnabled(false); @@ -313,19 +316,22 @@ public class ToolbarArea { processCombo.add(ALL_PROCESS); List processInfoPkgList = new ArrayList(); - processInfoPkgList.addAll(project.getProcessInfoPackHash().values()); + processInfoPkgList.addAll(project.getProcessInfoPackHash() + .values()); for (ProcessInfoPackage pkg : processInfoPkgList) { // String pid = Integer.toString(pkg.getPid()); String binName = CommonConstants.EMPTY; - + String cmdLineName = pkg.getCmdLineName(); - if(cmdLineName != null && !cmdLineName.isEmpty()) { + if (cmdLineName != null && !cmdLineName.isEmpty()) { binName = cmdLineName; } else { String binPath = pkg.getTargetBinaryPath(); if (null != binPath && !binPath.isEmpty()) { - int index = binPath.lastIndexOf(CommonConstants.SLASH); - binName = binPath.substring(index + 1, binPath.length()); + int index = binPath + .lastIndexOf(CommonConstants.SLASH); + binName = binPath.substring(index + 1, + binPath.length()); } } StringBuffer buffer = new StringBuffer(); @@ -503,7 +509,7 @@ public class ToolbarArea { public void stopTrace() { ShortCutManager.getInstance().setEnabled(false); - AnalyzerManager.getProject().setStopTime(getTime()); + AnalyzerManager.getProject().setReplayStopTime(getTime()); AnalyzerManager.setRunningState(false); AnalyzerManager.stopScreenshotTimer(); TraceStartStopThread.runStartStopThread(); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceDialog.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceDialog.java index 42c4c65..ce6796c 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceDialog.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceDialog.java @@ -594,7 +594,7 @@ public class OpenTraceDialog extends DAMessageBox { createTime = project.getCreateTime(); device = project.getDevice(); application = project.getAppName(); - elapsedTime = project.getLastTime(); + elapsedTime = project.getTotalStopTime(); return isSuccess; } } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceInputReader.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceInputReader.java index 463fa7e..15ac857 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceInputReader.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/toolbar/opentrace/OpenTraceInputReader.java @@ -79,22 +79,27 @@ public class OpenTraceInputReader implements Runnable { public void run() { AnalyzerManager.setLogParsingComplete(false); Project p = AnalyzerManager.getProject(); - createPackage(p.getDeviceLogCount(), - DataChannelConstants.DB_TYPE_SYSTEM); - - createPackage(p.getProfileLogCount(), - DataChannelConstants.DB_TYPE_PROFILE); - - createPackage(p.getLogCount(), DataChannelConstants.DB_TYPE_PROBE); - // TODO : context switch data - // last = p.getProfileLogCount(); - // createPackage(last, DataChannelConstants.MSG_DATA_SAMPLE); + + // deprecated +// createPackage(p.getDeviceLogCount(), +// DataChannelConstants.DB_TYPE_SYSTEM); +// +// createPackage(p.getProfileLogCount(), +// DataChannelConstants.DB_TYPE_PROFILE); +// +// createPackage(p.getLogCount(), DataChannelConstants.DB_TYPE_PROBE); +// last = p.getProfileLogCount(); +// createPackage(last, DataChannelConstants.MSG_DATA_SAMPLE); + + // TODO : implement load process DA_LOG.debug("input reader complete"); //$NON-NLS-1$ AnalyzerManager.setLogParsingComplete(true); // end } + // deprecated +/* private void createPackage(long last, int type) { List input = null; long from = 0; @@ -174,6 +179,7 @@ public class OpenTraceInputReader implements Runnable { to = from + AnalyzerConstants.DATABASE_READ_SIZE; } } + */ private void updateLog(LogPackage logPack) { if (null == logPack || logPack.isEmpty()) { -- 2.7.4