Module: Riak::Util::Escape
- Included in:
- Client, Client::HTTPBackend, Client::HTTPBackend::KeyStreamer, Client::Node, Client::ProtobuffsBackend, Link, MapReduce, RObject, RObject, WalkSpec
- Defined in:
- lib/riak/util/escape.rb
Overview
Methods for escaping URL segments.
Instance Method Summary collapse
-
#escape(bucket_or_key) ⇒ String
Escapes bucket or key names that may contain slashes for use in URLs.
-
#maybe_escape(bucket_or_key) ⇒ String
Conditionally escapes buckets and keys depending on whether Riak is configured to decode them.
-
#maybe_unescape(bucket_or_key) ⇒ String
Conditionally unescapes buckets and keys depending on whether Riak is configured to decode them.
-
#unescape(bucket_or_key) ⇒ String
Unescapes bucket or key names in URLs.
Instance Method Details
#escape(bucket_or_key) ⇒ String
Escapes bucket or key names that may contain slashes for use in URLs.
53 54 55 |
# File 'lib/riak/util/escape.rb', line 53 def escape(bucket_or_key) Riak.escaper.escape(bucket_or_key.to_s).gsub("+", "%20").gsub('/', "%2F") end |
#maybe_escape(bucket_or_key) ⇒ String
Conditionally escapes buckets and keys depending on whether Riak is configured to decode them. This is used in situations where the bucket or key is not part of a URL, but would need to be escaped on Riak 0.14 and earlier so that the name matches.
46 47 48 |
# File 'lib/riak/util/escape.rb', line 46 def maybe_escape(bucket_or_key) Riak.url_decoding ? bucket_or_key : escape(bucket_or_key) end |
#maybe_unescape(bucket_or_key) ⇒ String
Conditionally unescapes buckets and keys depending on whether Riak is configured to decode them. This is used in situations where the bucket or key is not part of a URL, but would need to be escaped on Riak 0.14 and earlier so that the name matches.
64 65 66 |
# File 'lib/riak/util/escape.rb', line 64 def maybe_unescape(bucket_or_key) Riak.url_decoding ? bucket_or_key : unescape(bucket_or_key) end |