lib/riak/link.rb in ripple-0.5.0 vs lib/riak/link.rb in ripple-0.5.1

- old
+ new

@@ -33,10 +33,20 @@ def initialize(url, rel) @url, @rel = url, rel end + # @return [String] bucket_name, if the Link url is a known Riak link ("/raw/<bucket>/<key>") + def bucket + $1 if url =~ %r{/raw/([^/]+)/?} + end + + # @return [String] key, if the Link url is a known Riak link ("/raw/<bucket>/<key>") + def key + $1 if url =~ %r{/raw/[^/]+/([^/]+)/?} + end + def inspect; to_s; end def to_s %Q[<#{@url}>; riaktag="#{@rel}"] end @@ -44,11 +54,10 @@ def ==(other) other.is_a?(Link) && url == other.url && rel == other.rel end def to_walk_spec - bucket, object = $1, $2 if @url =~ %r{/raw/([^/]+)/([^/]+)/?} - raise t("bucket_link_conversion") if @rel == "up" || object.nil? + raise t("bucket_link_conversion") if @rel == "up" || key.nil? WalkSpec.new(:bucket => bucket, :tag => @rel) end end end