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.49 2010/03/19 19:28:19 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.
-
.uncamelise(string) ⇒ 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.
24 25 26 |
# File 'lib/amazon.rb', line 24 def Amazon.dprintf(format='', *args) $stderr.printf( format + "\n", *args ) if $DEBUG end |
.uncamelise(string) ⇒ Object
Convert a string from CamelCase to ruby_case.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/amazon.rb', line 42 def Amazon.uncamelise(string) # Avoid modifying by reference. # string = string.dup # Don't mess with string if all caps. # if string =~ /[a-z]/ string.gsub!( /(.+?)(([A-Z][a-z]|[A-Z]+$))/, "\\1_\\2" ) end # Convert to lower case. # string.downcase end |
.url_encode(string) ⇒ Object
Encode a string, such that it is suitable for HTTP transmission.
30 31 32 33 34 35 36 37 38 |
# File 'lib/amazon.rb', line 30 def Amazon.url_encode(string) # Shamelessly plagiarised from Wakou Aoyama's cgi.rb, but then altered # slightly to please AWS. # string.gsub( /([^a-zA-Z0-9_.~-]+)/ ) do '%' + $1.unpack( 'H2' * $1.bytesize ).join( '%' ).upcase end end |