Module: Halogen::Resource::ClassMethods

Defined in:
lib/halogen/resource.rb

Overview

:nodoc:

Instance Method Summary collapse

Instance Method Details

#define_resource(name) ⇒ Module

Returns self.

Parameters:

  • name (Symbol, String)

    name of the resource

Returns:

  • (Module)

    self



24
25
26
27
28
# File 'lib/halogen/resource.rb', line 24

def define_resource(name)
  self.resource_name = name.to_s

  alias_method name, :resource
end

#property(name, options = {}, &procedure) ⇒ Object

Override standard property definition for resource-based representers

Parameters:

  • name (Symbol, String)

    name of the property

  • options (nil, Hash) (defaults to: {})

    property options for definition



35
36
37
38
39
40
41
# File 'lib/halogen/resource.rb', line 35

def property(name, options = {}, &procedure)
  super.tap do |definition|
    unless definition.procedure || definition.options.key?(:value)
      definition.procedure = proc { resource.send(name) }
    end
  end
end