Module: Amazon
- Defined in:
- lib/amazon/aws/cache.rb,
lib/amazon.rb,
lib/amazon/aws.rb,
lib/amazon/aws/search.rb,
lib/amazon/aws/shoppingcart.rb
Overview
$Id: search.rb,v 1.26 2008/09/21 22:17:32 ianmacd Exp $
Defined Under Namespace
Modules: AWS Classes: AmazonError, Config
Constant Summary collapse
- NAME =
'Ruby/Amazon'
- @@config =
{}
Class Method Summary collapse
-
.dprintf(format = '', *args) ⇒ Object
Prints debugging messages and works like printf, except that it prints only when Ruby is run with the -d switch.
- .rawurlencode(string) ⇒ Object
-
.uncamelise(str) ⇒ Object
Convert a string from CamelCase to ruby_case.
-
.url_encode(string) ⇒ Object
Encode a string, such that it is suitable for HTTP transmission.
Class Method Details
.dprintf(format = '', *args) ⇒ Object
Prints debugging messages and works like printf, except that it prints only when Ruby is run with the -d switch.
20 21 22 |
# File 'lib/amazon.rb', line 20 def Amazon.dprintf(format='', *args) $stderr.printf( format + "\n", *args ) if $DEBUG end |
.rawurlencode(string) ⇒ Object
36 37 38 |
# File 'lib/amazon.rb', line 36 def Amazon.rawurlencode(string) CGI.escape(string).gsub("+", "%20") end |
.uncamelise(str) ⇒ Object
Convert a string from CamelCase to ruby_case.
43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/amazon.rb', line 43 def Amazon.uncamelise(str) # Avoid modifying by reference. # str = str.dup # Don't mess with string if all caps. # str.gsub!( /(.+?)(([A-Z][a-z]|[A-Z]+$))/, "\\1_\\2" ) if str =~ /[a-z]/ # Convert to lower case. # str.downcase end |
.url_encode(string) ⇒ Object
Encode a string, such that it is suitable for HTTP transmission.
27 28 29 30 31 32 33 34 |
# File 'lib/amazon.rb', line 27 def Amazon.url_encode(string) # Shamelessly plagiarised from Wakou Aoyama's cgi.rb. # string.gsub( /([^ a-zA-Z0-9_.-]+)/n ) do '%' + $1.unpack( 'H2' * $1.size ).join( '%' ).upcase end.tr( ' ', '+' ) end |