(no commit message)
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng.ui / src / org / eclipse / linuxtools / lttng / ui / views / statistics / model / StatisticsTreeRootFactory.java
1 /*******************************************************************************
2 * Copyright (c) 2009 Ericsson
3 *
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
8 *
9 * Contributors:
10 * Yann N. Dauphin (dhaemon@gmail.com) - Implementation for stats
11 *******************************************************************************/
12 package org.eclipse.linuxtools.lttng.ui.views.statistics.model;
13
14 import java.util.HashMap;
15 import java.util.Map;
16
17 public class StatisticsTreeRootFactory {
18 // ========================================================================
19 // Data
20 // =======================================================================
21
22 private static final Map<String, StatisticsTreeNode> rootInstances = new HashMap<String, StatisticsTreeNode>();
23
24 // ========================================================================
25 // Methods
26 // =======================================================================
27
28 /**
29 * Provide a statisticsTree instance per trace
30 *
31 * @return
32 */
33 public static StatisticsTreeNode getStatTreeRoot(String traceUniqueId) {
34 if (traceUniqueId == null) {
35 return null;
36 }
37
38 if (rootInstances.containsKey(traceUniqueId)) {
39 return rootInstances.get(traceUniqueId);
40 }
41
42 StatisticsTreeNode tree = new StatisticsTreeNode(traceUniqueId);
43
44 rootInstances.put(traceUniqueId, tree);
45
46 return tree;
47 }
48
49 /**
50 * @param traceUniqueId
51 * @return
52 */
53 public static boolean containsTreeRoot(String traceUniqueId) {
54 return rootInstances.containsKey(traceUniqueId);
55 }
56
57 /**
58 * Remove previously registered statistics tree.
59 * @param traceUniqueId
60 */
61 public static void removeStatTreeRoot(String traceUniqueId) {
62 if (traceUniqueId != null && rootInstances.containsKey(traceUniqueId)) {
63 rootInstances.remove(traceUniqueId);
64 }
65 }
66
67 /**
68 * Remove all tree root instances
69 */
70 public static void removeAll() {
71 rootInstances.clear();
72 }
73 }
This page took 0.030818 seconds and 5 git commands to generate.