source: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/manager/ComponentManager.java @ 1099

Last change on this file since 1099 was 1099, checked in by pharms, 11 years ago
  • removed useless TODOs
  • Property svn:executable set to *
File size: 2.3 KB
Line 
1package de.ugoe.cs.autoquest.tasktrees.manager;
2
3import de.ugoe.cs.autoquest.tasktrees.nodeequality.NodeEqualityRuleManager;
4import de.ugoe.cs.autoquest.tasktrees.temporalrelation.TemporalRelationshipRuleManager;
5import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeBuilder;
6import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskTreeNodeFactory;
7import de.ugoe.cs.autoquest.tasktrees.treeimpl.TaskTreeBuilder;
8import de.ugoe.cs.autoquest.tasktrees.treeimpl.TaskTreeNodeFactory;
9
10/**
11 * TODO comment
12 *
13 * @version $Revision: $ $Date: 12.02.2012$
14 * @author 2012, last modified by $Author: patrick$
15 */
16public class ComponentManager {
17   
18    /** */
19    private static ComponentManager instance;
20
21    /** */
22    private TemporalRelationshipRuleManager temporalRelationshipRuleManager;
23
24    /** */
25    private NodeEqualityRuleManager nodeEqualityRuleManager;
26
27    /** */
28    private ITaskTreeBuilder taskTreeBuilder;
29
30    /** */
31    private ITaskTreeNodeFactory taskTreeNodeFactory;
32
33    /**
34     *
35     */
36    public static TemporalRelationshipRuleManager getTemporalRelationshipRuleManager() {
37        return getInstance().temporalRelationshipRuleManager;
38    }
39
40    /**
41     *
42     */
43    public static NodeEqualityRuleManager getNodeEqualityRuleManager() {
44        return getInstance().nodeEqualityRuleManager;
45    }
46
47    /**
48     *
49     */
50    public static ITaskTreeBuilder getDefaultTaskTreeBuilder() {
51        return getInstance().taskTreeBuilder;
52    }
53
54    /**
55     *
56     */
57    public static ITaskTreeNodeFactory getDefaultTaskTreeNodeFactory() {
58        return getInstance().taskTreeNodeFactory;
59    }
60
61    /**
62     *
63     */
64    public static synchronized void clearInstance() {
65        instance = null;
66    }
67
68    /**
69     *
70     */
71    private static synchronized ComponentManager getInstance() {
72        if (instance == null) {
73            instance = new ComponentManager();
74            instance.init();
75        }
76        return instance;
77    }
78
79    /**
80     *
81     */
82    private void init() {
83        nodeEqualityRuleManager = new NodeEqualityRuleManager();
84        nodeEqualityRuleManager.init();
85
86        temporalRelationshipRuleManager =
87            new TemporalRelationshipRuleManager(nodeEqualityRuleManager);
88        temporalRelationshipRuleManager.init();
89
90        taskTreeBuilder = new TaskTreeBuilder();
91        taskTreeNodeFactory = new TaskTreeNodeFactory();
92    }
93
94}
Note: See TracBrowser for help on using the repository browser.