hari 0.0.1 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/.travis.yml +15 -0
- data/LICENSE +15 -19
- data/README.md +22 -0
- data/hari.gemspec +2 -1
- data/lib/hari.rb +56 -1
- data/lib/hari/entity.rb +8 -11
- data/lib/hari/entity/property.rb +2 -2
- data/lib/hari/entity/property/builder.rb +9 -1
- data/lib/hari/entity/repository.rb +3 -2
- data/lib/hari/entity/serialization/float.rb +2 -0
- data/lib/hari/entity/serialization/integer.rb +3 -10
- data/lib/hari/node.rb +20 -3
- data/lib/hari/node/queries.rb +33 -0
- data/lib/hari/node/queries/list.rb +147 -0
- data/lib/hari/node/queries/relation.rb +100 -0
- data/lib/hari/node/queries/relation/backend/list.rb +35 -0
- data/lib/hari/node/queries/relation/backend/sorted_set.rb +95 -0
- data/lib/hari/node/queries/relation/runnable.rb +24 -0
- data/lib/hari/node/queries/relation/start.rb +19 -0
- data/lib/hari/node/queries/relation/step.rb +17 -0
- data/lib/hari/node/queries/set.rb +116 -0
- data/lib/hari/node/queries/sorted_set.rb +130 -0
- data/lib/hari/node/repository.rb +24 -0
- data/lib/hari/node/serialization.rb +24 -0
- data/lib/hari/relation.rb +72 -0
- data/lib/hari/relation/linked_list.rb +16 -0
- data/lib/hari/relation/sorted_set.rb +16 -0
- data/lib/hari/version.rb +1 -1
- data/spec/hari/configuration_spec.rb +5 -0
- data/spec/hari/entity/repository_spec.rb +4 -4
- data/spec/hari/entity/serialization_spec.rb +2 -2
- data/spec/hari/node/lists_spec.rb +126 -0
- data/spec/hari/node/sets_spec.rb +85 -0
- data/spec/hari/node/sorted_sets_spec.rb +89 -0
- data/spec/hari/node_spec.rb +79 -0
- data/spec/hari_spec.rb +37 -0
- data/spec/spec_helper.rb +11 -1
- metadata +48 -32
- data/lib/hari/relationship.rb +0 -72
- data/lib/hari/relationship/linked_list.rb +0 -22
- data/lib/hari/relationship/sorted_set.rb +0 -22
- data/lib/hari/scripts.rb +0 -26
@@ -1,22 +0,0 @@
|
|
1
|
-
module Hari
|
2
|
-
class Relationship < Entity
|
3
|
-
module Backend
|
4
|
-
module LinkedList
|
5
|
-
extend self
|
6
|
-
|
7
|
-
def type
|
8
|
-
:ll
|
9
|
-
end
|
10
|
-
|
11
|
-
def create(rel)
|
12
|
-
%w(in out).each { |d| Hari.redis.lpush rel.key(d), rel.id }
|
13
|
-
end
|
14
|
-
|
15
|
-
def delete(rel)
|
16
|
-
%w(in out).each { |d| Hari.redis.lrem rel.key(d), 1, rel.id }
|
17
|
-
end
|
18
|
-
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
module Hari
|
2
|
-
class Relationship < Entity
|
3
|
-
module Backend
|
4
|
-
module SortedSet
|
5
|
-
extend self
|
6
|
-
|
7
|
-
def type
|
8
|
-
:ss
|
9
|
-
end
|
10
|
-
|
11
|
-
def create(rel)
|
12
|
-
%w(in out).each { |d| Hari.redis.zadd rel.key(d), rel.weight(d), rel.id }
|
13
|
-
end
|
14
|
-
|
15
|
-
def delete(rel)
|
16
|
-
%w(in out).each { |d| Hari.redis.zrem rel.key(d), rel.id }
|
17
|
-
end
|
18
|
-
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
data/lib/hari/scripts.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
module Hari
|
2
|
-
module Scripts
|
3
|
-
|
4
|
-
SCRIPT_PATH = File.expand_path('../scripts', __FILE__)
|
5
|
-
|
6
|
-
def map
|
7
|
-
@scripts ||= {}
|
8
|
-
end
|
9
|
-
|
10
|
-
def load
|
11
|
-
files = Dir[SCRIPT_PATH.join('**/*.lua')]
|
12
|
-
|
13
|
-
files.each do |file|
|
14
|
-
name = file.gsub("#{SCRIPT_PATH}/", '').gsub('.lua', '')
|
15
|
-
script = File.read(file)
|
16
|
-
sha = Hari.redis.script(:load, script)
|
17
|
-
map[name] = sha
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
def sha(script_name)
|
22
|
-
map[script_name.to_s]
|
23
|
-
end
|
24
|
-
|
25
|
-
end
|
26
|
-
end
|