Sha256: 4d902846c1a970b69b6ddf14c8fdd08211e5b72684d93c05112fad8c5bae5c9d

Contents?: true

Size: 799 Bytes

Versions: 6

Compression:

Stored size: 799 Bytes

Contents

module Soybean
  module Generators
    class EngineGenerator
      include BaseGenerator

      attr_reader :name, :model

      delegate :wsdl, :to => :model
      delegate :class_name, :interface_name, :to => :model, :prefix => true

      def initialize(model)
        @model = model
        @name = (wsdl.name.name.underscore.gsub(/service$/, '') rescue 'base') + 'engine'
      end

      def dir
        'engines'
      end

      def generate
        source = File.expand_path("../templates/engine.rb", __FILE__)
        context = instance_eval('binding')
        content = ERB.new(::File.binread(source), nil, '-').result(context)
        content
      end

      def class_name
        @name.camelize
      end

      def endpoint_path
        model_class_name
      end

    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
soybean-2.5.5 lib/soybean/generators/engine_generator.rb
soybean-2.5.4 lib/soybean/generators/engine_generator.rb
soybean-2.5.3 lib/soybean/generators/engine_generator.rb
soybean-2.5.2 lib/soybean/generators/engine_generator.rb
soybean-2.5.1 lib/soybean/generators/engine_generator.rb
soybean-2.5.0 lib/soybean/generators/engine_generator.rb