Class: WsdlMapper::SvcGeneration::Facade

Inherits:
Generation::Facade show all
Defined in:
lib/wsdl_mapper/svc_generation/facade.rb

Instance Method Summary (collapse)

Constructor Details

- (Facade) initialize(file:, out:, service_namer: nil, **args)

Returns a new instance of Facade



15
16
17
18
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 15

def initialize(file:, out:, service_namer: nil, **args)
  super file: file, out: out, **args
  @service_namer = service_namer
end

Instance Method Details

- (Object) ctr_generator_class



28
29
30
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 28

def ctr_generator_class
  @ctr_generator_class ||= @docs ? WsdlMapper::DomGeneration::DocumentedCtrGenerator : WsdlMapper::DomGeneration::DefaultCtrGenerator
end

- (Object) d10r_generator



40
41
42
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 40

def d10r_generator
  @d10r_generator ||= WsdlMapper::D10rGeneration::D10rGenerator.new context, namer: namer, skip_modules: true
end

- (Object) generate



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 56

def generate
  desc, schema = parser.parse document

  schema_result = schema_generator.generate schema
  s8r_result = s8r_generator.generate schema
  d10r_result = d10r_generator.generate schema
  svc_result = svc_generator.generate desc

  result = WsdlMapper::Generation::Result.merge svc_result, schema_result, s8r_result, d10r_result

  result.module_tree.each do |module_node|
    module_generator.generate module_node, result
  end

  result
end

- (Object) module_generator



52
53
54
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 52

def module_generator
  @module_generator ||= WsdlMapper::Generation::DefaultModuleGenerator.new schema_generator
end

- (Object) parser



73
74
75
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 73

def parser
  @parser ||= WsdlMapper::SvcDescParsing::Parser.new
end

- (Object) s8r_generator



36
37
38
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 36

def s8r_generator
  @s8r_generator ||= WsdlMapper::S8rGeneration::S8rGenerator.new context, namer: namer, skip_modules: true
end

- (Object) schema_generator



24
25
26
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 24

def schema_generator
  @schema_generator ||= schema_generator_class.new context, namer: namer, ctr_generator_factory: ctr_generator_class, skip_modules: true
end

- (Object) schema_generator_class



32
33
34
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 32

def schema_generator_class
  @schema_generator_class ||= @docs ? WsdlMapper::DomGeneration::DocumentedSchemaGenerator : WsdlMapper::DomGeneration::SchemaGenerator
end

- (Object) service_namer



20
21
22
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 20

def service_namer
  @service_namer ||= WsdlMapper::Naming::DefaultServiceNamer.new(module_path: @module_path)
end

- (Object) svc_generator



44
45
46
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 44

def svc_generator
  @svc_generator ||= svc_generator_class.new context, namer: namer, service_namer: service_namer, schema_generator: schema_generator
end

- (Object) svc_generator_class



48
49
50
# File 'lib/wsdl_mapper/svc_generation/facade.rb', line 48

def svc_generator_class
  @svc_generator_class ||= @docs ? WsdlMapper::SvcGeneration::DocumentedSvcGenerator : WsdlMapper::SvcGeneration::SvcGenerator
end