class Soybean::Generators::ModelGenerator
Attributes
name[R]
wsdl[R]
Public Class Methods
new(wsdl)
click to toggle source
# File lib/soybean/generators/model_generator.rb, line 8 def initialize(wsdl) @wsdl = wsdl @name = (wsdl.name.name.underscore.gsub(/service$/, '') rescue 'base') + 'service' end
Public Instance Methods
class_name()
click to toggle source
# File lib/soybean/generators/model_generator.rb, line 26 def class_name @name.camelize end
dir()
click to toggle source
# File lib/soybean/generators/model_generator.rb, line 13 def dir '' end
generate()
click to toggle source
# File lib/soybean/generators/model_generator.rb, line 17 def generate @wsdl.importedschema.map do |uri, schema| "require 'mappings/#{URI.parse(schema.targetnamespace).path[1..-2].underscore}'\n" end.join + "class #{class_name} < #{interface_name}" + "include #{URI.parse(@wsdl.importedschema.values.last.targetnamespace).path[1..-2].camelize}" "end" end
interface_name()
click to toggle source
# File lib/soybean/generators/model_generator.rb, line 30 def interface_name "Interfaces::" + @name.camelize.gsub(/Service$/, 'Interface') end