From 648cecee490cacc2e1177f66e13e0207a68db7c3 Mon Sep 17 00:00:00 2001 From: "hyeran74.kim" Date: Wed, 3 Sep 2014 16:00:18 +0900 Subject: [PATCH] File : display non-target process name on the chartboard Change-Id: I56d01ae02f9e0c0f8f52199646060afc74d29034 Signed-off-by: hyeran74.kim --- .../common/AnalyzerShellCommands.java | 3 ++- .../communicator/DACommunicator.java | 22 ++++++++++++++++++++++ .../dynamicanalyzer/ui/file/FileChartBoard.java | 17 +++++++++-------- 3 files changed, 33 insertions(+), 9 deletions(-) diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/common/AnalyzerShellCommands.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/common/AnalyzerShellCommands.java index 9f6a0bc..83b5e67 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/common/AnalyzerShellCommands.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/common/AnalyzerShellCommands.java @@ -38,6 +38,7 @@ public class AnalyzerShellCommands { public static final String CMD_PROCESS_LIST = "ps -ew -o pid,command"; public static final String CMD_UPLOAD_FILE_LIST = "du -b " + //$NON-NLS-1$ PathConstants.DA_REMOTE_PATH + AnalyzerConstants.READELF_BIN; + public static final String CMD_PROCESS_NAME = "ps -p %d -o comm=rcu_sched"; public static final String DACOMMAND_KILL_MANAGER = "da killmanager"; public static final String DACOMMAND_KILL_APP = "da killapp"; @@ -47,7 +48,7 @@ public class AnalyzerShellCommands { public static final String DACOMMAND_FIND_IME = "/usr/bin/pkginfo --arg-flt 10 http://tizen.org/category/ime"; public static final String DACOMMAND_CHECK_VERSION = "da getversion"; public static final String DACOMMAND_READLINK = "da readlink "; - + public static final String CMD_IS_ARM_ARCH = "uname -m"; //$NON-NLS-1$ public static final String CMD_CAT_PORT_FILE = "cat /tmp/port.da"; //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/communicator/DACommunicator.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/communicator/DACommunicator.java index b87784a..af67f9d 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/communicator/DACommunicator.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/communicator/DACommunicator.java @@ -29,6 +29,7 @@ import static org.tizen.dynamicanalyzer.common.AnalyzerConstants.DAEMONLOG_COUNT import static org.tizen.dynamicanalyzer.common.AnalyzerConstants.DAEMONLOG_PREFIX; import static org.tizen.dynamicanalyzer.common.AnalyzerConstants.DA_VERSION_OLD; import static org.tizen.dynamicanalyzer.common.AnalyzerConstants.DA_VERSION_SWAP; +import static org.tizen.sdblib.receiver.LsReceiver.CMD_LS_WITH_STYLE; import static org.tizen.sdblib.util.DeviceUtil.isOnline; import java.io.BufferedReader; @@ -384,6 +385,27 @@ public class DACommunicator { return processMap; } + + public static String getProcessNameFromTarget(int pid) { + if (null == GlobalInformation.getCurrentDeviceInfo()) { + return null; + } + String processName = null; + cmdResultMultiLines.clear(); + String command = String.format( AnalyzerShellCommands.CMD_PROCESS_NAME, pid ); + // get process name from target + CommunicatorUtils.execShellCommand(command, + new MultiLineReceiver() { + @Override + public void processNewLines(String[] appLines) { + for (int i = 0; i < appLines.length; i++) { + cmdResultMultiLines.add(appLines[i]); + } + } + }); + processName = cmdResultMultiLines.get(1); + return processName; + } private static boolean isUnittest(String pkgId) { if (null != unittestList && !unittestList.isEmpty()) { 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 c7e86c5..2897d66 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 @@ -36,6 +36,7 @@ import org.eclipse.swt.widgets.Composite; import org.tizen.dynamicanalyzer.common.AnalyzerManager; import org.tizen.dynamicanalyzer.common.DALimit; import org.tizen.dynamicanalyzer.common.GlobalInformation; +import org.tizen.dynamicanalyzer.communicator.DACommunicator; import org.tizen.dynamicanalyzer.constant.CommonConstants; import org.tizen.dynamicanalyzer.nl.FilePageLabels; import org.tizen.dynamicanalyzer.nl.TimelineChartLabels; @@ -193,16 +194,17 @@ public class FileChartBoard extends DAChartBoard { if (parent != null) { // child chart row DAChartBoardItem parentItem = parent.getItem(); StringBuffer title = new StringBuffer(); - /*if(fileChart.isTarget()) { - title.append("Target"+ CommonConstants.NEW_LINE); + int pid = fileChart.getPid(); + String processName = null; + if(fileChart.isTarget()) { + processName = AnalyzerUtil.getProcessName(fileChart.getPid()); } else { - title.append("Non-Target"+ CommonConstants.NEW_LINE); - }*/ - String processName = AnalyzerUtil.getProcessName(fileChart.getPid()); - if(processName != null) { + processName = DACommunicator.getProcessNameFromTarget(pid); + } + if(processName!=null){ title.append(processName + CommonConstants.NEW_LINE); }else{ - title.append("Unknown" + CommonConstants.NEW_LINE); + title.append("unKnown process" + CommonConstants.NEW_LINE); } title.append(fileChart.getPid() + "(PID)" + CommonConstants.NEW_LINE + fileChart.getTid() + "(TID)"); @@ -213,7 +215,6 @@ public class FileChartBoard extends DAChartBoard { // disable non-target rows if(!fileChart.isTarget()) { item.setSelectable(false); - //item.setNameCellColor(topColor, bottomColor) } initFileChart(chart, false); } else { // parent chart row -- 2.7.4