Module: AWS::Flow::Activities
- Defined in:
- lib/aws/decider/activity.rb
Overview
Methods and constants related to activities.
Defined Under Namespace
Modules: InstanceMethods
Instance Attribute Summary collapse
-
#activities ⇒ Object
Gets an list of activities for this Activity.
-
#activity_client ⇒ Object
Gets the [ActivityClient] for this Activity.
Class Method Summary collapse
Instance Method Summary collapse
-
#activity(*activity_names, &block) ⇒ Object
Defines one or more activities, with ActivityOptions provided in the supplied block.
Instance Attribute Details
#activities ⇒ Object
Gets an list of activities for this Activity.
328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 |
# File 'lib/aws/decider/activity.rb', line 328 module Activities @precursors ||= [] attr_accessor :activity_client, :activities def self.extended(base) base.send :include, InstanceMethods end module InstanceMethods attr_writer :_activity_execution_context def activity_execution_context raise IllegalStateException.new("No activity execution context") unless @_activity_execution_context @_activity_execution_context end def record_activity_heartbeat(details) @_activity_execution_context.record_activity_heartbeat(details) end end # @!visibility private extend Utilities::UpwardLookups # @!visibility private def look_upwards(variable) precursors = self.ancestors.dup precursors.delete(self) results = precursors.map { |x| x.send(variable) if x.methods.map(&:to_sym).include? variable }.compact.flatten.uniq end property(:activities, []) # @!visibility private def ; @activities.map(&:options); end # Defines one or more activities, with {ActivityOptions} provided in the supplied block. # # @param [Array] activity_names # The names of the activities to define. # # @param [Hash] block # {ActivityOptions} to use on the defined activities. # # @example Defining an activity # new_activity_class = Class.new(MyActivity) do # extend Activities # activity :run_activity1 do # { # :default_task_heartbeat_timeout => "3600", # :default_task_list => task_list, # :default_task_schedule_to_close_timeout => "20", # :default_task_schedule_to_start_timeout => "20", # :default_task_start_to_close_timeout => "20", # :version => "1", # :prefix_name => "#{class_name}Activity" # } # end # def run_activity1 # end # end def activity(*activity_names, &block) = Utilities::(ActivityOptions, block) activity_names.each do |activity_name| prefix_name = .prefix_name || self.to_s activity_type = ActivityType.new(prefix_name + "." + activity_name.to_s, .version, ) @activities ||= [] @activities << activity_type end end end |
#activity_client ⇒ Object
Gets the [ActivityClient] for this Activity.
328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 |
# File 'lib/aws/decider/activity.rb', line 328 module Activities @precursors ||= [] attr_accessor :activity_client, :activities def self.extended(base) base.send :include, InstanceMethods end module InstanceMethods attr_writer :_activity_execution_context def activity_execution_context raise IllegalStateException.new("No activity execution context") unless @_activity_execution_context @_activity_execution_context end def record_activity_heartbeat(details) @_activity_execution_context.record_activity_heartbeat(details) end end # @!visibility private extend Utilities::UpwardLookups # @!visibility private def look_upwards(variable) precursors = self.ancestors.dup precursors.delete(self) results = precursors.map { |x| x.send(variable) if x.methods.map(&:to_sym).include? variable }.compact.flatten.uniq end property(:activities, []) # @!visibility private def ; @activities.map(&:options); end # Defines one or more activities, with {ActivityOptions} provided in the supplied block. # # @param [Array] activity_names # The names of the activities to define. # # @param [Hash] block # {ActivityOptions} to use on the defined activities. # # @example Defining an activity # new_activity_class = Class.new(MyActivity) do # extend Activities # activity :run_activity1 do # { # :default_task_heartbeat_timeout => "3600", # :default_task_list => task_list, # :default_task_schedule_to_close_timeout => "20", # :default_task_schedule_to_start_timeout => "20", # :default_task_start_to_close_timeout => "20", # :version => "1", # :prefix_name => "#{class_name}Activity" # } # end # def run_activity1 # end # end def activity(*activity_names, &block) = Utilities::(ActivityOptions, block) activity_names.each do |activity_name| prefix_name = .prefix_name || self.to_s activity_type = ActivityType.new(prefix_name + "." + activity_name.to_s, .version, ) @activities ||= [] @activities << activity_type end end end |
Class Method Details
.extended(base) ⇒ Object
331 332 333 |
# File 'lib/aws/decider/activity.rb', line 331 def self.extended(base) base.send :include, InstanceMethods end |
Instance Method Details
#activity(*activity_names, &block) ⇒ Object
Defines one or more activities, with AWS::Flow::ActivityOptions provided in the supplied block.
385 386 387 388 389 390 391 392 393 |
# File 'lib/aws/decider/activity.rb', line 385 def activity(*activity_names, &block) = Utilities::(ActivityOptions, block) activity_names.each do |activity_name| prefix_name = .prefix_name || self.to_s activity_type = ActivityType.new(prefix_name + "." + activity_name.to_s, .version, ) @activities ||= [] @activities << activity_type end end |