Class: String

Inherits:
Object show all
Defined in:
lib/savon/core_ext/string.rb

Instance Method Summary collapse

Instance Method Details

#lower_camelcaseObject

Returns the String in lowerCamelCase.



16
17
18
19
20
21
22
# File 'lib/savon/core_ext/string.rb', line 16

def lower_camelcase
  str = dup
  str.gsub!(/\/(.?)/) { "::#{$1.upcase}" }
  str.gsub!(/(?:_+|-+)([a-z])/) { $1.upcase }
  str.gsub!(/(\A|\s)([A-Z])/) { $1 + $2.downcase }
  str
end

#map_soap_responseObject

Translates SOAP response values to more convenient Ruby Objects.



30
31
32
33
34
35
# File 'lib/savon/core_ext/string.rb', line 30

def map_soap_response
  return DateTime.parse self if Savon::SOAPDateTimeRegexp === self
  return true if self.strip.downcase == "true"
  return false if self.strip.downcase == "false"
  self
end

#snakecaseObject

Returns the String in snake_case.



4
5
6
7
8
9
10
11
12
13
# File 'lib/savon/core_ext/string.rb', line 4

def snakecase
  str = dup
  str.gsub! /::/, '/'
  str.gsub! /([A-Z]+)([A-Z][a-z])/, '\1_\2'
  str.gsub! /([a-z\d])([A-Z])/, '\1_\2'
  str.tr! ".", "_"
  str.tr! "-", "_"
  str.downcase!
  str
end

#strip_namespaceObject

Returns the String without namespace.



25
26
27
# File 'lib/savon/core_ext/string.rb', line 25

def strip_namespace
  gsub /(.+:)(.+)/, '\2'
end

#to_soap_valueObject

Returns the String as a SOAP request compliant value.



38
39
40
# File 'lib/savon/core_ext/string.rb', line 38

def to_soap_value
  to_s
end