neo4j 1.0.0.beta.27-java → 1.0.0.beta.28-java
Sign up to get free protection for your applications and to get access to all the features.
- data/CONTRIBUTORS +1 -0
- data/lib/neo4j.rb +38 -72
- data/lib/neo4j/{algo.rb → algo/algo.rb} +5 -1
- data/lib/neo4j/batch/batch.rb +2 -0
- data/lib/neo4j/batch/indexer.rb +108 -0
- data/lib/neo4j/batch/inserter.rb +168 -0
- data/lib/neo4j/database.rb +13 -8
- data/lib/neo4j/{mapping/class_methods/list.rb → has_list/class_methods.rb} +2 -4
- data/lib/neo4j/has_list/has_list.rb +3 -0
- data/lib/neo4j/{mapping/has_list.rb → has_list/mapping.rb} +2 -2
- data/lib/neo4j/{mapping/class_methods/relationship.rb → has_n/class_methods.rb} +42 -12
- data/lib/neo4j/has_n/decl_relationship_dsl.rb +216 -0
- data/lib/neo4j/has_n/has_n.rb +3 -0
- data/lib/neo4j/{mapping/has_n.rb → has_n/mapping.rb} +16 -7
- data/lib/neo4j/index/index.rb +5 -0
- data/lib/neo4j/index/indexer.rb +27 -22
- data/lib/neo4j/index/lucene_query.rb +3 -1
- data/lib/neo4j/jars/core/neo4j-graph-algo-0.8-1.3.M01.jar +0 -0
- data/lib/neo4j/jars/core/neo4j-index-1.3-1.3.M01.jar +0 -0
- data/lib/neo4j/jars/core/neo4j-kernel-1.3-1.3.M01.jar +0 -0
- data/lib/neo4j/jars/core/neo4j-lucene-index-0.5-1.3.M01.jar +0 -0
- data/lib/neo4j/jars/ha/{neo4j-ha-0.6-SNAPSHOT.jar → neo4j-ha-0.6-1.3.M01.jar} +0 -0
- data/lib/neo4j/jars/ha/neo4j-management-1.3-1.3.M01.jar +0 -0
- data/lib/neo4j/jars/ha/neo4j-shell-1.3-1.3.M01.jar +0 -0
- data/lib/neo4j/migrations/class_methods.rb +102 -0
- data/lib/neo4j/migrations/extensions.rb +10 -9
- data/lib/neo4j/migrations/lazy_node_mixin.rb +50 -0
- data/lib/neo4j/migrations/migration.rb +84 -81
- data/lib/neo4j/migrations/migrations.rb +6 -100
- data/lib/neo4j/migrations/node_mixin.rb +80 -0
- data/lib/neo4j/migrations/ref_node_wrapper.rb +32 -0
- data/lib/neo4j/neo4j.rb +11 -0
- data/lib/neo4j/node.rb +55 -25
- data/lib/neo4j/{mapping/class_methods/init_node.rb → node_mixin/class_methods.rb} +3 -3
- data/lib/neo4j/{mapping → node_mixin}/node_mixin.rb +35 -18
- data/lib/neo4j/{mapping/class_methods/property.rb → property/class_methods.rb} +5 -4
- data/lib/neo4j/{property.rb → property/property.rb} +2 -0
- data/lib/neo4j/rails/finders.rb +21 -7
- data/lib/neo4j/rails/rails.rb +19 -0
- data/lib/neo4j/rails/timestamps.rb +1 -1
- data/lib/neo4j/relationship.rb +7 -0
- data/lib/neo4j/{mapping/class_methods/init_rel.rb → relationship_mixin/class_methods.rb} +4 -4
- data/lib/neo4j/{mapping → relationship_mixin}/relationship_mixin.rb +23 -5
- data/lib/neo4j/rels/rels.rb +85 -0
- data/lib/neo4j/rels/traverser.rb +102 -0
- data/lib/neo4j/{mapping/class_methods/rule.rb → rule/class_methods.rb} +11 -11
- data/lib/neo4j/rule/functions/count.rb +37 -0
- data/lib/neo4j/rule/functions/function.rb +74 -0
- data/lib/neo4j/rule/functions/functions.rb +3 -0
- data/lib/neo4j/rule/functions/sum.rb +29 -0
- data/lib/neo4j/rule/rule.rb +5 -0
- data/lib/neo4j/rule/rule_event_listener.rb +162 -0
- data/lib/neo4j/rule/rule_node.rb +182 -0
- data/lib/neo4j/to_java.rb +0 -14
- data/lib/neo4j/traversal/filter_predicate.rb +25 -0
- data/lib/neo4j/traversal/prune_evaluator.rb +14 -0
- data/lib/neo4j/traversal/rel_expander.rb +31 -0
- data/lib/neo4j/traversal/traversal.rb +90 -0
- data/lib/neo4j/traversal/traverser.rb +173 -0
- data/lib/neo4j/{type_converters.rb → type_converters/type_converters.rb} +0 -0
- data/lib/neo4j/version.rb +1 -1
- data/lib/test.rb~ +2 -0
- data/neo4j.gemspec +11 -10
- metadata +48 -37
- data/lib/neo4j/functions/count.rb +0 -33
- data/lib/neo4j/functions/function.rb +0 -72
- data/lib/neo4j/functions/sum.rb +0 -27
- data/lib/neo4j/jars/core/neo4j-graph-algo-0.8-SNAPSHOT.jar +0 -0
- data/lib/neo4j/jars/core/neo4j-index-1.3-SNAPSHOT.jar +0 -0
- data/lib/neo4j/jars/core/neo4j-kernel-1.3-SNAPSHOT.jar +0 -0
- data/lib/neo4j/jars/core/neo4j-lucene-index-0.5-SNAPSHOT.jar +0 -0
- data/lib/neo4j/jars/ha/neo4j-management-1.3-SNAPSHOT.jar +0 -0
- data/lib/neo4j/jars/ha/neo4j-shell-1.3-SNAPSHOT.jar +0 -0
- data/lib/neo4j/mapping/decl_relationship_dsl.rb +0 -214
- data/lib/neo4j/mapping/rule.rb +0 -158
- data/lib/neo4j/mapping/rule_node.rb +0 -176
- data/lib/neo4j/migrations.rb +0 -12
- data/lib/neo4j/migrations/global_migration.rb +0 -29
- data/lib/neo4j/migrations/lazy_migration_mixin.rb +0 -47
- data/lib/neo4j/migrations/migration_mixin.rb +0 -78
- data/lib/neo4j/node_mixin.rb +0 -4
- data/lib/neo4j/node_relationship.rb +0 -161
- data/lib/neo4j/node_traverser.rb +0 -224
- data/lib/neo4j/relationship_mixin.rb +0 -4
- data/lib/neo4j/relationship_traverser.rb +0 -92
data/lib/neo4j/to_java.rb
CHANGED
@@ -28,17 +28,3 @@ module Neo4j
|
|
28
28
|
end
|
29
29
|
end
|
30
30
|
end
|
31
|
-
|
32
|
-
|
33
|
-
org.neo4j.kernel.impl.core.IntArrayIterator.class_eval do
|
34
|
-
def each_wrapped
|
35
|
-
while(hasNext())
|
36
|
-
yield self.next().wrapper
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
def wrapped
|
41
|
-
Enumerator.new(self, :each_wrapped)
|
42
|
-
end
|
43
|
-
|
44
|
-
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Neo4j
|
2
|
+
module Traversal
|
3
|
+
class FilterPredicate # :nodoc:
|
4
|
+
include org.neo4j.helpers.Predicate
|
5
|
+
def initialize
|
6
|
+
@procs = []
|
7
|
+
end
|
8
|
+
|
9
|
+
def add(proc)
|
10
|
+
@procs << proc
|
11
|
+
end
|
12
|
+
|
13
|
+
def include_start_node
|
14
|
+
@include_start_node = true
|
15
|
+
end
|
16
|
+
|
17
|
+
def accept(path)
|
18
|
+
return false if @include_start_node && path.length == 0
|
19
|
+
# find the first filter which returns false
|
20
|
+
# if not found then we will accept this path
|
21
|
+
@procs.find {|p| !p.call(path)}.nil?
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Neo4j
|
2
|
+
module Traversal
|
3
|
+
class RelExpander
|
4
|
+
include org.neo4j.graphdb.RelationshipExpander
|
5
|
+
|
6
|
+
attr_accessor :reversed
|
7
|
+
|
8
|
+
def initialize(&block)
|
9
|
+
@block = block
|
10
|
+
@reverse = false
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.create_pair(&block)
|
14
|
+
normal = RelExpander.new(&block)
|
15
|
+
reversed = RelExpander.new(&block)
|
16
|
+
normal.reversed = reversed
|
17
|
+
reversed.reversed = normal
|
18
|
+
reversed.reverse!
|
19
|
+
normal
|
20
|
+
end
|
21
|
+
|
22
|
+
def expand(node)
|
23
|
+
@block.arity == 1 ? @block.call(node) : @block.call(node, @reverse)
|
24
|
+
end
|
25
|
+
|
26
|
+
def reverse!
|
27
|
+
@reverse = true
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
require 'neo4j/traversal/filter_predicate'
|
2
|
+
require 'neo4j/traversal/prune_evaluator'
|
3
|
+
require 'neo4j/traversal/rel_expander'
|
4
|
+
require 'neo4j/traversal/traverser'
|
5
|
+
|
6
|
+
module Neo4j
|
7
|
+
module Traversal
|
8
|
+
include ToJava
|
9
|
+
|
10
|
+
# A more powerful alternative of #outgoing, #incoming and #both method.
|
11
|
+
# You can use this method for example to only traverse nodes based on properties on the relationships
|
12
|
+
#
|
13
|
+
# ==== Example
|
14
|
+
#
|
15
|
+
# some_node.expand { |n| n._rels.find_all { |r| r[:age] > 5 } }.depth(:all).to_a
|
16
|
+
#
|
17
|
+
# The above traverse all relationships with a property of age > 5
|
18
|
+
#
|
19
|
+
def expand(&expander)
|
20
|
+
Traverser.new(self).expander(&expander)
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
# Returns the outgoing nodes for this node.
|
25
|
+
#
|
26
|
+
# ==== Returns
|
27
|
+
# a Neo4j::NodeTraverser which can be used to further specify which nodes should be included
|
28
|
+
# in traversal by using the <tt>depth</tt>, <tt>filter</tt> and <tt>prune</tt> methods.
|
29
|
+
#
|
30
|
+
# ==== Examples
|
31
|
+
# # Find all my friends (nodes of depth 1 of type <tt>friends</tt>)
|
32
|
+
# me.outgoing(:friends).each {|friend| puts friend[:name]}
|
33
|
+
#
|
34
|
+
# # Find all my friends and their friends (nodes of depth 1 of type <tt>friends</tt>)
|
35
|
+
# # me.outgoing(:friends).depth(2).each {|friend| puts friend[:name]}
|
36
|
+
#
|
37
|
+
# # Find all my friends and include my self in the result
|
38
|
+
# me.outgoing(:friends).depth(4).include_start_node.each {...}
|
39
|
+
#
|
40
|
+
# # Find all my friends friends friends, etc. at any depth
|
41
|
+
# me.outgoing(:friends).depth(:all).each {...}
|
42
|
+
#
|
43
|
+
# # Find all my friends friends but do not include my friends (only depth == 2)
|
44
|
+
# me.outgoing(:friends).depth(2).filter{|path| path.length == 2}
|
45
|
+
#
|
46
|
+
# # Find all my friends but 'cut off' some parts of the traversal path
|
47
|
+
# me.outgoing(:friends).depth(42).prune(|path| an_expression_using_path_returning_true_false }
|
48
|
+
#
|
49
|
+
# # Find all my friends and work colleges
|
50
|
+
# me.outgoing(:friends).outgoing(:work).each {...}
|
51
|
+
#
|
52
|
+
# Of course all the methods <tt>outgoing</tt>, <tt>incoming</tt>, <tt>both</tt>, <tt>depth</tt>, <tt>include_start_node</tt>, <tt>filter</tt>, and <tt>prune</tt> can be combined.
|
53
|
+
#
|
54
|
+
def outgoing(type)
|
55
|
+
if type
|
56
|
+
Traverser.new(self).outgoing(type)
|
57
|
+
else
|
58
|
+
raise "Not implemented getting all types of outgoing relationship. Specify a relationship type"
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
|
63
|
+
# Returns the incoming nodes of given type(s).
|
64
|
+
#
|
65
|
+
# See #outgoing
|
66
|
+
#
|
67
|
+
def incoming(type)
|
68
|
+
if type
|
69
|
+
Traverser.new(self).incoming(type)
|
70
|
+
else
|
71
|
+
raise "Not implemented getting all types of incoming relationship. Specify a relationship type"
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
# Returns both incoming and outgoing nodes of given types(s)
|
76
|
+
#
|
77
|
+
# If a type is not given then it will return all types of relationships.
|
78
|
+
#
|
79
|
+
# See #outgoing
|
80
|
+
#
|
81
|
+
def both(type=nil)
|
82
|
+
if type
|
83
|
+
Traverser.new(self).both(type)
|
84
|
+
else
|
85
|
+
Traverser.new(self) # default is both
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,173 @@
|
|
1
|
+
module Neo4j
|
2
|
+
|
3
|
+
module Traversal
|
4
|
+
|
5
|
+
class Traverser
|
6
|
+
include Enumerable
|
7
|
+
include ToJava
|
8
|
+
include WillPaginate::Finders::Base
|
9
|
+
|
10
|
+
|
11
|
+
def initialize(from, type = nil, dir=nil)
|
12
|
+
@from = from
|
13
|
+
@depth = 1
|
14
|
+
if type.nil? || dir.nil?
|
15
|
+
@td = org.neo4j.kernel.impl.traversal.TraversalDescriptionImpl.new.breadth_first()
|
16
|
+
else
|
17
|
+
@type = type_to_java(type)
|
18
|
+
@dir = dir_to_java(dir)
|
19
|
+
@td = org.neo4j.kernel.impl.traversal.TraversalDescriptionImpl.new.breadth_first().relationships(@type, @dir)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
def to_s
|
25
|
+
"NodeTraverser [from: #{@from.neo_id} depth: #{@depth} type: #{@type} dir:#{@dir}"
|
26
|
+
end
|
27
|
+
|
28
|
+
|
29
|
+
def wp_query(options, pager, args, &block) #:nodoc:
|
30
|
+
page = pager.current_page || 1
|
31
|
+
per_page = pager.per_page
|
32
|
+
to = per_page * page
|
33
|
+
from = to - per_page
|
34
|
+
i = 0
|
35
|
+
res = []
|
36
|
+
iterator.each do |node|
|
37
|
+
res << node.wrapper if i >= from
|
38
|
+
i += 1
|
39
|
+
break if i >= to
|
40
|
+
end
|
41
|
+
pager.replace res
|
42
|
+
pager.total_entries ||= count
|
43
|
+
end
|
44
|
+
|
45
|
+
def <<(other_node)
|
46
|
+
new(other_node)
|
47
|
+
self
|
48
|
+
end
|
49
|
+
|
50
|
+
# Returns an real ruby array.
|
51
|
+
def to_ary
|
52
|
+
self.to_a
|
53
|
+
end
|
54
|
+
|
55
|
+
def new(other_node)
|
56
|
+
case @dir
|
57
|
+
when org.neo4j.graphdb.Direction::OUTGOING
|
58
|
+
@from.create_relationship_to(other_node, @type)
|
59
|
+
when org.neo4j.graphdb.Direction::INCOMING
|
60
|
+
other_node._java_node.create_relationship_to(@from, @type)
|
61
|
+
else
|
62
|
+
raise "Only allowed to create outgoing or incoming relationships (not #@dir)"
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
def both(type)
|
67
|
+
@type = type_to_java(type) if type
|
68
|
+
@dir = dir_to_java(:both)
|
69
|
+
@td = @td.relationships(type_to_java(type), @dir)
|
70
|
+
self
|
71
|
+
end
|
72
|
+
|
73
|
+
def expander(&expander)
|
74
|
+
@td = @td.expand(RelExpander.create_pair(&expander))
|
75
|
+
self
|
76
|
+
end
|
77
|
+
|
78
|
+
def outgoing(type)
|
79
|
+
@type = type_to_java(type) if type
|
80
|
+
@dir = dir_to_java(:outgoing)
|
81
|
+
@td = @td.relationships(type_to_java(type), @dir)
|
82
|
+
self
|
83
|
+
end
|
84
|
+
|
85
|
+
def incoming(type)
|
86
|
+
@type = type_to_java(type) if type
|
87
|
+
@dir = dir_to_java(:incoming)
|
88
|
+
@td = @td.relationships(type_to_java(type), @dir)
|
89
|
+
self
|
90
|
+
end
|
91
|
+
|
92
|
+
def filter_method(name, &proc)
|
93
|
+
# add method name
|
94
|
+
singelton = class << self;
|
95
|
+
self;
|
96
|
+
end
|
97
|
+
singelton.send(:define_method, name) { filter &proc }
|
98
|
+
self
|
99
|
+
end
|
100
|
+
|
101
|
+
def functions_method(func, rule_node, rule_name)
|
102
|
+
singelton = class << self;
|
103
|
+
self;
|
104
|
+
end
|
105
|
+
singelton.send(:define_method, func.class.function_name) do |*args|
|
106
|
+
function_id = args.empty? ? "_classname" : args[0]
|
107
|
+
function = rule_node.find_function(rule_name, func.class.function_name, function_id)
|
108
|
+
function.value(rule_node.rule_node, rule_name)
|
109
|
+
end
|
110
|
+
self
|
111
|
+
end
|
112
|
+
|
113
|
+
def prune(&block)
|
114
|
+
@td = @td.prune(PruneEvaluator.new(block))
|
115
|
+
self
|
116
|
+
end
|
117
|
+
|
118
|
+
def filter(&block)
|
119
|
+
# we keep a reference to filter predicate since only one filter is allowed and we might want to modify it
|
120
|
+
@filter_predicate ||= FilterPredicate.new
|
121
|
+
@filter_predicate.add(block)
|
122
|
+
@td = @td.filter(@filter_predicate)
|
123
|
+
self
|
124
|
+
end
|
125
|
+
|
126
|
+
# Sets depth, if :all then it will traverse any depth
|
127
|
+
def depth(d)
|
128
|
+
@depth = d
|
129
|
+
self
|
130
|
+
end
|
131
|
+
|
132
|
+
def include_start_node
|
133
|
+
@include_start_node = true
|
134
|
+
self
|
135
|
+
end
|
136
|
+
|
137
|
+
def size
|
138
|
+
to_a.size
|
139
|
+
end
|
140
|
+
|
141
|
+
alias_method :length, :size
|
142
|
+
|
143
|
+
def [](index)
|
144
|
+
each_with_index { |node, i| break node if index == i }
|
145
|
+
end
|
146
|
+
|
147
|
+
def empty?
|
148
|
+
first == nil
|
149
|
+
end
|
150
|
+
|
151
|
+
def each
|
152
|
+
iterator.each { |i| yield i.wrapper }
|
153
|
+
end
|
154
|
+
|
155
|
+
# Same as #each but does not wrap each node in a Ruby class, yields the Java Neo4j Node instance instead.
|
156
|
+
def each_raw
|
157
|
+
iterator.each { |i| yield i }
|
158
|
+
end
|
159
|
+
|
160
|
+
def iterator
|
161
|
+
unless @include_start_node
|
162
|
+
if @filter_predicate
|
163
|
+
@filter_predicate.include_start_node
|
164
|
+
else
|
165
|
+
@td = @td.filter(org.neo4j.kernel.Traversal.return_all_but_start_node)
|
166
|
+
end
|
167
|
+
end
|
168
|
+
@td = @td.prune(org.neo4j.kernel.Traversal.pruneAfterDepth(@depth)) unless @depth == :all
|
169
|
+
@td.traverse(@from).nodes
|
170
|
+
end
|
171
|
+
end
|
172
|
+
end
|
173
|
+
end
|
File without changes
|
data/lib/neo4j/version.rb
CHANGED
data/lib/test.rb~
ADDED
data/neo4j.gemspec
CHANGED
@@ -1,15 +1,17 @@
|
|
1
1
|
lib = File.expand_path('../lib/', __FILE__)
|
2
2
|
$:.unshift lib unless $:.include?(lib)
|
3
|
-
|
3
|
+
|
4
4
|
require 'neo4j/version'
|
5
5
|
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
|
-
s.name
|
9
|
-
s.version
|
8
|
+
s.name = "neo4j"
|
9
|
+
s.version = Neo4j::VERSION
|
10
10
|
s.platform = 'java'
|
11
|
-
s.
|
12
|
-
|
11
|
+
s.required_ruby_version = ">= 1.8.7"
|
12
|
+
|
13
|
+
s.authors = "Andreas Ronge"
|
14
|
+
s.email = 'andreas.ronge@gmail.com'
|
13
15
|
s.homepage = "http://github.com/andreasronge/neo4j/tree"
|
14
16
|
s.rubyforge_project = 'neo4j'
|
15
17
|
s.summary = "A graph database for JRuby"
|
@@ -17,17 +19,16 @@ Gem::Specification.new do |s|
|
|
17
19
|
You can think of Neo4j as a high-performance graph engine with all the features of a mature and robust database.
|
18
20
|
The programmer works with an object-oriented, flexible network structure rather than with strict and static tables — yet enjoys all the benefits of a fully transactional, enterprise-strength database.
|
19
21
|
It comes included with the Apache Lucene document database.
|
20
|
-
EOF
|
22
|
+
EOF
|
21
23
|
|
22
24
|
s.require_path = 'lib'
|
23
|
-
s.files
|
24
|
-
# s.bindir = 'bin'
|
25
|
+
s.files = Dir.glob("{bin,lib,config}/**/*") + %w(README.rdoc CHANGELOG CONTRIBUTORS Gemfile neo4j.gemspec)
|
25
26
|
s.executables = 'neo4j-shell'
|
26
27
|
s.has_rdoc = true
|
27
28
|
s.extra_rdoc_files = %w( README.rdoc )
|
28
29
|
s.rdoc_options = ["--quiet", "--title", "Neo4j.rb", "--line-numbers", "--main", "README.rdoc", "--inline-source"]
|
29
|
-
|
30
|
-
s.add_dependency('orm_adapter',">= 0.0.3")
|
30
|
+
|
31
|
+
s.add_dependency('orm_adapter', ">= 0.0.3")
|
31
32
|
s.add_dependency("activemodel", ">= 3.0.0")
|
32
33
|
s.add_dependency("will_paginate", ["~>3.0.pre"])
|
33
34
|
s.add_dependency("railties", ">= 3.0.0")
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: neo4j
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease: 6
|
5
|
-
version: 1.0.0.beta.
|
5
|
+
version: 1.0.0.beta.28
|
6
6
|
platform: java
|
7
7
|
authors:
|
8
8
|
- Andreas Ronge
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-02-02 00:00:00 +01:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- bin/neo4j-shell~
|
73
73
|
- lib/neo4j.rb
|
74
74
|
- lib/Gemfile~
|
75
|
+
- lib/test.rb~
|
75
76
|
- lib/config2.yml~
|
76
77
|
- lib/perf.rb~
|
77
78
|
- lib/generators/neo4j.rb
|
@@ -80,40 +81,46 @@ files:
|
|
80
81
|
- lib/orm_adapter/adapters/neo4j.rb
|
81
82
|
- lib/neo4j/event_handler.rb
|
82
83
|
- lib/neo4j/model.rb
|
83
|
-
- lib/neo4j/migrations.rb
|
84
|
-
- lib/neo4j/type_converters.rb
|
85
|
-
- lib/neo4j/node_traverser.rb
|
86
|
-
- lib/neo4j/relationship_traverser.rb
|
87
84
|
- lib/neo4j/config.rb
|
88
|
-
- lib/neo4j/algo.rb
|
89
85
|
- lib/neo4j/transaction.rb
|
90
86
|
- lib/neo4j/neo4j.rb
|
91
87
|
- lib/neo4j/node.rb
|
92
|
-
- lib/neo4j/node_mixin.rb
|
93
|
-
- lib/neo4j/property.rb
|
94
|
-
- lib/neo4j/relationship_mixin.rb
|
95
88
|
- lib/neo4j/load.rb
|
96
89
|
- lib/neo4j/database.rb
|
97
90
|
- lib/neo4j/version.rb
|
98
|
-
- lib/neo4j/node_relationship.rb
|
99
91
|
- lib/neo4j/equal.rb
|
100
92
|
- lib/neo4j/relationship.rb
|
101
93
|
- lib/neo4j/to_java.rb
|
94
|
+
- lib/neo4j/algo/algo.rb
|
95
|
+
- lib/neo4j/has_list/mapping.rb
|
96
|
+
- lib/neo4j/has_list/class_methods.rb
|
97
|
+
- lib/neo4j/has_list/has_list.rb
|
98
|
+
- lib/neo4j/property/property.rb
|
99
|
+
- lib/neo4j/property/class_methods.rb
|
100
|
+
- lib/neo4j/traversal/rel_expander.rb
|
101
|
+
- lib/neo4j/traversal/filter_predicate.rb
|
102
|
+
- lib/neo4j/traversal/prune_evaluator.rb
|
103
|
+
- lib/neo4j/traversal/traversal.rb
|
104
|
+
- lib/neo4j/traversal/traverser.rb
|
105
|
+
- lib/neo4j/relationship_mixin/relationship_mixin.rb
|
106
|
+
- lib/neo4j/relationship_mixin/class_methods.rb
|
107
|
+
- lib/neo4j/type_converters/type_converters.rb
|
102
108
|
- lib/neo4j/migrations/migrations.rb
|
103
|
-
- lib/neo4j/migrations/
|
104
|
-
- lib/neo4j/migrations/lazy_migration_mixin.rb
|
109
|
+
- lib/neo4j/migrations/lazy_node_mixin.rb
|
105
110
|
- lib/neo4j/migrations/extensions.rb
|
111
|
+
- lib/neo4j/migrations/node_mixin.rb
|
106
112
|
- lib/neo4j/migrations/migration.rb
|
107
|
-
- lib/neo4j/migrations/
|
108
|
-
- lib/neo4j/
|
109
|
-
- lib/neo4j/
|
110
|
-
- lib/neo4j/
|
113
|
+
- lib/neo4j/migrations/class_methods.rb
|
114
|
+
- lib/neo4j/migrations/ref_node_wrapper.rb
|
115
|
+
- lib/neo4j/rels/traverser.rb
|
116
|
+
- lib/neo4j/rels/rels.rb
|
111
117
|
- lib/neo4j/rails/attributes.rb
|
112
118
|
- lib/neo4j/rails/model.rb
|
113
119
|
- lib/neo4j/rails/validations.rb
|
114
120
|
- lib/neo4j/rails/persistence.rb
|
115
121
|
- lib/neo4j/rails/serialization.rb
|
116
122
|
- lib/neo4j/rails/railtie.rb
|
123
|
+
- lib/neo4j/rails/rails.rb
|
117
124
|
- lib/neo4j/rails/lucene_connection_closer.rb
|
118
125
|
- lib/neo4j/rails/transaction.rb
|
119
126
|
- lib/neo4j/rails/timestamps.rb
|
@@ -127,37 +134,41 @@ files:
|
|
127
134
|
- lib/neo4j/rails/validations/uniqueness.rb
|
128
135
|
- lib/neo4j/rails/validations/non_nil.rb
|
129
136
|
- lib/neo4j/jars/core/lucene-core-3.0.3.jar
|
130
|
-
- lib/neo4j/jars/core/neo4j-
|
137
|
+
- lib/neo4j/jars/core/neo4j-kernel-1.3-1.3.M01.jar
|
138
|
+
- lib/neo4j/jars/core/neo4j-lucene-index-0.5-1.3.M01.jar
|
131
139
|
- lib/neo4j/jars/core/geronimo-jta_1.1_spec-1.1.1.jar
|
132
|
-
- lib/neo4j/jars/core/neo4j-
|
133
|
-
- lib/neo4j/jars/core/neo4j-
|
134
|
-
- lib/neo4j/jars/
|
140
|
+
- lib/neo4j/jars/core/neo4j-graph-algo-0.8-1.3.M01.jar
|
141
|
+
- lib/neo4j/jars/core/neo4j-index-1.3-1.3.M01.jar
|
142
|
+
- lib/neo4j/jars/ha/neo4j-management-1.3-1.3.M01.jar
|
135
143
|
- lib/neo4j/jars/ha/org.apache.servicemix.bundles.lucene-3.0.1_2.jar
|
136
144
|
- lib/neo4j/jars/ha/zookeeper-3.3.2.jar
|
137
|
-
- lib/neo4j/jars/ha/neo4j-
|
145
|
+
- lib/neo4j/jars/ha/neo4j-shell-1.3-1.3.M01.jar
|
138
146
|
- lib/neo4j/jars/ha/netty-3.2.1.Final.jar
|
147
|
+
- lib/neo4j/jars/ha/neo4j-ha-0.6-1.3.M01.jar
|
139
148
|
- lib/neo4j/jars/ha/log4j-1.2.16.jar
|
140
|
-
- lib/neo4j/jars/ha/neo4j-shell-1.3-SNAPSHOT.jar
|
141
149
|
- lib/neo4j/jars/ha/org.apache.servicemix.bundles.jline-0.9.94_1.jar
|
142
|
-
- lib/neo4j/jars/ha/neo4j-ha-0.6-SNAPSHOT.jar
|
143
|
-
- lib/neo4j/mapping/rule.rb
|
144
|
-
- lib/neo4j/mapping/decl_relationship_dsl.rb
|
145
|
-
- lib/neo4j/mapping/rule_node.rb
|
146
|
-
- lib/neo4j/mapping/node_mixin.rb
|
147
|
-
- lib/neo4j/mapping/has_n.rb
|
148
|
-
- lib/neo4j/mapping/relationship_mixin.rb
|
149
|
-
- lib/neo4j/mapping/has_list.rb
|
150
|
-
- lib/neo4j/mapping/class_methods/rule.rb
|
151
|
-
- lib/neo4j/mapping/class_methods/list.rb
|
152
|
-
- lib/neo4j/mapping/class_methods/init_node.rb
|
153
|
-
- lib/neo4j/mapping/class_methods/property.rb
|
154
|
-
- lib/neo4j/mapping/class_methods/init_rel.rb
|
155
|
-
- lib/neo4j/mapping/class_methods/relationship.rb
|
156
150
|
- lib/neo4j/index/indexer.rb
|
157
151
|
- lib/neo4j/index/lucene_query.rb
|
158
152
|
- lib/neo4j/index/indexer_registry.rb
|
159
153
|
- lib/neo4j/index/class_methods.rb
|
160
154
|
- lib/neo4j/index/index.rb
|
155
|
+
- lib/neo4j/batch/inserter.rb
|
156
|
+
- lib/neo4j/batch/indexer.rb
|
157
|
+
- lib/neo4j/batch/batch.rb
|
158
|
+
- lib/neo4j/has_n/decl_relationship_dsl.rb
|
159
|
+
- lib/neo4j/has_n/has_n.rb
|
160
|
+
- lib/neo4j/has_n/mapping.rb
|
161
|
+
- lib/neo4j/has_n/class_methods.rb
|
162
|
+
- lib/neo4j/node_mixin/node_mixin.rb
|
163
|
+
- lib/neo4j/node_mixin/class_methods.rb
|
164
|
+
- lib/neo4j/rule/rule.rb
|
165
|
+
- lib/neo4j/rule/rule_node.rb
|
166
|
+
- lib/neo4j/rule/class_methods.rb
|
167
|
+
- lib/neo4j/rule/rule_event_listener.rb
|
168
|
+
- lib/neo4j/rule/functions/function.rb
|
169
|
+
- lib/neo4j/rule/functions/count.rb
|
170
|
+
- lib/neo4j/rule/functions/sum.rb
|
171
|
+
- lib/neo4j/rule/functions/functions.rb
|
161
172
|
- config/locales/en.yml
|
162
173
|
- config/neo4j/config.yml
|
163
174
|
- README.rdoc
|