package org.tizen.dynamicanalyzer.handlers;
+import java.util.Arrays;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import org.eclipse.swt.widgets.Shell;
import org.tizen.dynamicanalyzer.common.DAResult;
import org.tizen.dynamicanalyzer.project.Project;
+import org.tizen.dynamicanalyzer.setting.SettingDataManager;
+import org.tizen.dynamicanalyzer.setting.TargetData;
+import org.tizen.dynamicanalyzer.swap.logparser.DataManagerRegistry;
public class CLIAction implements UIAction {
@Override
public void setUIElements(Project project) {
- // TODO Auto-generated method stub
+ String[] pageNames = project.getPageTabList();
+ final Set<String> pageNameSet = new HashSet<String>(
+ Arrays.asList(pageNames));
+ DataManagerRegistry.createDataManagers(pageNameSet);
}
@Override
public void setUIElementsBySetting() {
- // TODO Auto-generated method stub
+ setPageBySetting();
}
@Override
public void setPageBySetting() {
- // TODO Auto-generated method stub
-
+ TargetData target = SettingDataManager.INSTANCE.getConnectedTarget();
+ final String targetName = target.getTargetName();
+ DataManagerRegistry.createDataManagersByTarget(targetName);
}
}
}
}
+ /**
+ * Register PageDataManager objects required for given set of pages.
+ *
+ * @param pageNames set of pages names according to settings
+ */
+ public static void createDataManagers(Set<String> pageNames) {
+ for (String pageName : pageNames) {
+ createDataManagers(pageName);
+ }
+ }
+
+ /**
+ * Register PageDataManager objects required for given target based on
+ * current settings.
+ *
+ * @param targetName target name
+ */
+ public static void createDataManagersByTarget(String targetName) {
+ createDataManagers(PageInfoRegistry.getPageNamesByTarget(targetName));
+ }
+
public static Set<Entry<String, PageDataManager>> getEntrySet() {
return dataManagers.entrySet();
}