Module: Amazon
- Defined in:
- lib/amazon.rb,
lib/amazon/aws.rb,
lib/amazon/aws/cache.rb,
lib/amazon/aws/search.rb,
lib/amazon/aws/shoppingcart.rb
Overview
$Id: search.rb,v 1.23 2008/09/10 21:43:58 ianmacd Exp $
Defined Under Namespace
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.
-
.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.
12 13 14 |
# File 'lib/amazon.rb', line 12 def Amazon.dprintf(format='', *args) $stderr.printf( format + "\n", *args ) if $DEBUG end |
.uncamelise(str) ⇒ Object
Convert a string from CamelCase to ruby_case.
31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/amazon.rb', line 31 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.
19 20 21 22 23 24 25 26 |
# File 'lib/amazon.rb', line 19 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 |