]> gerrit.simantics Code Review - simantics/3d.git/blob - org.simantics.plant3d.ontology/src/org/simantics/plant3d/ontology/Plant3D.java
Support for fillets and chamfers
[simantics/3d.git] / org.simantics.plant3d.ontology / src / org / simantics / plant3d / ontology / Plant3D.java
1 package org.simantics.plant3d.ontology;
2
3 import org.simantics.db.RequestProcessor;
4 import org.simantics.db.Resource;
5 import org.simantics.db.ReadGraph;
6 import org.simantics.db.request.Read;
7 import org.simantics.db.Session;
8 import org.simantics.db.exception.DatabaseException;
9 import org.simantics.db.service.QueryControl;
10
11 public class Plant3D {
12     
13     public final Resource Builtin;
14     public final Resource Builtin_BallValve;
15     public final Resource Builtin_BallValveGeometryProvider;
16     public final Resource Builtin_BranchSplitComponent;
17     public final Resource Builtin_Cap;
18     public final Resource Builtin_CapGeometryProvider;
19     public final Resource Builtin_CheckValve;
20     public final Resource Builtin_CheckValveGeometryProvider;
21     public final Resource Builtin_ConcentricReducer;
22     public final Resource Builtin_EccentricReducer;
23     public final Resource Builtin_Elbow;
24     public final Resource Builtin_ElbowGeometryProvider;
25     public final Resource Builtin_GeometryProvider;
26     public final Resource Builtin_HorizontalTank;
27     public final Resource Builtin_HorizontalTankGeometryProvider;
28     public final Resource Builtin_Nozzle;
29     public final Resource Builtin_NozzleGeometryProvider;
30     public final Resource Builtin_Pump;
31     public final Resource Builtin_PumpGeometryProvider;
32     public final Resource Builtin_ReducerGeometryProvider;
33     public final Resource Builtin_Straight;
34     public final Resource Builtin_StraightGeometryProvider;
35     public final Resource Builtin_VerticalTank;
36     public final Resource Builtin_VerticalTankGeometryProvider;
37     public final Resource CodeComponent;
38     public final Resource Connects;
39     public final Resource DualConnectedComponent;
40     public final Resource EndComponent;
41     public final Resource Equipment;
42     public final Resource FixedAngleTurnComponent;
43     public final Resource FixedLengthInlineComponent;
44     public final Resource HasAlternativePipeRun;
45     public final Resource HasBranch0;
46     public final Resource HasBranch1;
47     public final Resource HasBranch2;
48     public final Resource HasBranch3;
49     public final Resource HasBranch4;
50     public final Resource HasBranch5;
51     public final Resource HasBranch6;
52     public final Resource HasBranch7;
53     public final Resource HasBranch8;
54     public final Resource HasBranch9;
55     public final Resource HasNext;
56     public final Resource HasNozzle;
57     public final Resource HasNozzleDefinition;
58     public final Resource HasNozzleDefinition_Inverse;
59     public final Resource HasNozzleId;
60     public final Resource HasNozzleId_Inverse;
61     public final Resource HasNozzleRestriction;
62     public final Resource HasNozzleRestriction_Inverse;
63     public final Resource HasPipeDiameter;
64     public final Resource HasPipeDiameter_Inverse;
65     public final Resource HasPipeRun;
66     public final Resource HasPrevious;
67     public final Resource HasTurnAxis;
68     public final Resource HasTurnAxis_Inverse;
69     public final Resource HasTurnRadius;
70     public final Resource HasTurnRadius_Inverse;
71     public final Resource Images;
72     public final Resource Images_Component;
73     public final Resource Images_Elbow;
74     public final Resource Images_Factory;
75     public final Resource Images_Nozzle;
76     public final Resource Images_Straight;
77     public final Resource Images_Tank;
78     public final Resource ImportedOntologies;
79     public final Resource InlineComponent;
80     public final Resource IsReversed;
81     public final Resource IsReversed_Inverse;
82     public final Resource LibraryComponent;
83     public final Resource MultiConnectedComponent;
84     public final Resource NextInverse;
85     public final Resource Node;
86     public final Resource NonVisibleComponent;
87     public final Resource Nozzle;
88     public final Resource NozzleOf;
89     public final Resource OffsetComponent;
90     public final Resource P3DActionContext;
91     public final Resource P3DActionContext_editTypeContribution;
92     public final Resource P3DActionContext_newContribution;
93     public final Resource P3DActionContext_newTypeContribution;
94     public final Resource P3DBrowseContext;
95     public final Resource Parameter;
96     public final Resource PipeRun;
97     public final Resource PipelineComponent;
98     public final Resource PipelineComponentTag;
99     public final Resource Plant;
100     public final Resource PreviousInverse;
101     public final Resource SingleConnectedComponent;
102     public final Resource SizeChangeComponent;
103     public final Resource TurnComponent;
104     public final Resource VariableAngleTurnComponent;
105     public final Resource VariableLengthInlineComponent;
106     public final Resource childen;
107     public final Resource childen_Inverse;
108     public final Resource hasGeometry;
109     public final Resource hasParameter;
110     public final Resource hasParameterValue;
111         
112     public static class URIs {
113         public static final String Builtin = "http://www.simantics.org/Plant3D-0.1/Builtin";
114         public static final String Builtin_BallValve = "http://www.simantics.org/Plant3D-0.1/Builtin/BallValve";
115         public static final String Builtin_BallValveGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/BallValveGeometryProvider";
116         public static final String Builtin_BranchSplitComponent = "http://www.simantics.org/Plant3D-0.1/Builtin/BranchSplitComponent";
117         public static final String Builtin_Cap = "http://www.simantics.org/Plant3D-0.1/Builtin/Cap";
118         public static final String Builtin_CapGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/CapGeometryProvider";
119         public static final String Builtin_CheckValve = "http://www.simantics.org/Plant3D-0.1/Builtin/CheckValve";
120         public static final String Builtin_CheckValveGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/CheckValveGeometryProvider";
121         public static final String Builtin_ConcentricReducer = "http://www.simantics.org/Plant3D-0.1/Builtin/ConcentricReducer";
122         public static final String Builtin_EccentricReducer = "http://www.simantics.org/Plant3D-0.1/Builtin/EccentricReducer";
123         public static final String Builtin_Elbow = "http://www.simantics.org/Plant3D-0.1/Builtin/Elbow";
124         public static final String Builtin_ElbowGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/ElbowGeometryProvider";
125         public static final String Builtin_GeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/GeometryProvider";
126         public static final String Builtin_HorizontalTank = "http://www.simantics.org/Plant3D-0.1/Builtin/HorizontalTank";
127         public static final String Builtin_HorizontalTankGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/HorizontalTankGeometryProvider";
128         public static final String Builtin_Nozzle = "http://www.simantics.org/Plant3D-0.1/Builtin/Nozzle";
129         public static final String Builtin_NozzleGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/NozzleGeometryProvider";
130         public static final String Builtin_Pump = "http://www.simantics.org/Plant3D-0.1/Builtin/Pump";
131         public static final String Builtin_PumpGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/PumpGeometryProvider";
132         public static final String Builtin_ReducerGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/ReducerGeometryProvider";
133         public static final String Builtin_Straight = "http://www.simantics.org/Plant3D-0.1/Builtin/Straight";
134         public static final String Builtin_StraightGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/StraightGeometryProvider";
135         public static final String Builtin_VerticalTank = "http://www.simantics.org/Plant3D-0.1/Builtin/VerticalTank";
136         public static final String Builtin_VerticalTankGeometryProvider = "http://www.simantics.org/Plant3D-0.1/Builtin/VerticalTankGeometryProvider";
137         public static final String CodeComponent = "http://www.simantics.org/Plant3D-0.1/CodeComponent";
138         public static final String Connects = "http://www.simantics.org/Plant3D-0.1/Connects";
139         public static final String DualConnectedComponent = "http://www.simantics.org/Plant3D-0.1/DualConnectedComponent";
140         public static final String EndComponent = "http://www.simantics.org/Plant3D-0.1/EndComponent";
141         public static final String Equipment = "http://www.simantics.org/Plant3D-0.1/Equipment";
142         public static final String FixedAngleTurnComponent = "http://www.simantics.org/Plant3D-0.1/FixedAngleTurnComponent";
143         public static final String FixedLengthInlineComponent = "http://www.simantics.org/Plant3D-0.1/FixedLengthInlineComponent";
144         public static final String HasAlternativePipeRun = "http://www.simantics.org/Plant3D-0.1/HasAlternativePipeRun";
145         public static final String HasBranch0 = "http://www.simantics.org/Plant3D-0.1/HasBranch0";
146         public static final String HasBranch1 = "http://www.simantics.org/Plant3D-0.1/HasBranch1";
147         public static final String HasBranch2 = "http://www.simantics.org/Plant3D-0.1/HasBranch2";
148         public static final String HasBranch3 = "http://www.simantics.org/Plant3D-0.1/HasBranch3";
149         public static final String HasBranch4 = "http://www.simantics.org/Plant3D-0.1/HasBranch4";
150         public static final String HasBranch5 = "http://www.simantics.org/Plant3D-0.1/HasBranch5";
151         public static final String HasBranch6 = "http://www.simantics.org/Plant3D-0.1/HasBranch6";
152         public static final String HasBranch7 = "http://www.simantics.org/Plant3D-0.1/HasBranch7";
153         public static final String HasBranch8 = "http://www.simantics.org/Plant3D-0.1/HasBranch8";
154         public static final String HasBranch9 = "http://www.simantics.org/Plant3D-0.1/HasBranch9";
155         public static final String HasNext = "http://www.simantics.org/Plant3D-0.1/HasNext";
156         public static final String HasNozzle = "http://www.simantics.org/Plant3D-0.1/HasNozzle";
157         public static final String HasNozzleDefinition = "http://www.simantics.org/Plant3D-0.1/HasNozzleDefinition";
158         public static final String HasNozzleDefinition_Inverse = "http://www.simantics.org/Plant3D-0.1/HasNozzleDefinition/Inverse";
159         public static final String HasNozzleId = "http://www.simantics.org/Plant3D-0.1/HasNozzleId";
160         public static final String HasNozzleId_Inverse = "http://www.simantics.org/Plant3D-0.1/HasNozzleId/Inverse";
161         public static final String HasNozzleRestriction = "http://www.simantics.org/Plant3D-0.1/HasNozzleRestriction";
162         public static final String HasNozzleRestriction_Inverse = "http://www.simantics.org/Plant3D-0.1/HasNozzleRestriction/Inverse";
163         public static final String HasPipeDiameter = "http://www.simantics.org/Plant3D-0.1/HasPipeDiameter";
164         public static final String HasPipeDiameter_Inverse = "http://www.simantics.org/Plant3D-0.1/HasPipeDiameter/Inverse";
165         public static final String HasPipeRun = "http://www.simantics.org/Plant3D-0.1/HasPipeRun";
166         public static final String HasPrevious = "http://www.simantics.org/Plant3D-0.1/HasPrevious";
167         public static final String HasTurnAxis = "http://www.simantics.org/Plant3D-0.1/HasTurnAxis";
168         public static final String HasTurnAxis_Inverse = "http://www.simantics.org/Plant3D-0.1/HasTurnAxis/Inverse";
169         public static final String HasTurnRadius = "http://www.simantics.org/Plant3D-0.1/HasTurnRadius";
170         public static final String HasTurnRadius_Inverse = "http://www.simantics.org/Plant3D-0.1/HasTurnRadius/Inverse";
171         public static final String Images = "http://www.simantics.org/Plant3D-0.1/Images";
172         public static final String Images_Component = "http://www.simantics.org/Plant3D-0.1/Images/Component";
173         public static final String Images_Elbow = "http://www.simantics.org/Plant3D-0.1/Images/Elbow";
174         public static final String Images_Factory = "http://www.simantics.org/Plant3D-0.1/Images/Factory";
175         public static final String Images_Nozzle = "http://www.simantics.org/Plant3D-0.1/Images/Nozzle";
176         public static final String Images_Straight = "http://www.simantics.org/Plant3D-0.1/Images/Straight";
177         public static final String Images_Tank = "http://www.simantics.org/Plant3D-0.1/Images/Tank";
178         public static final String ImportedOntologies = "http://www.simantics.org/Plant3D-0.1/ImportedOntologies";
179         public static final String InlineComponent = "http://www.simantics.org/Plant3D-0.1/InlineComponent";
180         public static final String IsReversed = "http://www.simantics.org/Plant3D-0.1/IsReversed";
181         public static final String IsReversed_Inverse = "http://www.simantics.org/Plant3D-0.1/IsReversed/Inverse";
182         public static final String LibraryComponent = "http://www.simantics.org/Plant3D-0.1/LibraryComponent";
183         public static final String MultiConnectedComponent = "http://www.simantics.org/Plant3D-0.1/MultiConnectedComponent";
184         public static final String NextInverse = "http://www.simantics.org/Plant3D-0.1/NextInverse";
185         public static final String Node = "http://www.simantics.org/Plant3D-0.1/Node";
186         public static final String NonVisibleComponent = "http://www.simantics.org/Plant3D-0.1/NonVisibleComponent";
187         public static final String Nozzle = "http://www.simantics.org/Plant3D-0.1/Nozzle";
188         public static final String NozzleOf = "http://www.simantics.org/Plant3D-0.1/NozzleOf";
189         public static final String OffsetComponent = "http://www.simantics.org/Plant3D-0.1/OffsetComponent";
190         public static final String P3DActionContext = "http://www.simantics.org/Plant3D-0.1/P3DActionContext";
191         public static final String P3DActionContext_editTypeContribution = "http://www.simantics.org/Plant3D-0.1/P3DActionContext/editTypeContribution";
192         public static final String P3DActionContext_newContribution = "http://www.simantics.org/Plant3D-0.1/P3DActionContext/newContribution";
193         public static final String P3DActionContext_newTypeContribution = "http://www.simantics.org/Plant3D-0.1/P3DActionContext/newTypeContribution";
194         public static final String P3DBrowseContext = "http://www.simantics.org/Plant3D-0.1/P3DBrowseContext";
195         public static final String Parameter = "http://www.simantics.org/Plant3D-0.1/Parameter";
196         public static final String PipeRun = "http://www.simantics.org/Plant3D-0.1/PipeRun";
197         public static final String PipelineComponent = "http://www.simantics.org/Plant3D-0.1/PipelineComponent";
198         public static final String PipelineComponentTag = "http://www.simantics.org/Plant3D-0.1/PipelineComponentTag";
199         public static final String Plant = "http://www.simantics.org/Plant3D-0.1/Plant";
200         public static final String PreviousInverse = "http://www.simantics.org/Plant3D-0.1/PreviousInverse";
201         public static final String SingleConnectedComponent = "http://www.simantics.org/Plant3D-0.1/SingleConnectedComponent";
202         public static final String SizeChangeComponent = "http://www.simantics.org/Plant3D-0.1/SizeChangeComponent";
203         public static final String TurnComponent = "http://www.simantics.org/Plant3D-0.1/TurnComponent";
204         public static final String VariableAngleTurnComponent = "http://www.simantics.org/Plant3D-0.1/VariableAngleTurnComponent";
205         public static final String VariableLengthInlineComponent = "http://www.simantics.org/Plant3D-0.1/VariableLengthInlineComponent";
206         public static final String childen = "http://www.simantics.org/Plant3D-0.1/childen";
207         public static final String childen_Inverse = "http://www.simantics.org/Plant3D-0.1/childen/Inverse";
208         public static final String hasGeometry = "http://www.simantics.org/Plant3D-0.1/hasGeometry";
209         public static final String hasParameter = "http://www.simantics.org/Plant3D-0.1/hasParameter";
210         public static final String hasParameterValue = "http://www.simantics.org/Plant3D-0.1/hasParameterValue";
211     }
212     
213     public static Resource getResourceOrNull(ReadGraph graph, String uri) {
214         try {
215             return graph.getResource(uri);
216         } catch(DatabaseException e) {
217             System.err.println(e.getMessage());
218             return null;
219         }
220     }
221     
222     public Plant3D(ReadGraph graph) {
223         Builtin = getResourceOrNull(graph, URIs.Builtin);
224         Builtin_BallValve = getResourceOrNull(graph, URIs.Builtin_BallValve);
225         Builtin_BallValveGeometryProvider = getResourceOrNull(graph, URIs.Builtin_BallValveGeometryProvider);
226         Builtin_BranchSplitComponent = getResourceOrNull(graph, URIs.Builtin_BranchSplitComponent);
227         Builtin_Cap = getResourceOrNull(graph, URIs.Builtin_Cap);
228         Builtin_CapGeometryProvider = getResourceOrNull(graph, URIs.Builtin_CapGeometryProvider);
229         Builtin_CheckValve = getResourceOrNull(graph, URIs.Builtin_CheckValve);
230         Builtin_CheckValveGeometryProvider = getResourceOrNull(graph, URIs.Builtin_CheckValveGeometryProvider);
231         Builtin_ConcentricReducer = getResourceOrNull(graph, URIs.Builtin_ConcentricReducer);
232         Builtin_EccentricReducer = getResourceOrNull(graph, URIs.Builtin_EccentricReducer);
233         Builtin_Elbow = getResourceOrNull(graph, URIs.Builtin_Elbow);
234         Builtin_ElbowGeometryProvider = getResourceOrNull(graph, URIs.Builtin_ElbowGeometryProvider);
235         Builtin_GeometryProvider = getResourceOrNull(graph, URIs.Builtin_GeometryProvider);
236         Builtin_HorizontalTank = getResourceOrNull(graph, URIs.Builtin_HorizontalTank);
237         Builtin_HorizontalTankGeometryProvider = getResourceOrNull(graph, URIs.Builtin_HorizontalTankGeometryProvider);
238         Builtin_Nozzle = getResourceOrNull(graph, URIs.Builtin_Nozzle);
239         Builtin_NozzleGeometryProvider = getResourceOrNull(graph, URIs.Builtin_NozzleGeometryProvider);
240         Builtin_Pump = getResourceOrNull(graph, URIs.Builtin_Pump);
241         Builtin_PumpGeometryProvider = getResourceOrNull(graph, URIs.Builtin_PumpGeometryProvider);
242         Builtin_ReducerGeometryProvider = getResourceOrNull(graph, URIs.Builtin_ReducerGeometryProvider);
243         Builtin_Straight = getResourceOrNull(graph, URIs.Builtin_Straight);
244         Builtin_StraightGeometryProvider = getResourceOrNull(graph, URIs.Builtin_StraightGeometryProvider);
245         Builtin_VerticalTank = getResourceOrNull(graph, URIs.Builtin_VerticalTank);
246         Builtin_VerticalTankGeometryProvider = getResourceOrNull(graph, URIs.Builtin_VerticalTankGeometryProvider);
247         CodeComponent = getResourceOrNull(graph, URIs.CodeComponent);
248         Connects = getResourceOrNull(graph, URIs.Connects);
249         DualConnectedComponent = getResourceOrNull(graph, URIs.DualConnectedComponent);
250         EndComponent = getResourceOrNull(graph, URIs.EndComponent);
251         Equipment = getResourceOrNull(graph, URIs.Equipment);
252         FixedAngleTurnComponent = getResourceOrNull(graph, URIs.FixedAngleTurnComponent);
253         FixedLengthInlineComponent = getResourceOrNull(graph, URIs.FixedLengthInlineComponent);
254         HasAlternativePipeRun = getResourceOrNull(graph, URIs.HasAlternativePipeRun);
255         HasBranch0 = getResourceOrNull(graph, URIs.HasBranch0);
256         HasBranch1 = getResourceOrNull(graph, URIs.HasBranch1);
257         HasBranch2 = getResourceOrNull(graph, URIs.HasBranch2);
258         HasBranch3 = getResourceOrNull(graph, URIs.HasBranch3);
259         HasBranch4 = getResourceOrNull(graph, URIs.HasBranch4);
260         HasBranch5 = getResourceOrNull(graph, URIs.HasBranch5);
261         HasBranch6 = getResourceOrNull(graph, URIs.HasBranch6);
262         HasBranch7 = getResourceOrNull(graph, URIs.HasBranch7);
263         HasBranch8 = getResourceOrNull(graph, URIs.HasBranch8);
264         HasBranch9 = getResourceOrNull(graph, URIs.HasBranch9);
265         HasNext = getResourceOrNull(graph, URIs.HasNext);
266         HasNozzle = getResourceOrNull(graph, URIs.HasNozzle);
267         HasNozzleDefinition = getResourceOrNull(graph, URIs.HasNozzleDefinition);
268         HasNozzleDefinition_Inverse = getResourceOrNull(graph, URIs.HasNozzleDefinition_Inverse);
269         HasNozzleId = getResourceOrNull(graph, URIs.HasNozzleId);
270         HasNozzleId_Inverse = getResourceOrNull(graph, URIs.HasNozzleId_Inverse);
271         HasNozzleRestriction = getResourceOrNull(graph, URIs.HasNozzleRestriction);
272         HasNozzleRestriction_Inverse = getResourceOrNull(graph, URIs.HasNozzleRestriction_Inverse);
273         HasPipeDiameter = getResourceOrNull(graph, URIs.HasPipeDiameter);
274         HasPipeDiameter_Inverse = getResourceOrNull(graph, URIs.HasPipeDiameter_Inverse);
275         HasPipeRun = getResourceOrNull(graph, URIs.HasPipeRun);
276         HasPrevious = getResourceOrNull(graph, URIs.HasPrevious);
277         HasTurnAxis = getResourceOrNull(graph, URIs.HasTurnAxis);
278         HasTurnAxis_Inverse = getResourceOrNull(graph, URIs.HasTurnAxis_Inverse);
279         HasTurnRadius = getResourceOrNull(graph, URIs.HasTurnRadius);
280         HasTurnRadius_Inverse = getResourceOrNull(graph, URIs.HasTurnRadius_Inverse);
281         Images = getResourceOrNull(graph, URIs.Images);
282         Images_Component = getResourceOrNull(graph, URIs.Images_Component);
283         Images_Elbow = getResourceOrNull(graph, URIs.Images_Elbow);
284         Images_Factory = getResourceOrNull(graph, URIs.Images_Factory);
285         Images_Nozzle = getResourceOrNull(graph, URIs.Images_Nozzle);
286         Images_Straight = getResourceOrNull(graph, URIs.Images_Straight);
287         Images_Tank = getResourceOrNull(graph, URIs.Images_Tank);
288         ImportedOntologies = getResourceOrNull(graph, URIs.ImportedOntologies);
289         InlineComponent = getResourceOrNull(graph, URIs.InlineComponent);
290         IsReversed = getResourceOrNull(graph, URIs.IsReversed);
291         IsReversed_Inverse = getResourceOrNull(graph, URIs.IsReversed_Inverse);
292         LibraryComponent = getResourceOrNull(graph, URIs.LibraryComponent);
293         MultiConnectedComponent = getResourceOrNull(graph, URIs.MultiConnectedComponent);
294         NextInverse = getResourceOrNull(graph, URIs.NextInverse);
295         Node = getResourceOrNull(graph, URIs.Node);
296         NonVisibleComponent = getResourceOrNull(graph, URIs.NonVisibleComponent);
297         Nozzle = getResourceOrNull(graph, URIs.Nozzle);
298         NozzleOf = getResourceOrNull(graph, URIs.NozzleOf);
299         OffsetComponent = getResourceOrNull(graph, URIs.OffsetComponent);
300         P3DActionContext = getResourceOrNull(graph, URIs.P3DActionContext);
301         P3DActionContext_editTypeContribution = getResourceOrNull(graph, URIs.P3DActionContext_editTypeContribution);
302         P3DActionContext_newContribution = getResourceOrNull(graph, URIs.P3DActionContext_newContribution);
303         P3DActionContext_newTypeContribution = getResourceOrNull(graph, URIs.P3DActionContext_newTypeContribution);
304         P3DBrowseContext = getResourceOrNull(graph, URIs.P3DBrowseContext);
305         Parameter = getResourceOrNull(graph, URIs.Parameter);
306         PipeRun = getResourceOrNull(graph, URIs.PipeRun);
307         PipelineComponent = getResourceOrNull(graph, URIs.PipelineComponent);
308         PipelineComponentTag = getResourceOrNull(graph, URIs.PipelineComponentTag);
309         Plant = getResourceOrNull(graph, URIs.Plant);
310         PreviousInverse = getResourceOrNull(graph, URIs.PreviousInverse);
311         SingleConnectedComponent = getResourceOrNull(graph, URIs.SingleConnectedComponent);
312         SizeChangeComponent = getResourceOrNull(graph, URIs.SizeChangeComponent);
313         TurnComponent = getResourceOrNull(graph, URIs.TurnComponent);
314         VariableAngleTurnComponent = getResourceOrNull(graph, URIs.VariableAngleTurnComponent);
315         VariableLengthInlineComponent = getResourceOrNull(graph, URIs.VariableLengthInlineComponent);
316         childen = getResourceOrNull(graph, URIs.childen);
317         childen_Inverse = getResourceOrNull(graph, URIs.childen_Inverse);
318         hasGeometry = getResourceOrNull(graph, URIs.hasGeometry);
319         hasParameter = getResourceOrNull(graph, URIs.hasParameter);
320         hasParameterValue = getResourceOrNull(graph, URIs.hasParameterValue);
321     }
322     
323     public static Plant3D getInstance(ReadGraph graph) {
324         Session session = graph.getSession();
325         Plant3D ret = session.peekService(Plant3D.class);
326         if(ret == null) {
327             QueryControl qc = graph.getService(QueryControl.class);
328             ret = new Plant3D(qc.getIndependentGraph(graph));
329             session.registerService(Plant3D.class, ret);
330         }
331         return ret;
332     }
333     
334     public static Plant3D getInstance(RequestProcessor session) throws DatabaseException {
335         Plant3D ret = session.peekService(Plant3D.class);
336         if(ret == null) {
337             ret = session.syncRequest(new Read<Plant3D>() {
338                 public Plant3D perform(ReadGraph graph) throws DatabaseException {
339                     QueryControl qc = graph.getService(QueryControl.class);
340                     return new Plant3D(qc.getIndependentGraph(graph));
341                 }
342             });
343             session.registerService(Plant3D.class, ret);
344         }
345         return ret;
346     }
347     
348 }
349