]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.simulation.ontology/src/org/simantics/simulation/ontology/HistoryResource.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.simulation.ontology / src / org / simantics / simulation / ontology / HistoryResource.java
1 package org.simantics.simulation.ontology;\r
2 \r
3 import org.simantics.db.RequestProcessor;\r
4 import org.simantics.db.Resource;\r
5 import org.simantics.db.ReadGraph;\r
6 import org.simantics.db.request.Read;\r
7 import org.simantics.db.Session;\r
8 import org.simantics.db.exception.DatabaseException;\r
9 import org.simantics.db.service.QueryControl;\r
10 \r
11 public class HistoryResource {\r
12     \r
13     public final Resource History;\r
14     public final Resource History_Item;\r
15     public final Resource History_Item_Bias;\r
16     public final Resource History_Item_Bias_Inverse;\r
17     public final Resource History_Item_CollectorState;\r
18     public final Resource History_Item_CollectorState_Inverse;\r
19     public final Resource History_Item_Deadband;\r
20     public final Resource History_Item_Deadband_Inverse;\r
21     public final Resource History_Item_Enabled;\r
22     public final Resource History_Item_Enabled_Inverse;\r
23     public final Resource History_Item_Format;\r
24     public final Resource History_Item_FormatId;\r
25     public final Resource History_Item_FormatId_Inverse;\r
26     public final Resource History_Item_Format_Inverse;\r
27     public final Resource History_Item_Gain;\r
28     public final Resource History_Item_Gain_Inverse;\r
29     public final Resource History_Item_GroupId;\r
30     public final Resource History_Item_GroupId_Inverse;\r
31     public final Resource History_Item_GroupItemId;\r
32     public final Resource History_Item_GroupItemId_Inverse;\r
33     public final Resource History_Item_Info;\r
34     public final Resource History_Item_Info_Inverse;\r
35     public final Resource History_Item_Interval;\r
36     public final Resource History_Item_Interval_Inverse;\r
37     public final Resource History_Item_Series;\r
38     public final Resource History_Item_Series_Inverse;\r
39     public final Resource History_Item_VariableId;\r
40     public final Resource History_Item_VariableId_Inverse;\r
41     public final Resource History_Item_size;\r
42     public final Resource History_Item_size_Inverse;\r
43     public final Resource History_archive;\r
44     public final Resource History_archive_Inverse;\r
45     public final Resource History_size;\r
46     public final Resource History_size_Inverse;\r
47         \r
48     public static class URIs {\r
49         public static final String History = "http://www.simantics.org/Simulation-1.1/History/History";\r
50         public static final String History_Item = "http://www.simantics.org/Simulation-1.1/History/History/Item";\r
51         public static final String History_Item_Bias = "http://www.simantics.org/Simulation-1.1/History/History/Item/Bias";\r
52         public static final String History_Item_Bias_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Bias/Inverse";\r
53         public static final String History_Item_CollectorState = "http://www.simantics.org/Simulation-1.1/History/History/Item/CollectorState";\r
54         public static final String History_Item_CollectorState_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/CollectorState/Inverse";\r
55         public static final String History_Item_Deadband = "http://www.simantics.org/Simulation-1.1/History/History/Item/Deadband";\r
56         public static final String History_Item_Deadband_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Deadband/Inverse";\r
57         public static final String History_Item_Enabled = "http://www.simantics.org/Simulation-1.1/History/History/Item/Enabled";\r
58         public static final String History_Item_Enabled_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Enabled/Inverse";\r
59         public static final String History_Item_Format = "http://www.simantics.org/Simulation-1.1/History/History/Item/Format";\r
60         public static final String History_Item_FormatId = "http://www.simantics.org/Simulation-1.1/History/History/Item/FormatId";\r
61         public static final String History_Item_FormatId_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/FormatId/Inverse";\r
62         public static final String History_Item_Format_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Format/Inverse";\r
63         public static final String History_Item_Gain = "http://www.simantics.org/Simulation-1.1/History/History/Item/Gain";\r
64         public static final String History_Item_Gain_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Gain/Inverse";\r
65         public static final String History_Item_GroupId = "http://www.simantics.org/Simulation-1.1/History/History/Item/GroupId";\r
66         public static final String History_Item_GroupId_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/GroupId/Inverse";\r
67         public static final String History_Item_GroupItemId = "http://www.simantics.org/Simulation-1.1/History/History/Item/GroupItemId";\r
68         public static final String History_Item_GroupItemId_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/GroupItemId/Inverse";\r
69         public static final String History_Item_Info = "http://www.simantics.org/Simulation-1.1/History/History/Item/Info";\r
70         public static final String History_Item_Info_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Info/Inverse";\r
71         public static final String History_Item_Interval = "http://www.simantics.org/Simulation-1.1/History/History/Item/Interval";\r
72         public static final String History_Item_Interval_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Interval/Inverse";\r
73         public static final String History_Item_Series = "http://www.simantics.org/Simulation-1.1/History/History/Item/Series";\r
74         public static final String History_Item_Series_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/Series/Inverse";\r
75         public static final String History_Item_VariableId = "http://www.simantics.org/Simulation-1.1/History/History/Item/VariableId";\r
76         public static final String History_Item_VariableId_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/VariableId/Inverse";\r
77         public static final String History_Item_size = "http://www.simantics.org/Simulation-1.1/History/History/Item/size";\r
78         public static final String History_Item_size_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/Item/size/Inverse";\r
79         public static final String History_archive = "http://www.simantics.org/Simulation-1.1/History/History/archive";\r
80         public static final String History_archive_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/archive/Inverse";\r
81         public static final String History_size = "http://www.simantics.org/Simulation-1.1/History/History/size";\r
82         public static final String History_size_Inverse = "http://www.simantics.org/Simulation-1.1/History/History/size/Inverse";\r
83     }\r
84     \r
85     public static Resource getResourceOrNull(ReadGraph graph, String uri) {\r
86         try {\r
87             return graph.getResource(uri);\r
88         } catch(DatabaseException e) {\r
89             System.err.println(e.getMessage());\r
90             return null;\r
91         }\r
92     }\r
93     \r
94     public HistoryResource(ReadGraph graph) {\r
95         History = getResourceOrNull(graph, URIs.History);\r
96         History_Item = getResourceOrNull(graph, URIs.History_Item);\r
97         History_Item_Bias = getResourceOrNull(graph, URIs.History_Item_Bias);\r
98         History_Item_Bias_Inverse = getResourceOrNull(graph, URIs.History_Item_Bias_Inverse);\r
99         History_Item_CollectorState = getResourceOrNull(graph, URIs.History_Item_CollectorState);\r
100         History_Item_CollectorState_Inverse = getResourceOrNull(graph, URIs.History_Item_CollectorState_Inverse);\r
101         History_Item_Deadband = getResourceOrNull(graph, URIs.History_Item_Deadband);\r
102         History_Item_Deadband_Inverse = getResourceOrNull(graph, URIs.History_Item_Deadband_Inverse);\r
103         History_Item_Enabled = getResourceOrNull(graph, URIs.History_Item_Enabled);\r
104         History_Item_Enabled_Inverse = getResourceOrNull(graph, URIs.History_Item_Enabled_Inverse);\r
105         History_Item_Format = getResourceOrNull(graph, URIs.History_Item_Format);\r
106         History_Item_FormatId = getResourceOrNull(graph, URIs.History_Item_FormatId);\r
107         History_Item_FormatId_Inverse = getResourceOrNull(graph, URIs.History_Item_FormatId_Inverse);\r
108         History_Item_Format_Inverse = getResourceOrNull(graph, URIs.History_Item_Format_Inverse);\r
109         History_Item_Gain = getResourceOrNull(graph, URIs.History_Item_Gain);\r
110         History_Item_Gain_Inverse = getResourceOrNull(graph, URIs.History_Item_Gain_Inverse);\r
111         History_Item_GroupId = getResourceOrNull(graph, URIs.History_Item_GroupId);\r
112         History_Item_GroupId_Inverse = getResourceOrNull(graph, URIs.History_Item_GroupId_Inverse);\r
113         History_Item_GroupItemId = getResourceOrNull(graph, URIs.History_Item_GroupItemId);\r
114         History_Item_GroupItemId_Inverse = getResourceOrNull(graph, URIs.History_Item_GroupItemId_Inverse);\r
115         History_Item_Info = getResourceOrNull(graph, URIs.History_Item_Info);\r
116         History_Item_Info_Inverse = getResourceOrNull(graph, URIs.History_Item_Info_Inverse);\r
117         History_Item_Interval = getResourceOrNull(graph, URIs.History_Item_Interval);\r
118         History_Item_Interval_Inverse = getResourceOrNull(graph, URIs.History_Item_Interval_Inverse);\r
119         History_Item_Series = getResourceOrNull(graph, URIs.History_Item_Series);\r
120         History_Item_Series_Inverse = getResourceOrNull(graph, URIs.History_Item_Series_Inverse);\r
121         History_Item_VariableId = getResourceOrNull(graph, URIs.History_Item_VariableId);\r
122         History_Item_VariableId_Inverse = getResourceOrNull(graph, URIs.History_Item_VariableId_Inverse);\r
123         History_Item_size = getResourceOrNull(graph, URIs.History_Item_size);\r
124         History_Item_size_Inverse = getResourceOrNull(graph, URIs.History_Item_size_Inverse);\r
125         History_archive = getResourceOrNull(graph, URIs.History_archive);\r
126         History_archive_Inverse = getResourceOrNull(graph, URIs.History_archive_Inverse);\r
127         History_size = getResourceOrNull(graph, URIs.History_size);\r
128         History_size_Inverse = getResourceOrNull(graph, URIs.History_size_Inverse);\r
129     }\r
130     \r
131     public static HistoryResource getInstance(ReadGraph graph) {\r
132         Session session = graph.getSession();\r
133         HistoryResource ret = session.peekService(HistoryResource.class);\r
134         if(ret == null) {\r
135             QueryControl qc = graph.getService(QueryControl.class);\r
136             ret = new HistoryResource(qc.getIndependentGraph(graph));\r
137             session.registerService(HistoryResource.class, ret);\r
138         }\r
139         return ret;\r
140     }\r
141     \r
142     public static HistoryResource getInstance(RequestProcessor session) throws DatabaseException {\r
143         HistoryResource ret = session.peekService(HistoryResource.class);\r
144         if(ret == null) {\r
145             ret = session.syncRequest(new Read<HistoryResource>() {\r
146                 public HistoryResource perform(ReadGraph graph) throws DatabaseException {\r
147                     QueryControl qc = graph.getService(QueryControl.class);\r
148                     return new HistoryResource(qc.getIndependentGraph(graph));\r
149                 }\r
150             });\r
151             session.registerService(HistoryResource.class, ret);\r
152         }\r
153         return ret;\r
154     }\r
155     \r
156 }\r
157 \r