riakrest 0.1.0 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +11 -0
- data/README.rdoc +1 -1
- data/Rakefile +8 -4
- data/VERSION +1 -1
- data/examples/auto_update_data.rb +2 -3
- data/examples/auto_update_links.rb +2 -3
- data/examples/basic_client.rb +2 -3
- data/examples/basic_resource.rb +2 -3
- data/examples/example_helper.rb +7 -0
- data/examples/linked_resources.rb +2 -3
- data/lib/riakrest/core/jiak_bucket.rb +2 -2
- data/lib/riakrest/core/jiak_client.rb +108 -45
- data/lib/riakrest/core/jiak_data.rb +10 -11
- data/lib/riakrest/core/jiak_object.rb +2 -1
- data/lib/riakrest/core/jiak_schema.rb +82 -38
- data/lib/riakrest/resource/jiak_resource.rb +84 -73
- data/lib/riakrest.rb +16 -9
- data/spec/core/jiak_bucket_spec.rb +3 -0
- data/spec/core/jiak_client_spec.rb +85 -15
- data/spec/core/jiak_schema_spec.rb +107 -5
- data/spec/resource/jiak_resource_spec.rb +37 -19
- data/spec/spec_helper.rb +3 -0
- metadata +35 -11
- data/examples/bucket_schemas.rb +0 -38
- data/examples/links_only_pov.rb +0 -38
- data/examples/multiple_pov.rb +0 -46
- data/examples/rest_interaction.rb +0 -51
- data/examples/ruby_json_data.rb +0 -19
data/examples/multiple_pov.rb
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
require 'riakrest'
|
2
|
-
include RiakRest
|
3
|
-
|
4
|
-
class Dog
|
5
|
-
include JiakResource
|
6
|
-
server 'http://localhost:8002/jiak'
|
7
|
-
jiak_accessor :name, :weight, :breed
|
8
|
-
keygen { name.downcase }
|
9
|
-
end
|
10
|
-
|
11
|
-
class DogBreed
|
12
|
-
include JiakResource
|
13
|
-
server 'http://localhost:8002/jiak'
|
14
|
-
jiak_accessor :name, :breed
|
15
|
-
end
|
16
|
-
|
17
|
-
class DogWeight
|
18
|
-
include JiakResource
|
19
|
-
server 'http://localhost:8002/jiak'
|
20
|
-
jiak_accessor :name, :weight
|
21
|
-
end
|
22
|
-
|
23
|
-
Dog.pov
|
24
|
-
addie = Dog.new(:name => 'Adelaide', :weight => 45, :breed => 'heeler')
|
25
|
-
addie.post
|
26
|
-
puts addie.name # => "Adelaide"
|
27
|
-
puts addie.breed # => "heeler"
|
28
|
-
puts addie.weight # => 45
|
29
|
-
|
30
|
-
DogBreed.pov
|
31
|
-
addie = DogBreed.get('adelaide')
|
32
|
-
addie.breed = "Heeler"
|
33
|
-
addie.put
|
34
|
-
|
35
|
-
DogWeight.pov
|
36
|
-
addie = DogWeight.get('adelaide')
|
37
|
-
addie.weight = 47
|
38
|
-
addie.put
|
39
|
-
|
40
|
-
Dog.pov
|
41
|
-
addie = Dog.get('adelaide')
|
42
|
-
puts addie.name # => "Adelaide"
|
43
|
-
puts addie.breed # => "Heeler"
|
44
|
-
puts addie.weight # => 47
|
45
|
-
|
46
|
-
addie.delete
|
@@ -1,51 +0,0 @@
|
|
1
|
-
require 'riakrest'
|
2
|
-
include RiakRest
|
3
|
-
|
4
|
-
class DogData
|
5
|
-
include JiakData
|
6
|
-
jattr_accessor :name, :age, :breeds
|
7
|
-
end
|
8
|
-
|
9
|
-
client = JiakClient.new("http://localhost:8002/jiak")
|
10
|
-
bucket = JiakBucket.new("dogs", DogData)
|
11
|
-
|
12
|
-
chili = JiakObject.new(:bucket => bucket,
|
13
|
-
:key => 'chili',
|
14
|
-
:data => DogData.new(:name => "Chili",
|
15
|
-
:age => 6,
|
16
|
-
:breeds => ["heeler","akita"]))
|
17
|
-
client.store(chili)
|
18
|
-
|
19
|
-
diego = JiakObject.new(:bucket => bucket,
|
20
|
-
:data => DogData.new(:name => "Diego",
|
21
|
-
:age => 7,
|
22
|
-
:breeds => ["pure mutt"]))
|
23
|
-
key = client.store(diego)
|
24
|
-
|
25
|
-
chili = client.get(bucket,'chili')
|
26
|
-
diego = client.get(bucket,key)
|
27
|
-
|
28
|
-
addie = JiakObject.new(:bucket => bucket,
|
29
|
-
:key => 'addie',
|
30
|
-
:data => DogData.new(:name => "Adelaide",
|
31
|
-
:age => 14,
|
32
|
-
:breeds => ["heeler"]))
|
33
|
-
client.store(addie) # Store addie
|
34
|
-
addie.data.age = 15 # Whoops, fix her age
|
35
|
-
client.store(addie) # Store that update
|
36
|
-
db_addie = client.get(bucket,'addie') # Get what we stored
|
37
|
-
puts db_addie.data.age # => 14 !?? Not 15??
|
38
|
-
|
39
|
-
strass = JiakObject.new(:bucket => bucket,
|
40
|
-
:key => 'strass',
|
41
|
-
:data => DogData.new(:name => "Cauchy Euler Weierstrass",
|
42
|
-
:age => 5,
|
43
|
-
:breeds => ["schnauzer","mutt"]))
|
44
|
-
strass = client.store(strass,:return => :object)
|
45
|
-
strass.data.age = 6
|
46
|
-
client.store(strass)
|
47
|
-
db_strass = client.get(bucket,'strass')
|
48
|
-
puts db_strass.data.age # => 6 Yeah!
|
49
|
-
|
50
|
-
# Clean-up
|
51
|
-
client.keys(bucket).each {|key| client.delete(bucket,key)}
|
data/examples/ruby_json_data.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
require 'riakrest'
|
2
|
-
include RiakRest
|
3
|
-
|
4
|
-
# CxINC Example doesn't do anything useful yet
|
5
|
-
|
6
|
-
require 'date'
|
7
|
-
class DogData # :nodoc:
|
8
|
-
include JiakData
|
9
|
-
|
10
|
-
allowed :name, :birthdate, :weight, :breed
|
11
|
-
readwrite :name, :birthdate, :weight
|
12
|
-
|
13
|
-
keygen { name.downcase }
|
14
|
-
|
15
|
-
def self.jiak_create(jiak)
|
16
|
-
jiak['birthdate'] = Date.parse(jiak['birthdate']) if jiak['birthdate']
|
17
|
-
new(jiak)
|
18
|
-
end
|
19
|
-
end
|