Class: CloudwatchScheduler::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/cloudwatch_scheduler/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



13
14
15
16
# File 'lib/cloudwatch_scheduler/configuration.rb', line 13

def initialize
  @tasks = {}
  set_defaults
end

Instance Attribute Details

#queue_max_receive_countObject

Returns the value of attribute queue_max_receive_count.



7
8
9
# File 'lib/cloudwatch_scheduler/configuration.rb', line 7

def queue_max_receive_count
  @queue_max_receive_count
end

#queue_nameObject



35
36
37
# File 'lib/cloudwatch_scheduler/configuration.rb', line 35

def queue_name
  @queue_name ||= CloudwatchScheduler::Job.queue_name
end

#queue_visibility_timeoutObject

Returns the value of attribute queue_visibility_timeout.



7
8
9
# File 'lib/cloudwatch_scheduler/configuration.rb', line 7

def queue_visibility_timeout
  @queue_visibility_timeout
end

#tasksObject (readonly)

Returns the value of attribute tasks.



11
12
13
# File 'lib/cloudwatch_scheduler/configuration.rb', line 11

def tasks
  @tasks
end

#use_dead_letter_queueObject

Returns the value of attribute use_dead_letter_queue.



7
8
9
# File 'lib/cloudwatch_scheduler/configuration.rb', line 7

def use_dead_letter_queue
  @use_dead_letter_queue
end

Instance Method Details

#configure(&config) ⇒ Object



18
19
20
21
# File 'lib/cloudwatch_scheduler/configuration.rb', line 18

def configure(&config)
  instance_exec(self, &config)
  self
end

#set_defaultsObject



27
28
29
30
31
# File 'lib/cloudwatch_scheduler/configuration.rb', line 27

def set_defaults
  @queue_visibility_timeout = 1.minute
  @queue_max_receive_count  = 2
  @use_dead_letter_queue    = true
end

#task(name, **kwargs, &task) ⇒ Object



23
24
25
# File 'lib/cloudwatch_scheduler/configuration.rb', line 23

def task(name, **kwargs, &task)
  @tasks[name] = Task.new(name, **kwargs, &task)
end