Module: ResourceDefaults

Defined in:
lib/resource_defaults.rb

Defined Under Namespace

Modules: ClassMethods Classes: Railtie

Instance Method Summary collapse

Instance Method Details

#initialize_resource_defaultsObject



17
18
19
20
# File 'lib/resource_defaults.rb', line 17

def initialize_resource_defaults
  @scope[:resource_defaults] = {}
  @scope[:resource_defaults_in_progress] = []
end

#resource_defaults(*args, &block) ⇒ Object

Raises:

  • (ArgumentError)


22
23
24
25
26
27
# File 'lib/resource_defaults.rb', line 22

def resource_defaults(*args, &block)
  options = args.extract_options!
  target = args.first
  raise ArgumentError, 'must provide a resource to apply default actions' if target.blank?
  @scope[:resource_defaults][target] = options.merge(:block => block)
end

#scope(*args) ⇒ Object



29
30
31
32
33
34
# File 'lib/resource_defaults.rb', line 29

def scope(*args)
  old_resource_defaults = @scope[:resource_defaults].dup
  super
ensure
  @scope[:resource_defaults] = old_resource_defaults
end