Sha256: 73dfa78ef2b48de59a73466e2db2ba95474e47f2f3d172087ead13ce62095db9

Contents?: true

Size: 854 Bytes

Versions: 14

Compression:

Stored size: 854 Bytes

Contents

require "yaml"

class Lono::Blueprint
  class Meta
    extend Memoist

    def initialize(blueprint)
      @blueprint = blueprint
    end

    def data
      blueprint_location = Find.find(@blueprint)
      meta_config = "#{blueprint_location}/.meta/config.yml"
      YAML.load_file(meta_config)
    end
    memoize :data

    %w[blueprint_name template_type].each do |meth|
      define_method meth do
        data[meth]
      end
    end

    def auto_camelize?(target_section)
      auto_camelize = data['auto_camelize']
      # auto_camelize.nil? for backward compatibility
      return true if auto_camelize.nil? || auto_camelize == true

      if auto_camelize == "except_resource"
        return target_section != "resource"
      end

      if auto_camelize.is_a?(Array)
        auto_camelize.include?(target_section)
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
lono-6.1.11 lib/lono/blueprint/meta.rb
lono-6.1.10 lib/lono/blueprint/meta.rb
lono-6.1.9 lib/lono/blueprint/meta.rb
lono-6.1.8 lib/lono/blueprint/meta.rb
lono-6.1.7 lib/lono/blueprint/meta.rb
lono-6.1.6 lib/lono/blueprint/meta.rb
lono-6.1.5 lib/lono/blueprint/meta.rb
lono-6.1.4 lib/lono/blueprint/meta.rb
lono-6.1.3 lib/lono/blueprint/meta.rb
lono-6.1.2 lib/lono/blueprint/meta.rb
lono-6.1.1 lib/lono/blueprint/meta.rb
lono-6.1.0 lib/lono/blueprint/meta.rb
lono-6.0.1 lib/lono/blueprint/meta.rb
lono-6.0.0 lib/lono/blueprint/meta.rb