related 0.6.0 → 0.6.1

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/lib/related/node.rb CHANGED
@@ -136,18 +136,18 @@ module Related
136
136
  else
137
137
  if entity.is_a?(node_class)
138
138
  @result_type = :nodes
139
- Related.redis.sismember(key, entity.to_s)
139
+ Related.redis.sismember(key, entity.id)
140
140
  elsif entity.is_a?(Related::Relationship)
141
141
  @result_type = :relationships
142
- Related.redis.sismember(key, entity.to_s)
142
+ Related.redis.sismember(key, entity.id)
143
143
  end
144
144
  end
145
145
  end
146
146
 
147
147
  def find(node)
148
148
  if @result_type == :nodes
149
- if Related.redis.sismember(key, node.to_s)
150
- node_class.find(node.to_s, @options)
149
+ if Related.redis.sismember(key, node.id)
150
+ node_class.find(node.id, @options)
151
151
  end
152
152
  else
153
153
  if id = Related.redis.get(dir_key(node))
@@ -235,18 +235,16 @@ module Related
235
235
  end
236
236
 
237
237
  def key(node=nil)
238
- if @result_type == :nodes
239
- "#{node ? node.to_s : @node.to_s}:n:#{@relationship_type}:#{@direction}"
240
- else
241
- "#{node ? node.to_s : @node.to_s}:r:#{@relationship_type}:#{@direction}"
242
- end
238
+ n = node || @node
239
+ node_id = n.is_a?(String) ? n : n.id
240
+ "#{node_id}:#{@result_type == :nodes ? "n" : "r"}:#{@relationship_type}:#{@direction}"
243
241
  end
244
242
 
245
243
  def dir_key(node)
246
244
  if @direction == :out
247
- "#{@node.to_s}:#{@relationship_type}:#{node.to_s}"
245
+ "#{@node.id}:#{@relationship_type}:#{node.id}"
248
246
  elsif @direction == :in
249
- "#{node.to_s}:#{@relationship_type}:#{@node.to_s}"
247
+ "#{node.id}:#{@relationship_type}:#{@node.id}"
250
248
  end
251
249
  end
252
250
 
@@ -41,8 +41,8 @@ module Related
41
41
  def self.create(label, node1, node2, attributes = {})
42
42
  self.new(attributes.merge(
43
43
  :label => label,
44
- :start_node_id => node1.to_s,
45
- :end_node_id => node2.to_s
44
+ :start_node_id => node1.is_a?(String) ? node1 : (node1 ? node1.id : nil),
45
+ :end_node_id => node2.is_a?(String) ? node2 : (node2 ? node2.id : nil)
46
46
  )).save
47
47
  end
48
48
 
@@ -1,3 +1,3 @@
1
1
  module Related
2
- Version = VERSION = '0.6.0'
2
+ Version = VERSION = '0.6.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: related
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-02-10 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: redis
16
- requirement: &70275674186620 !ruby/object:Gem::Requirement
16
+ requirement: &70355260457740 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>'
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.0.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70275674186620
24
+ version_requirements: *70355260457740
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: redis-namespace
27
- requirement: &70275674186120 !ruby/object:Gem::Requirement
27
+ requirement: &70355260492040 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>'
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.8.0
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70275674186120
35
+ version_requirements: *70355260492040
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: activemodel
38
- requirement: &70275674185740 !ruby/object:Gem::Requirement
38
+ requirement: &70355260491660 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70275674185740
46
+ version_requirements: *70355260491660
47
47
  description: Related is a Redis-backed high performance distributed graph database.
48
48
  email: niklas@sutajio.se
49
49
  executables: []
@@ -69,10 +69,6 @@ files:
69
69
  - test/active_model_test.rb
70
70
  - test/custom_node_test.rb
71
71
  - test/data_flow_test.rb
72
- - test/dump-1.rdb
73
- - test/dump-2.rdb
74
- - test/dump-3.rdb
75
- - test/dump-4.rdb
76
72
  - test/follower_test.rb
77
73
  - test/model_test.rb
78
74
  - test/performance_test.rb
data/test/dump-1.rdb DELETED
Binary file
data/test/dump-2.rdb DELETED
Binary file
data/test/dump-3.rdb DELETED
Binary file
data/test/dump-4.rdb DELETED
Binary file