Sha256: d9902c663d4e4cf010e5f38139043fa016aa7f918db164b44e5a82ff182ac729

Contents?: true

Size: 759 Bytes

Versions: 1

Compression:

Stored size: 759 Bytes

Contents

require 'chef/resource/lwrp_base'

class DocumentingLWRPBase < ::Chef::Resource::LWRPBase

  class << self
    def attribute_specifications
      @attribute_specifications ||= {}
    end

    def desc(description)
      @description = "#{@description}#{description}\n"
    end

    def description
      @description || ""
    end

    NOT_PASSED = defined?(::Chef::NOT_PASSED) ? ::Chef::NOT_PASSED : "NOT_PASSED"
    def property(name, type = NOT_PASSED, *options)
      attribute_specifications[name] = options
      super(name, type, *options) if defined?(super)
    end
  end

  def self.attribute(attr_name, validation_opts={})
    result = super(attr_name, validation_opts)
    attribute_specifications[attr_name] = validation_opts
    result
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
knife-cookbook-doc-0.18.0 lib/knife_cookbook_doc/documenting_lwrp_base.rb