pacer 0.9.1.1-java → 1.0.0-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.autotest +4 -1
- data/.gitignore +4 -0
- data/.rspec +1 -1
- data/Gemfile-dev +33 -0
- data/Gemfile-release +4 -0
- data/README.md +27 -9
- data/Rakefile +26 -8
- data/bin/autotest +1 -1
- data/lib/pacer/blueprints/multi_graph.rb +7 -19
- data/lib/pacer/blueprints/ruby_graph.rb +77 -52
- data/lib/pacer/blueprints/tg.rb +6 -93
- data/lib/pacer/blueprints.rb +0 -1
- data/lib/pacer/core/graph/edges_route.rb +10 -12
- data/lib/pacer/core/graph/element_route.rb +14 -21
- data/lib/pacer/core/graph/graph_index_route.rb +12 -8
- data/lib/pacer/core/graph/graph_route.rb +2 -5
- data/lib/pacer/core/graph/mixed_route.rb +3 -5
- data/lib/pacer/core/graph/vertices_route.rb +26 -27
- data/lib/pacer/core/route.rb +35 -66
- data/lib/pacer/exceptions.rb +13 -6
- data/lib/pacer/extensions/block_filter_element.rb +0 -5
- data/lib/pacer/filter/collection_filter.rb +9 -2
- data/lib/pacer/filter/empty_filter.rb +12 -3
- data/lib/pacer/filter/future_filter.rb +5 -5
- data/lib/pacer/filter/loop_filter.rb +7 -13
- data/lib/pacer/filter/object_filter.rb +10 -16
- data/lib/pacer/filter/property_filter/filters.rb +134 -93
- data/lib/pacer/filter/property_filter.rb +22 -19
- data/lib/pacer/filter/where_filter/node_visitor.rb +47 -26
- data/lib/pacer/filter/where_filter.rb +24 -3
- data/lib/pacer/function_resolver.rb +7 -2
- data/lib/pacer/graph/graph_ml.rb +39 -0
- data/lib/pacer/graph/graph_transactions_mixin.rb +107 -175
- data/lib/pacer/graph/pacer_graph.rb +438 -0
- data/lib/pacer/graph/simple_encoder.rb +20 -0
- data/lib/pacer/graph/yaml_encoder.rb +81 -0
- data/lib/pacer/graph.rb +8 -10
- data/lib/pacer/pipe/blackbox_pipeline.rb +11 -4
- data/lib/pacer/pipe/block_filter_pipe.rb +5 -22
- data/lib/pacer/pipe/cross_product_transform_pipe.rb +5 -7
- data/lib/pacer/pipe/edges_pipe.rb +22 -0
- data/lib/pacer/pipe/enumerable_pipe.rb +3 -9
- data/lib/pacer/pipe/expandable_pipe.rb +2 -14
- data/lib/pacer/pipe/id_collection_filter_pipe.rb +2 -8
- data/lib/pacer/pipe/is_empty_pipe.rb +5 -12
- data/lib/pacer/pipe/is_unique_pipe.rb +3 -13
- data/lib/pacer/pipe/label_collection_filter_pipe.rb +1 -7
- data/lib/pacer/pipe/label_prefix_pipe.rb +0 -6
- data/lib/pacer/pipe/loop_pipe.rb +27 -25
- data/lib/pacer/pipe/never_pipe.rb +1 -1
- data/lib/pacer/pipe/path_wrapping_pipe.rb +40 -0
- data/lib/pacer/pipe/process_pipe.rb +2 -20
- data/lib/pacer/pipe/property_comparison_pipe.rb +0 -6
- data/lib/pacer/pipe/ruby_pipe.rb +10 -3
- data/lib/pacer/pipe/simple_visitor_pipe.rb +12 -11
- data/lib/pacer/pipe/stream_sort_pipe.rb +1 -7
- data/lib/pacer/pipe/stream_uniq_pipe.rb +0 -6
- data/lib/pacer/pipe/type_filter_pipe.rb +1 -7
- data/lib/pacer/pipe/unary_transform_pipe.rb +6 -8
- data/lib/pacer/pipe/unwrapping_pipe.rb +13 -0
- data/lib/pacer/pipe/vertices_pipe.rb +22 -0
- data/lib/pacer/pipe/visitor_pipe.rb +3 -7
- data/lib/pacer/pipe/wrapping_pipe.rb +37 -0
- data/lib/pacer/pipes.rb +17 -12
- data/lib/pacer/route/mixin/bulk_operations.rb +8 -9
- data/lib/pacer/route/mixin/route_operations.rb +17 -11
- data/lib/pacer/route/mixins.rb +0 -1
- data/lib/pacer/route.rb +198 -121
- data/lib/pacer/side_effect/aggregate.rb +22 -2
- data/lib/pacer/side_effect/as.rb +73 -0
- data/lib/pacer/side_effect/group_count.rb +0 -3
- data/lib/pacer/side_effect/is_unique.rb +7 -6
- data/lib/pacer/side_effect.rb +1 -1
- data/lib/pacer/support/enumerable.rb +14 -12
- data/lib/pacer/support/nil_class.rb +5 -0
- data/lib/pacer/support/proc.rb +2 -2
- data/lib/pacer/support.rb +1 -1
- data/lib/pacer/transform/cap.rb +1 -1
- data/lib/pacer/transform/has_count_cap.rb +1 -1
- data/lib/pacer/transform/join.rb +20 -16
- data/lib/pacer/transform/map.rb +6 -2
- data/lib/pacer/transform/path.rb +44 -20
- data/lib/pacer/transform/sort_section.rb +58 -51
- data/lib/pacer/utils/tsort.rb +7 -2
- data/lib/pacer/utils.rb +0 -1
- data/lib/pacer/version.rb +4 -3
- data/lib/pacer/visitors/section.rb +42 -0
- data/lib/pacer/visitors/visits_section.rb +32 -0
- data/lib/pacer/visitors.rb +7 -0
- data/lib/pacer/wrappers/edge_wrapper.rb +164 -11
- data/lib/pacer/wrappers/element_wrapper.rb +133 -8
- data/lib/pacer/wrappers/index_wrapper.rb +47 -0
- data/lib/pacer/wrappers/vertex_wrapper.rb +175 -12
- data/lib/pacer/wrappers/wrapper_selector.rb +40 -0
- data/lib/pacer/wrappers/wrapping_pipe_function.rb +90 -0
- data/lib/pacer/wrappers.rb +3 -1
- data/lib/pacer-1.0.0-standalone.jar +0 -0
- data/lib/pacer.rb +13 -47
- data/pacer.gemspec +0 -8
- data/pom.xml +10 -3
- data/spec/pacer/blueprints/dex_spec.rb +12 -26
- data/spec/pacer/blueprints/neo4j_spec.rb +14 -28
- data/spec/pacer/blueprints/tg_spec.rb +6 -54
- data/spec/pacer/core/graph/edges_route_spec.rb +1 -1
- data/spec/pacer/core/graph/element_route_spec.rb +2 -2
- data/spec/pacer/core/graph/graph_route_spec.rb +2 -2
- data/spec/pacer/core/graph/vertices_route_spec.rb +10 -3
- data/spec/pacer/core/route_spec.rb +35 -58
- data/spec/pacer/filter/empty_filter_spec.rb +5 -6
- data/spec/pacer/filter/future_filter_spec.rb +8 -8
- data/spec/pacer/filter/loop_filter_spec.rb +120 -6
- data/spec/pacer/filter/object_filter_spec.rb +15 -0
- data/spec/pacer/filter/property_filter/filters_spec.rb +169 -0
- data/spec/pacer/filter/property_filter_spec.rb +15 -12
- data/spec/pacer/filter/uniq_filter_spec.rb +1 -1
- data/spec/pacer/filter/where_filter_spec.rb +55 -7
- data/spec/pacer/graph/{graph_mixin_spec.rb → pacer_graph_spec.rb} +114 -185
- data/spec/pacer/route/mixin/base_spec.rb +36 -35
- data/spec/pacer/route/mixin/route_operations_spec.rb +4 -46
- data/spec/pacer/side_effect/as_spec.rb +34 -0
- data/spec/pacer/support/enumerable_spec.rb +6 -6
- data/spec/pacer/transform/join_spec.rb +7 -5
- data/spec/pacer/transform/map_spec.rb +55 -0
- data/spec/pacer/transform/path_spec.rb +30 -15
- data/spec/pacer/transform/process_spec.rb +42 -0
- data/spec/pacer/transform/sort_section_spec.rb +82 -0
- data/spec/pacer/wrapper/edge_wrapper_spec.rb +122 -2
- data/spec/pacer/wrapper/element_wrapper_spec.rb +289 -3
- data/spec/pacer/wrapper/vertex_wrapper_spec.rb +289 -2
- data/spec/spec_helper.rb +16 -7
- data/spec/support/graph_runner.rb +80 -29
- data/tags +1165 -0
- metadata +46 -107
- data/.rvmrc +0 -0
- data/lib/pacer/blueprints/extensions.rb +0 -77
- data/lib/pacer/graph/edge_mixin.rb +0 -127
- data/lib/pacer/graph/element_mixin.rb +0 -202
- data/lib/pacer/graph/graph_indices_mixin.rb +0 -93
- data/lib/pacer/graph/graph_mixin.rb +0 -361
- data/lib/pacer/graph/index_mixin.rb +0 -30
- data/lib/pacer/graph/vertex_mixin.rb +0 -119
- data/lib/pacer/pipe/map_pipe.rb +0 -36
- data/lib/pacer/pipe/variable_store_iterator_wrapper.rb +0 -26
- data/lib/pacer/route/mixin/variable_route_module.rb +0 -26
- data/lib/pacer/side_effect/section.rb +0 -25
- data/lib/pacer/support/iterator_mixins.rb +0 -110
- data/lib/pacer/wrappers/new_element.rb +0 -106
- data/lib/pacer-0.9.1.1-standalone.jar +0 -0
- data/spec/pacer/graph/edge_mixin_spec.rb +0 -116
- data/spec/pacer/graph/element_mixin_spec.rb +0 -297
- data/spec/pacer/graph/index_mixin_spec.rb +0 -0
- data/spec/pacer/graph/vertex_mixin_spec.rb +0 -192
metadata
CHANGED
@@ -1,104 +1,32 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pacer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
4
5
|
prerelease:
|
5
|
-
version: 0.9.1.1
|
6
6
|
platform: java
|
7
7
|
authors:
|
8
8
|
- Darrick Wiebe
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-09-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fastercsv
|
16
|
-
version_requirements:
|
16
|
+
version_requirements: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
18
|
- - ! '>='
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: 1.5.4
|
21
21
|
none: false
|
22
|
-
requirement:
|
23
|
-
prerelease: false
|
24
|
-
type: :runtime
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: rspec
|
27
|
-
version_requirements: &2074 !ruby/object:Gem::Requirement
|
28
|
-
requirements:
|
29
|
-
- - ~>
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
version: 2.7.0
|
32
|
-
none: false
|
33
|
-
requirement: *2074
|
34
|
-
prerelease: false
|
35
|
-
type: :development
|
36
|
-
- !ruby/object:Gem::Dependency
|
37
|
-
name: rr
|
38
|
-
version_requirements: &2092 !ruby/object:Gem::Requirement
|
39
|
-
requirements:
|
40
|
-
- - ~>
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
version: '1.0'
|
43
|
-
none: false
|
44
|
-
requirement: *2092
|
45
|
-
prerelease: false
|
46
|
-
type: :development
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: rcov
|
49
|
-
version_requirements: &2108 !ruby/object:Gem::Requirement
|
50
|
-
requirements:
|
51
|
-
- - ! '>='
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '0'
|
54
|
-
none: false
|
55
|
-
requirement: *2108
|
56
|
-
prerelease: false
|
57
|
-
type: :development
|
58
|
-
- !ruby/object:Gem::Dependency
|
59
|
-
name: yard
|
60
|
-
version_requirements: &2124 !ruby/object:Gem::Requirement
|
22
|
+
requirement: !ruby/object:Gem::Requirement
|
61
23
|
requirements:
|
62
24
|
- - ! '>='
|
63
25
|
- !ruby/object:Gem::Version
|
64
|
-
version:
|
65
|
-
none: false
|
66
|
-
requirement: *2124
|
67
|
-
prerelease: false
|
68
|
-
type: :development
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rake
|
71
|
-
version_requirements: &2140 !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ! '>='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
none: false
|
77
|
-
requirement: *2140
|
78
|
-
prerelease: false
|
79
|
-
type: :development
|
80
|
-
- !ruby/object:Gem::Dependency
|
81
|
-
name: pacer-neo4j
|
82
|
-
version_requirements: &2156 !ruby/object:Gem::Requirement
|
83
|
-
requirements:
|
84
|
-
- - =
|
85
|
-
- !ruby/object:Gem::Version
|
86
|
-
version: 1.0.7.1
|
87
|
-
none: false
|
88
|
-
requirement: *2156
|
89
|
-
prerelease: false
|
90
|
-
type: :development
|
91
|
-
- !ruby/object:Gem::Dependency
|
92
|
-
name: autotest
|
93
|
-
version_requirements: &2172 !ruby/object:Gem::Requirement
|
94
|
-
requirements:
|
95
|
-
- - ! '>='
|
96
|
-
- !ruby/object:Gem::Version
|
97
|
-
version: '0'
|
26
|
+
version: 1.5.4
|
98
27
|
none: false
|
99
|
-
requirement: *2172
|
100
28
|
prerelease: false
|
101
|
-
type: :
|
29
|
+
type: :runtime
|
102
30
|
description: Pacer defines routes through a graph and then traverses them very quickly.
|
103
31
|
email: darrick@innatesoftware.com
|
104
32
|
executables: []
|
@@ -109,9 +37,10 @@ files:
|
|
109
37
|
- .document
|
110
38
|
- .gitignore
|
111
39
|
- .rspec
|
112
|
-
- .rvmrc
|
113
40
|
- CONTRIBUTORS
|
114
41
|
- Gemfile
|
42
|
+
- Gemfile-dev
|
43
|
+
- Gemfile-release
|
115
44
|
- LICENSE.txt
|
116
45
|
- README.md
|
117
46
|
- Rakefile
|
@@ -125,7 +54,6 @@ files:
|
|
125
54
|
- bin/yardoc
|
126
55
|
- lib/pacer.rb
|
127
56
|
- lib/pacer/blueprints.rb
|
128
|
-
- lib/pacer/blueprints/extensions.rb
|
129
57
|
- lib/pacer/blueprints/multi_graph.rb
|
130
58
|
- lib/pacer/blueprints/ruby_graph.rb
|
131
59
|
- lib/pacer/blueprints/tg.rb
|
@@ -160,17 +88,16 @@ files:
|
|
160
88
|
- lib/pacer/filter/where_filter/node_visitor.rb
|
161
89
|
- lib/pacer/function_resolver.rb
|
162
90
|
- lib/pacer/graph.rb
|
163
|
-
- lib/pacer/graph/
|
164
|
-
- lib/pacer/graph/element_mixin.rb
|
165
|
-
- lib/pacer/graph/graph_indices_mixin.rb
|
166
|
-
- lib/pacer/graph/graph_mixin.rb
|
91
|
+
- lib/pacer/graph/graph_ml.rb
|
167
92
|
- lib/pacer/graph/graph_transactions_mixin.rb
|
168
|
-
- lib/pacer/graph/
|
169
|
-
- lib/pacer/graph/
|
93
|
+
- lib/pacer/graph/pacer_graph.rb
|
94
|
+
- lib/pacer/graph/simple_encoder.rb
|
95
|
+
- lib/pacer/graph/yaml_encoder.rb
|
170
96
|
- lib/pacer/pipe/blackbox_pipeline.rb
|
171
97
|
- lib/pacer/pipe/block_filter_pipe.rb
|
172
98
|
- lib/pacer/pipe/collection_filter_pipe.rb
|
173
99
|
- lib/pacer/pipe/cross_product_transform_pipe.rb
|
100
|
+
- lib/pacer/pipe/edges_pipe.rb
|
174
101
|
- lib/pacer/pipe/enumerable_pipe.rb
|
175
102
|
- lib/pacer/pipe/expandable_pipe.rb
|
176
103
|
- lib/pacer/pipe/id_collection_filter_pipe.rb
|
@@ -179,8 +106,8 @@ files:
|
|
179
106
|
- lib/pacer/pipe/label_collection_filter_pipe.rb
|
180
107
|
- lib/pacer/pipe/label_prefix_pipe.rb
|
181
108
|
- lib/pacer/pipe/loop_pipe.rb
|
182
|
-
- lib/pacer/pipe/map_pipe.rb
|
183
109
|
- lib/pacer/pipe/never_pipe.rb
|
110
|
+
- lib/pacer/pipe/path_wrapping_pipe.rb
|
184
111
|
- lib/pacer/pipe/process_pipe.rb
|
185
112
|
- lib/pacer/pipe/property_comparison_pipe.rb
|
186
113
|
- lib/pacer/pipe/ruby_pipe.rb
|
@@ -189,28 +116,29 @@ files:
|
|
189
116
|
- lib/pacer/pipe/stream_uniq_pipe.rb
|
190
117
|
- lib/pacer/pipe/type_filter_pipe.rb
|
191
118
|
- lib/pacer/pipe/unary_transform_pipe.rb
|
192
|
-
- lib/pacer/pipe/
|
119
|
+
- lib/pacer/pipe/unwrapping_pipe.rb
|
120
|
+
- lib/pacer/pipe/vertices_pipe.rb
|
193
121
|
- lib/pacer/pipe/visitor_pipe.rb
|
122
|
+
- lib/pacer/pipe/wrapping_pipe.rb
|
194
123
|
- lib/pacer/pipes.rb
|
195
124
|
- lib/pacer/route.rb
|
196
125
|
- lib/pacer/route/mixin/bulk_operations.rb
|
197
126
|
- lib/pacer/route/mixin/route_operations.rb
|
198
|
-
- lib/pacer/route/mixin/variable_route_module.rb
|
199
127
|
- lib/pacer/route/mixins.rb
|
200
128
|
- lib/pacer/routes.rb
|
201
129
|
- lib/pacer/side_effect.rb
|
202
130
|
- lib/pacer/side_effect/aggregate.rb
|
131
|
+
- lib/pacer/side_effect/as.rb
|
203
132
|
- lib/pacer/side_effect/counted.rb
|
204
133
|
- lib/pacer/side_effect/group_count.rb
|
205
134
|
- lib/pacer/side_effect/is_unique.rb
|
206
|
-
- lib/pacer/side_effect/section.rb
|
207
135
|
- lib/pacer/side_effect/visitor.rb
|
208
136
|
- lib/pacer/support.rb
|
209
137
|
- lib/pacer/support/array_list.rb
|
210
138
|
- lib/pacer/support/enumerable.rb
|
211
139
|
- lib/pacer/support/hash.rb
|
212
|
-
- lib/pacer/support/iterator_mixins.rb
|
213
140
|
- lib/pacer/support/native_exception.rb
|
141
|
+
- lib/pacer/support/nil_class.rb
|
214
142
|
- lib/pacer/support/proc.rb
|
215
143
|
- lib/pacer/transform.rb
|
216
144
|
- lib/pacer/transform/cap.rb
|
@@ -230,11 +158,16 @@ files:
|
|
230
158
|
- lib/pacer/utils/tsort.rb
|
231
159
|
- lib/pacer/utils/y_files.rb
|
232
160
|
- lib/pacer/version.rb
|
161
|
+
- lib/pacer/visitors.rb
|
162
|
+
- lib/pacer/visitors/section.rb
|
163
|
+
- lib/pacer/visitors/visits_section.rb
|
233
164
|
- lib/pacer/wrappers.rb
|
234
165
|
- lib/pacer/wrappers/edge_wrapper.rb
|
235
166
|
- lib/pacer/wrappers/element_wrapper.rb
|
236
|
-
- lib/pacer/wrappers/
|
167
|
+
- lib/pacer/wrappers/index_wrapper.rb
|
237
168
|
- lib/pacer/wrappers/vertex_wrapper.rb
|
169
|
+
- lib/pacer/wrappers/wrapper_selector.rb
|
170
|
+
- lib/pacer/wrappers/wrapping_pipe_function.rb
|
238
171
|
- pacer.gemspec
|
239
172
|
- pom.xml
|
240
173
|
- pom/standalone.xml
|
@@ -255,15 +188,13 @@ files:
|
|
255
188
|
- spec/pacer/filter/empty_filter_spec.rb
|
256
189
|
- spec/pacer/filter/future_filter_spec.rb
|
257
190
|
- spec/pacer/filter/loop_filter_spec.rb
|
191
|
+
- spec/pacer/filter/object_filter_spec.rb
|
192
|
+
- spec/pacer/filter/property_filter/filters_spec.rb
|
258
193
|
- spec/pacer/filter/property_filter_spec.rb
|
259
194
|
- spec/pacer/filter/random_filter_spec.rb
|
260
195
|
- spec/pacer/filter/uniq_filter_spec.rb
|
261
196
|
- spec/pacer/filter/where_filter_spec.rb
|
262
|
-
- spec/pacer/graph/
|
263
|
-
- spec/pacer/graph/element_mixin_spec.rb
|
264
|
-
- spec/pacer/graph/graph_mixin_spec.rb
|
265
|
-
- spec/pacer/graph/index_mixin_spec.rb
|
266
|
-
- spec/pacer/graph/vertex_mixin_spec.rb
|
197
|
+
- spec/pacer/graph/pacer_graph_spec.rb
|
267
198
|
- spec/pacer/pipe/block_filter_pipe_spec.rb
|
268
199
|
- spec/pacer/pipe/labels_filter_pipe_spec.rb
|
269
200
|
- spec/pacer/pipe/ruby_pipe_spec.rb
|
@@ -271,10 +202,14 @@ files:
|
|
271
202
|
- spec/pacer/route/mixin/base_spec.rb
|
272
203
|
- spec/pacer/route/mixin/bulk_operations_spec.rb
|
273
204
|
- spec/pacer/route/mixin/route_operations_spec.rb
|
205
|
+
- spec/pacer/side_effect/as_spec.rb
|
274
206
|
- spec/pacer/support/array_list_spec.rb
|
275
207
|
- spec/pacer/support/enumerable_spec.rb
|
276
208
|
- spec/pacer/transform/join_spec.rb
|
209
|
+
- spec/pacer/transform/map_spec.rb
|
277
210
|
- spec/pacer/transform/path_spec.rb
|
211
|
+
- spec/pacer/transform/process_spec.rb
|
212
|
+
- spec/pacer/transform/sort_section_spec.rb
|
278
213
|
- spec/pacer/utils/tsort_spec.rb
|
279
214
|
- spec/pacer/wrapper/edge_wrapper_spec.rb
|
280
215
|
- spec/pacer/wrapper/element_wrapper_spec.rb
|
@@ -287,7 +222,8 @@ files:
|
|
287
222
|
- spec/support/use_transactions.rb
|
288
223
|
- spec/tackle/simple_mixin.rb
|
289
224
|
- spec/tackle/tinkerpop_graph_mixins.rb
|
290
|
-
-
|
225
|
+
- tags
|
226
|
+
- lib/pacer-1.0.0-standalone.jar
|
291
227
|
homepage: http://github.com/pangloss/pacer
|
292
228
|
licenses:
|
293
229
|
- MIT
|
@@ -299,17 +235,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
299
235
|
requirements:
|
300
236
|
- - ! '>='
|
301
237
|
- !ruby/object:Gem::Version
|
302
|
-
version:
|
238
|
+
version: !binary |-
|
239
|
+
MA==
|
303
240
|
none: false
|
304
241
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
305
242
|
requirements:
|
306
243
|
- - ! '>='
|
307
244
|
- !ruby/object:Gem::Version
|
308
|
-
version:
|
245
|
+
version: !binary |-
|
246
|
+
MA==
|
309
247
|
none: false
|
310
248
|
requirements: []
|
311
249
|
rubyforge_project:
|
312
|
-
rubygems_version: 1.8.
|
250
|
+
rubygems_version: 1.8.24
|
313
251
|
signing_key:
|
314
252
|
specification_version: 3
|
315
253
|
summary: A very efficient and easy to use graph traversal engine.
|
@@ -328,15 +266,13 @@ test_files:
|
|
328
266
|
- spec/pacer/filter/empty_filter_spec.rb
|
329
267
|
- spec/pacer/filter/future_filter_spec.rb
|
330
268
|
- spec/pacer/filter/loop_filter_spec.rb
|
269
|
+
- spec/pacer/filter/object_filter_spec.rb
|
270
|
+
- spec/pacer/filter/property_filter/filters_spec.rb
|
331
271
|
- spec/pacer/filter/property_filter_spec.rb
|
332
272
|
- spec/pacer/filter/random_filter_spec.rb
|
333
273
|
- spec/pacer/filter/uniq_filter_spec.rb
|
334
274
|
- spec/pacer/filter/where_filter_spec.rb
|
335
|
-
- spec/pacer/graph/
|
336
|
-
- spec/pacer/graph/element_mixin_spec.rb
|
337
|
-
- spec/pacer/graph/graph_mixin_spec.rb
|
338
|
-
- spec/pacer/graph/index_mixin_spec.rb
|
339
|
-
- spec/pacer/graph/vertex_mixin_spec.rb
|
275
|
+
- spec/pacer/graph/pacer_graph_spec.rb
|
340
276
|
- spec/pacer/pipe/block_filter_pipe_spec.rb
|
341
277
|
- spec/pacer/pipe/labels_filter_pipe_spec.rb
|
342
278
|
- spec/pacer/pipe/ruby_pipe_spec.rb
|
@@ -344,10 +280,14 @@ test_files:
|
|
344
280
|
- spec/pacer/route/mixin/base_spec.rb
|
345
281
|
- spec/pacer/route/mixin/bulk_operations_spec.rb
|
346
282
|
- spec/pacer/route/mixin/route_operations_spec.rb
|
283
|
+
- spec/pacer/side_effect/as_spec.rb
|
347
284
|
- spec/pacer/support/array_list_spec.rb
|
348
285
|
- spec/pacer/support/enumerable_spec.rb
|
349
286
|
- spec/pacer/transform/join_spec.rb
|
287
|
+
- spec/pacer/transform/map_spec.rb
|
350
288
|
- spec/pacer/transform/path_spec.rb
|
289
|
+
- spec/pacer/transform/process_spec.rb
|
290
|
+
- spec/pacer/transform/sort_section_spec.rb
|
351
291
|
- spec/pacer/utils/tsort_spec.rb
|
352
292
|
- spec/pacer/wrapper/edge_wrapper_spec.rb
|
353
293
|
- spec/pacer/wrapper/element_wrapper_spec.rb
|
@@ -361,4 +301,3 @@ test_files:
|
|
361
301
|
- spec/tackle/simple_mixin.rb
|
362
302
|
- spec/tackle/tinkerpop_graph_mixins.rb
|
363
303
|
has_rdoc:
|
364
|
-
...
|
data/.rvmrc
DELETED
File without changes
|
@@ -1,77 +0,0 @@
|
|
1
|
-
module Pacer
|
2
|
-
# NOTE these extensions modules can only be included in classes that don't include the
|
3
|
-
# default Java method aliases generated when importing Java classes into JRuby. In those
|
4
|
-
# classes the methods must be copied and pasted in order to overwrite the aliased methods.
|
5
|
-
module GraphExtensions
|
6
|
-
def self.included(target)
|
7
|
-
target.class_eval do
|
8
|
-
include GraphMixin
|
9
|
-
include GraphIndicesMixin if target.ancestors.include? com.tinkerpop.blueprints.pgm.IndexableGraph
|
10
|
-
include GraphTransactionsStub
|
11
|
-
include ManagedTransactionsMixin
|
12
|
-
include Pacer::Core::Route
|
13
|
-
include Pacer::Core::Graph::GraphRoute
|
14
|
-
include Pacer::Core::Graph::GraphIndexRoute if target.ancestors.include? com.tinkerpop.blueprints.pgm.IndexableGraph
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
# Override to return an enumeration-friendly array of vertices.
|
19
|
-
def get_vertices
|
20
|
-
getVertices.iterator.to_route(:graph => self, :element_type => :vertex)
|
21
|
-
end
|
22
|
-
|
23
|
-
# Override to return an enumeration-friendly array of edges.
|
24
|
-
def get_edges
|
25
|
-
getEdges.iterator.to_route(:graph => self, :element_type => :edge)
|
26
|
-
end
|
27
|
-
|
28
|
-
def ==(other)
|
29
|
-
other.class == self.class and other.object_id == self.object_id
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
33
|
-
|
34
|
-
module VertexExtensions
|
35
|
-
def self.included(target)
|
36
|
-
target.class_eval do
|
37
|
-
include Pacer::Core::Graph::VerticesRoute
|
38
|
-
include ElementMixin
|
39
|
-
include VertexMixin
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
module EdgeExtensions
|
45
|
-
def self.included(target)
|
46
|
-
target.class_eval do
|
47
|
-
include Pacer::Core::Graph::EdgesRoute
|
48
|
-
include ElementMixin
|
49
|
-
include EdgeMixin
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
def in_vertex(extensions = nil)
|
54
|
-
v = inVertex
|
55
|
-
v.graph = graph
|
56
|
-
if extensions.is_a? Enumerable
|
57
|
-
v.add_extensions extensions
|
58
|
-
elsif extensions
|
59
|
-
v.add_extensions [extensions]
|
60
|
-
else
|
61
|
-
v
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
def out_vertex(extensions = nil)
|
66
|
-
v = outVertex
|
67
|
-
v.graph = graph
|
68
|
-
if extensions.is_a? Enumerable
|
69
|
-
v.add_extensions extensions
|
70
|
-
elsif extensions
|
71
|
-
v.add_extensions [extensions]
|
72
|
-
else
|
73
|
-
v
|
74
|
-
end
|
75
|
-
end
|
76
|
-
end
|
77
|
-
end
|
@@ -1,127 +0,0 @@
|
|
1
|
-
module Pacer
|
2
|
-
# This module is mixed into the raw Blueprints Edge class from any
|
3
|
-
# graph implementation.
|
4
|
-
#
|
5
|
-
# Adds more convenient/rubyish methods and adds support for extensions
|
6
|
-
# to some methods where needed.
|
7
|
-
module EdgeMixin
|
8
|
-
# Add extensions to this edge.
|
9
|
-
#
|
10
|
-
# If any extension has a Edge module within it, this edge will
|
11
|
-
# be extended with the extension's Edge module.
|
12
|
-
#
|
13
|
-
# @see Core::Route#add_extension
|
14
|
-
#
|
15
|
-
# @param [[extensions]] exts the extensions to add
|
16
|
-
# @return [Pacer::Wrappers::EdgeWrapper] this edge wrapped up and including
|
17
|
-
# the extensions
|
18
|
-
def add_extensions(exts)
|
19
|
-
if exts.any?
|
20
|
-
Wrappers::EdgeWrapper.wrap(self, exts)
|
21
|
-
else
|
22
|
-
self
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
# The incoming vertex for this edge.
|
27
|
-
# @return [Pacer::VertexMixin]
|
28
|
-
def in_vertex(extensions = nil)
|
29
|
-
v = getInVertex
|
30
|
-
v.graph = graph
|
31
|
-
if extensions
|
32
|
-
v.add_extensions extensions
|
33
|
-
else
|
34
|
-
v
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
def label
|
39
|
-
getLabel
|
40
|
-
end
|
41
|
-
|
42
|
-
# The outgoing vertex for this edge.
|
43
|
-
# @return [Pacer::VertexMixin]
|
44
|
-
def out_vertex(extensions = nil)
|
45
|
-
v = getOutVertex
|
46
|
-
v.graph = graph
|
47
|
-
if extensions
|
48
|
-
v.add_extensions extensions
|
49
|
-
else
|
50
|
-
v
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
# Returns a human-readable representation of the edge using the
|
55
|
-
# standard ruby console representation of an instantiated object.
|
56
|
-
# @return [String]
|
57
|
-
def inspect
|
58
|
-
"#<E[#{element_id}]:#{display_name}>"
|
59
|
-
end
|
60
|
-
|
61
|
-
# Returns the display name of the edge.
|
62
|
-
# @return [String]
|
63
|
-
def display_name
|
64
|
-
if graph and graph.edge_name
|
65
|
-
graph.edge_name.call self
|
66
|
-
else
|
67
|
-
"#{ out_vertex.element_id }-#{ getLabel }-#{ in_vertex.element_id }"
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
# Deletes the edge from its graph.
|
72
|
-
def delete!
|
73
|
-
graph.removeEdge element
|
74
|
-
end
|
75
|
-
|
76
|
-
# Clones this edge into the target graph.
|
77
|
-
#
|
78
|
-
# This differs from the {#copy_into} in that it tries to set
|
79
|
-
# the new element_id the same as the original element_id.
|
80
|
-
#
|
81
|
-
# @param [Pacer::GraphMixin] target_graph
|
82
|
-
# @param [Hash] opts
|
83
|
-
# @option opts :create_vertices [true] Create the vertices
|
84
|
-
# associated to this edge if they don't already exist.
|
85
|
-
# @yield [e] Optional block yields the edge after it has been created.
|
86
|
-
# @return [Pacer::EdgeMixin] the new edge
|
87
|
-
#
|
88
|
-
# @raise [StandardError] If this the associated vertices don't exist and :create_vertices is not set
|
89
|
-
def clone_into(target_graph, opts = {})
|
90
|
-
e_idx = target_graph.index_name("tmp:e:#{graph.to_s}", :edge, :create => true)
|
91
|
-
e = target_graph.edge(element_id) || e_idx.get('id', element_id).first
|
92
|
-
unless e
|
93
|
-
v_idx = target_graph.index_name("tmp:v:#{graph.to_s}", :vertex, :create => true)
|
94
|
-
iv = target_graph.vertex(in_vertex.element_id) || v_idx.get('id', in_vertex.element_id).first
|
95
|
-
ov = target_graph.vertex(out_vertex.element_id) || v_idx.get('id', out_vertex.element_id).first
|
96
|
-
if opts[:create_vertices]
|
97
|
-
iv ||= in_vertex.clone_into target_graph
|
98
|
-
ov ||= out_vertex.clone_into target_graph
|
99
|
-
end
|
100
|
-
raise 'vertices not found' if not iv or not ov
|
101
|
-
e = target_graph.create_edge(element_id, iv, ov, label, properties)
|
102
|
-
e_idx.put('id', element_id, e)
|
103
|
-
yield e if block_given?
|
104
|
-
end
|
105
|
-
e
|
106
|
-
end
|
107
|
-
|
108
|
-
# Copies this edge into the target graph with the next available
|
109
|
-
# edge id.
|
110
|
-
#
|
111
|
-
# @param [Pacer::GraphMixin] target_graph
|
112
|
-
# @yield [e] Optional block yields the edge after it has been created.
|
113
|
-
# @return [Pacer::EdgeMixin] the new edge
|
114
|
-
#
|
115
|
-
# @raise [StandardError] If this the associated vertices don't exist
|
116
|
-
def copy_into(target_graph)
|
117
|
-
v_idx = target_graph.index_name("tmp:v:#{graph.to_s}", :vertex, :create => true)
|
118
|
-
iv = v_idx.get('id', in_vertex.element_id).first || target_graph.vertex(in_vertex.element_id)
|
119
|
-
ov = v_idx.get('id', out_vertex.element_id).first || target_graph.vertex(out_vertex.element_id)
|
120
|
-
|
121
|
-
raise 'vertices not found' if not iv or not ov
|
122
|
-
e = target_graph.create_edge nil, iv, ov, label, properties
|
123
|
-
yield e if block_given?
|
124
|
-
e
|
125
|
-
end
|
126
|
-
end
|
127
|
-
end
|