]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.graph/src/org/simantics/graph/query/Paths.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.graph / src / org / simantics / graph / query / Paths.java
1 package org.simantics.graph.query;\r
2 \r
3 \r
4 \r
5 public class Paths {\r
6     public static PathRoot  Root = new PathRoot("");\r
7         public static Path SimanticsDomain = Root.child("www.simantics.org");\r
8         \r
9         public Path Layer0;\r
10         \r
11         public Path InstanceOf;\r
12         public Path Inherits;\r
13         public Path SupertypeOf;\r
14         public Path SubrelationOf;\r
15         public Path SuperrelationOf;\r
16         public Path InverseOf;\r
17         public Path HasDatatype;\r
18         public Path Asserts;\r
19         public Path Assertion;\r
20         public Path HasPredicate;\r
21         public Path HasObject;\r
22         public Path Equals;\r
23         public Path ConsistsOf;\r
24         public Path PartOf;\r
25         public Path HasNext;\r
26         public Path HasPrevious;        \r
27         public Path Template;\r
28         public Path HasTemplate;\r
29         public Path HasTemplateParameters;\r
30         public Path HasCardinality;     \r
31         public Path PropertyDefinition;\r
32         public Path HasPropertyDefinition;\r
33         public Path ConcernsRelation;\r
34         public Path HasDomain;\r
35         public Path HasRange;\r
36         public Path Tag;\r
37         public Path Entity;\r
38         public Path IsWeaklyRelatedTo;\r
39         public Path IsRelatedTo;\r
40         \r
41         public Path HasResourceClass;\r
42         public Path Deprecated;\r
43         \r
44         public Path Library;\r
45         \r
46         // Literal types\r
47         public Path Literal;\r
48         public Path Boolean;\r
49         public Path Byte;\r
50         public Path Integer;\r
51         public Path Long;\r
52         public Path Float;\r
53         public Path Double;\r
54         public Path String;     \r
55         public Path Variant;\r
56         \r
57         public Path BooleanArray;\r
58         public Path ByteArray;\r
59         public Path IntegerArray;\r
60         public Path LongArray;\r
61         public Path FloatArray;\r
62         public Path DoubleArray;\r
63         public Path StringArray;\r
64         \r
65         public Path Graph;\r
66         public Path Datatype;\r
67         public Path IntegerRange;\r
68         \r
69         public Path List;\r
70         public Path List_Entry;\r
71         public Path List_Next;\r
72         public Path List_Previous;\r
73         public Path List_Element;\r
74         \r
75         public Paths(String layer0Version) {\r
76             Layer0 = SimanticsDomain.child("Layer0-" + layer0Version);\r
77             \r
78             InstanceOf = Layer0.child("InstanceOf");\r
79             Inherits = Layer0.child("Inherits");\r
80             SupertypeOf = Layer0.child("SupertypeOf");\r
81             SubrelationOf = Layer0.child("SubrelationOf");\r
82             SuperrelationOf = Layer0.child("SuperrelationOf");\r
83             InverseOf = Layer0.child("InverseOf");\r
84             HasDatatype = Layer0.child("HasDataType");\r
85             Asserts = Layer0.child("Asserts");\r
86             Assertion = Layer0.child("Assertion");\r
87             HasPredicate = Layer0.child("HasPredicate");\r
88             HasObject = Layer0.child("HasObject");\r
89             Equals = Layer0.child("Equals");\r
90             ConsistsOf = Layer0.child("ConsistsOf");\r
91             PartOf = Layer0.child("PartOf");\r
92             HasNext = Layer0.child("HasNext");\r
93             HasPrevious = Layer0.child("HasPrevious");  \r
94             Template = Layer0.child("Template");\r
95             HasTemplate = Layer0.child("HasTemplate");\r
96             HasTemplateParameters = Layer0.child("HasTemplateParameters");\r
97             HasCardinality = Layer0.child("HasCardinality");    \r
98             PropertyDefinition = Layer0.child("PropertyDefinition");\r
99             HasPropertyDefinition = Layer0.child("HasPropertyDefinition");\r
100             ConcernsRelation = Layer0.child("ConcernsRelation");\r
101             HasDomain = Layer0.child("HasDomain");\r
102             HasRange = Layer0.child("HasRange");\r
103             Tag = Layer0.child("Tag");\r
104             Entity = Layer0.child("Entity");\r
105             IsWeaklyRelatedTo = Layer0.child("IsWeaklyRelatedTo");\r
106             IsRelatedTo = Layer0.child("IsRelatedTo");\r
107             \r
108             HasResourceClass = Layer0.child("HasResourceClass");\r
109             Deprecated = Layer0.child("Deprecated");\r
110             \r
111             Library = Layer0.child("Library");\r
112             \r
113             // Literal types\r
114             Literal = Layer0.child("Literal");\r
115             Boolean = Layer0.child("Boolean");\r
116             Byte = Layer0.child("Byte");\r
117             Integer = Layer0.child("Integer");\r
118             Long = Layer0.child("Long");\r
119             Float = Layer0.child("Float");\r
120             Double = Layer0.child("Double");\r
121             String = Layer0.child("String");    \r
122             Variant = Layer0.child("Variant");\r
123             \r
124             BooleanArray = Layer0.child("BooleanArray");\r
125             ByteArray = Layer0.child("ByteArray");\r
126             IntegerArray = Layer0.child("IntegerArray");\r
127             LongArray = Layer0.child("LongArray");\r
128             FloatArray = Layer0.child("FloatArray");\r
129             DoubleArray = Layer0.child("DoubleArray");\r
130             StringArray = Layer0.child("StringArray");\r
131             \r
132             Graph = Layer0.child("Graph");\r
133             Datatype = Layer0.child("DataType");\r
134             IntegerRange = Layer0.child("IntegerRange");\r
135             \r
136             List = Layer0.child("List");\r
137             List_Entry = List.child("Entry");\r
138             List_Next = List.child("Next");\r
139             List_Previous = List.child("Previous");\r
140             List_Element = List.child("Element");           \r
141         }\r
142         \r
143         public Path getPath(String url) {\r
144                 String[] parts = url.split("/{1,2}");\r
145                 if ( parts.length == 0 ) return null;\r
146                 Path path = parts[0].equals("http:") ? Root : new PathRoot(parts[0]);\r
147                 for (int i=1; i<parts.length; i++) {\r
148                         path = path.child( parts[i] );\r
149                 }\r
150                 return path;\r
151         }\r
152 \r
153 }\r