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

Last change on this file since 655 was 655, checked in by pharms, 12 years ago
  • removed old copyright file header
  • Property svn:executable set to *
File size: 2.6 KB
Line 
1package de.ugoe.cs.quest.tasktrees.manager;
2
3import de.ugoe.cs.quest.tasktrees.nodeequality.NodeEqualityRuleManager;
4import de.ugoe.cs.quest.tasktrees.temporalrelation.TemporalRelationshipRuleManager;
5import de.ugoe.cs.quest.tasktrees.treeifc.ITaskTreeBuilder;
6import de.ugoe.cs.quest.tasktrees.treeifc.ITaskTreeNodeFactory;
7import de.ugoe.cs.quest.tasktrees.treeimpl.TaskTreeBuilder;
8import de.ugoe.cs.quest.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     * TODO: comment
35     *
36     * @return
37     */
38    public static TemporalRelationshipRuleManager getTemporalRelationshipRuleManager() {
39        return getInstance().temporalRelationshipRuleManager;
40    }
41
42    /**
43     * TODO: comment
44     *
45     * @return
46     */
47    public static NodeEqualityRuleManager getNodeEqualityRuleManager() {
48        return getInstance().nodeEqualityRuleManager;
49    }
50
51    /**
52     * TODO: comment
53     *
54     * @return
55     */
56    public static ITaskTreeBuilder getDefaultTaskTreeBuilder() {
57        return getInstance().taskTreeBuilder;
58    }
59
60    /**
61     * TODO: comment
62     *
63     * @return
64     */
65    public static ITaskTreeNodeFactory getDefaultTaskTreeNodeFactory() {
66        return getInstance().taskTreeNodeFactory;
67    }
68
69    /**
70     * TODO: comment
71     *
72     * @return
73     */
74    public static synchronized void clearInstance() {
75        instance = null;
76    }
77
78    /**
79     * TODO: comment
80     *
81     * @return
82     */
83    private static synchronized ComponentManager getInstance() {
84        if (instance == null) {
85            instance = new ComponentManager();
86            instance.init();
87        }
88        return instance;
89    }
90
91    /**
92     * TODO: comment
93     *
94     */
95    private void init() {
96        nodeEqualityRuleManager = new NodeEqualityRuleManager();
97        nodeEqualityRuleManager.init();
98
99        temporalRelationshipRuleManager =
100            new TemporalRelationshipRuleManager(nodeEqualityRuleManager);
101        temporalRelationshipRuleManager.init();
102
103        taskTreeBuilder = new TaskTreeBuilder();
104        taskTreeNodeFactory = new TaskTreeNodeFactory();
105    }
106
107}
Note: See TracBrowser for help on using the repository browser.