Sha256: 205651294e627fc33c669d87233b2d6552cf2a40726d4d395e5f2d802a926337

Contents?: true

Size: 929 Bytes

Versions: 3

Compression:

Stored size: 929 Bytes

Contents

# frozen_string_literal: true

require "bq_coaster/renderer"
require "bq_coaster/generators/base"
require "bq_coaster/generators/java_class/class_renderer"

module BqCoaster
  module Generators
    class JavaClass < Base
      include Renderer

      def generate
        result
      end

      private

      def attributes
        {
          dataflow:   options[:dataflow],
          java_class: java_class,
          package:    options[:package]
        }
      end

      def class_name
        options[:class_name] || default_class_name
      end

      def default_class_name
        File.basename(definition_file, ".*").camelize
      end

      def java_class
        ClassRenderer.new(
          class_name,
          definitions,
          dataflow: options[:dataflow]
        ).render
      end

      def template_path
        File.expand_path("../java_class/java_class.erb", __FILE__)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
bq_coaster-0.2.2 lib/bq_coaster/generators/java_class.rb
bq_coaster-0.2.1 lib/bq_coaster/generators/java_class.rb
bq_coaster-0.2.0 lib/bq_coaster/generators/java_class.rb