related 0.6.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
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