import java.util.List;
import org.eclipse.swt.graphics.Color;
+import org.tizen.dynamicanalyzer.common.AnalyzerManager;
import org.tizen.dynamicanalyzer.nl.TimelineChartLabels;
+import org.tizen.dynamicanalyzer.project.AppInfo;
import org.tizen.dynamicanalyzer.resources.ColorResources;
import org.tizen.dynamicanalyzer.swap.channel.data.DataChannelConstants;
import org.tizen.dynamicanalyzer.swap.logparser.LogPackage;
private static final DALogger DA_LOG = DALogger.getInstance();
private static LifecycleLogParser instance = null;
-
- private static final int API_ID_INITIALIZING = 3;
- private static final int API_ID_RUNNING = 5;
- private static final int API_ID_PAUSING = 4;
- private static final int API_ID_TERMINATING = 2;
-
+
+// 2 void _AppImpl::OnTerminate(void* user_data)
+// 3 void _AppInfo::SetAppState(AppState appState)
+// 4 void _UiAppImpl::OnBackground(void)
+// 5 void _UiAppImpl::OnForeground(void)
+//
+// 83 _dalc_app_create
+// 84 _dalc_app_terminate
+// 85 _dalc_app_pause
+// 86 _dalc_app_resume
+// 87 _dalc_app_service
+
+ /*
+ * for OSP
+ */
+ private static final int API_ID_INITIALIZING_OSP = 3;
+ private static final int API_ID_RUNNING_OSP = 5;
+ private static final int API_ID_PAUSING_OSP = 4;
+ private static final int API_ID_TERMINATING_OSP = 2;
+
+ /*
+ * for EFL
+ */
+ private static final int API_ID_INITIALIZING_EFL = 83;
+ private static final int API_ID_SERVICE_EFL = 87;
+ private static final int API_ID_RESUME_EFL = 86;
+ private static final int API_ID_PAUSING_EFL = 85;
+ private static final int API_ID_TERMINATING_EFL = 84;
+
private List<LifecycleBar> lifecycleBarList = new ArrayList<LifecycleBar>();
private List<DATimeline> timelineList = new ArrayList<DATimeline>();
int apiId= logData.getApiId();
Color color;
String text;
-
- if (apiId == API_ID_INITIALIZING) {
- DA_LOG.performance("TEST", "App Lifecycle", "Initializing");
- color = ColorResources.LIFECYCLE_INITIALIZING;
- text = TimelineChartLabels.LIFECYCLE_INITIALIZING;
- } else if (apiId == API_ID_RUNNING) {
- DA_LOG.performance("TEST", "App Lifecycle", "Running");
- color = ColorResources.LIFECYCLE_RUNNING;
- text = TimelineChartLabels.LIFECYCLE_RUNNING;
- } else if (apiId ==API_ID_PAUSING) {
- DA_LOG.performance("TEST", "App Lifecycle", "Pausing");
- color = ColorResources.LIFECYCLE_PAUSING;
- text = TimelineChartLabels.LIFECYCLE_PAUSING;
- } else if (apiId == API_ID_TERMINATING) {
- DA_LOG.performance("TEST", "App Lifecycle", "Terminating");
- color = ColorResources.LIFECYCLE_TERMINATING;
- text = TimelineChartLabels.LIFECYCLE_TERMINATING;
+
+ if(AnalyzerManager.getProject() == null) {
+ return;
+ }
+ /*
+ * TODO need to check detail application type
+ */
+ // EFL
+ if (AnalyzerManager.getProject().getApplicationInfo().getAppType().
+ contains(AppInfo.APPTYPE_CAPP)) {
+ if (apiId == API_ID_INITIALIZING_EFL) {
+ DA_LOG.performance("TEST", "EFL App Lifecycle", "Initializing");
+ color = ColorResources.LIFECYCLE_INITIALIZING;
+ text = TimelineChartLabels.LIFECYCLE_INITIALIZING;
+ } else if (apiId == API_ID_SERVICE_EFL || apiId == API_ID_RESUME_EFL) {
+ DA_LOG.performance("TEST", "EFL App Lifecycle", "Running");
+ color = ColorResources.LIFECYCLE_RUNNING;
+ text = TimelineChartLabels.LIFECYCLE_RUNNING;
+ } else if (apiId == API_ID_PAUSING_EFL) {
+ DA_LOG.performance("TEST", "EFL App Lifecycle", "Pausing");
+ color = ColorResources.LIFECYCLE_PAUSING;
+ text = TimelineChartLabels.LIFECYCLE_PAUSING;
+ } else if (apiId == API_ID_TERMINATING_EFL) {
+ DA_LOG.performance("TEST", "EFL App Lifecycle", "Terminating");
+ color = ColorResources.LIFECYCLE_TERMINATING;
+ text = TimelineChartLabels.LIFECYCLE_TERMINATING;
+ } else {
+ DA_LOG.error("lifecycle log error"); //$NON-NLS-1$
+ return;
+ }
+ }
+ // OSP
+ else if (AnalyzerManager.getProject().getApplicationInfo().getAppType().
+ contains(AppInfo.APPTYPE_CPP)) {
+ if (apiId == API_ID_INITIALIZING_OSP) {
+ DA_LOG.performance("TEST", "OSP App Lifecycle", "Initializing");
+ color = ColorResources.LIFECYCLE_INITIALIZING;
+ text = TimelineChartLabels.LIFECYCLE_INITIALIZING;
+ } else if (apiId == API_ID_RUNNING_OSP) {
+ DA_LOG.performance("TEST", "OSP App Lifecycle", "Running");
+ color = ColorResources.LIFECYCLE_RUNNING;
+ text = TimelineChartLabels.LIFECYCLE_RUNNING;
+ } else if (apiId == API_ID_PAUSING_OSP) {
+ DA_LOG.performance("TEST", "OSP App Lifecycle", "Pausing");
+ color = ColorResources.LIFECYCLE_PAUSING;
+ text = TimelineChartLabels.LIFECYCLE_PAUSING;
+ } else if (apiId == API_ID_TERMINATING_OSP) {
+ DA_LOG.performance("TEST", "OSP App Lifecycle", "Terminating");
+ color = ColorResources.LIFECYCLE_TERMINATING;
+ text = TimelineChartLabels.LIFECYCLE_TERMINATING;
+ } else {
+ DA_LOG.error("lifecycle log error"); //$NON-NLS-1$
+ return;
+ }
} else {
- DA_LOG.error("lifecycle log error"); //$NON-NLS-1$
+ DA_LOG.error("It doesn't support lifecycle application type.");
return;
}
-
+
double startTime = Double.parseDouble(Long.toString(logData.getTime()))
/ TimelineConstants.MEGA_DOUBLE;