neo4j-wrapper 2.2.1-java → 2.2.3-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/README.rdoc +1 -1
- data/lib/neo4j-wrapper/node_mixin/class_methods.rb +2 -1
- data/lib/neo4j-wrapper/version.rb +1 -1
- data/lib/neo4j-wrapper/version.rb~ +1 -1
- data/lib/neo4j/identity_map.rb +8 -2
- data/lib/neo4j/type_converters/type_converters.rb +3 -2
- data/neo4j-wrapper.gemspec +1 -1
- metadata +4 -4
data/README.rdoc
CHANGED
@@ -60,12 +60,13 @@ module Neo4j
|
|
60
60
|
#
|
61
61
|
# node = MyNode.get_or_create(:email =>'jimmy@gmail.com', :name => 'jimmy')
|
62
62
|
#
|
63
|
+
# @note It must not be called in a transaction. It will create and finish a new transaction.
|
63
64
|
# @see #put_if_absent
|
64
65
|
def get_or_create(*args)
|
65
66
|
props = args.first
|
66
67
|
raise "Can't get or create entity since #{props.inspect} does not included unique key #{props[unique_factory_key]}'" unless props[unique_factory_key]
|
67
68
|
index = index_for_type(_decl_props[unique_factory_key][:index])
|
68
|
-
Neo4j::Core::Index::UniqueFactory.new(unique_factory_key, index) { |*| new(*args) }.get_or_create(unique_factory_key, props[unique_factory_key])
|
69
|
+
Neo4j::Core::Index::UniqueFactory.new(unique_factory_key, index) { |*| new(*args) }.get_or_create(unique_factory_key, props[unique_factory_key]).wrapper
|
69
70
|
end
|
70
71
|
|
71
72
|
# @throws Exception if there are more then one property having unique index
|
data/lib/neo4j/identity_map.rb
CHANGED
@@ -8,13 +8,19 @@ module Neo4j
|
|
8
8
|
# More information on Identity Map pattern:
|
9
9
|
# http://www.martinfowler.com/eaaCatalog/identityMap.html
|
10
10
|
#
|
11
|
+
# The identity map cache is cleared after each transaction. When used from rails the Rack Middle ware
|
12
|
+
# will also make sure that the cache is emptied after each request.
|
13
|
+
#
|
14
|
+
# When used from batch import scripts (e.g. Rake) you should probably disable the identity map,
|
15
|
+
# because the identity map cache will not be used (the same object is not loaded more than once).
|
16
|
+
# If not used from rails and transactions does not occur then the cache will never be cleared and
|
17
|
+
# you will have a memory leak.
|
18
|
+
#
|
11
19
|
# == Configuration
|
12
20
|
#
|
13
21
|
# In order to enable IdentityMap, set <tt>config.neo4j.identity_map = true</tt>
|
14
22
|
# in your <tt>config/application.rb</tt> file. If used outside rails, set Neo4j::Config[:identity_map] = true.
|
15
23
|
#
|
16
|
-
# IdentityMap is disabled by default and still in development (i.e. use it with care).
|
17
|
-
#
|
18
24
|
module IdentityMap
|
19
25
|
|
20
26
|
class << self
|
@@ -214,9 +214,10 @@ module Neo4j
|
|
214
214
|
end
|
215
215
|
|
216
216
|
# Converts the given DateTime (UTC) value to an Fixnum.
|
217
|
-
#
|
217
|
+
# DateTime values are automatically converted to UTC.
|
218
218
|
def to_java(value)
|
219
219
|
return nil if value.nil?
|
220
|
+
value = value.new_offset(0) if value.respond_to?(:new_offset)
|
220
221
|
if value.class == Date
|
221
222
|
Time.utc(value.year, value.month, value.day, 0, 0, 0).to_i
|
222
223
|
else
|
@@ -274,7 +275,7 @@ module Neo4j
|
|
274
275
|
def converters=(converters)
|
275
276
|
@converters = converters
|
276
277
|
end
|
277
|
-
|
278
|
+
|
278
279
|
# Always returns a converter that handles to_ruby or to_java
|
279
280
|
# if +enforce_type+ is set to false then it will raise in case of unknown type
|
280
281
|
# otherwise it will return the DefaultConverter.
|
data/neo4j-wrapper.gemspec
CHANGED
@@ -27,5 +27,5 @@ It comes included with the Apache Lucene document database.
|
|
27
27
|
s.extra_rdoc_files = %w( README.rdoc )
|
28
28
|
s.rdoc_options = ["--quiet", "--title", "Neo4j.rb", "--line-numbers", "--main", "README.rdoc", "--inline-source"]
|
29
29
|
|
30
|
-
s.add_dependency("neo4j-core", "2.2.
|
30
|
+
s.add_dependency("neo4j-core", "2.2.3")
|
31
31
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: neo4j-wrapper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.3
|
5
5
|
prerelease:
|
6
6
|
platform: java
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-12-
|
12
|
+
date: 2012-12-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: neo4j-core
|
@@ -17,13 +17,13 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - '='
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 2.2.
|
20
|
+
version: 2.2.3
|
21
21
|
none: false
|
22
22
|
requirement: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.2.
|
26
|
+
version: 2.2.3
|
27
27
|
none: false
|
28
28
|
prerelease: false
|
29
29
|
type: :runtime
|