Exception: Temporalio::Workflow::ContinueAsNewError

Inherits:
Error
  • Object
show all
Defined in:
lib/temporalio/workflow.rb

Overview

Error that is raised by a workflow out of the primary workflow method to issue a continue-as-new.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Error

canceled?

Constructor Details

#initialize(*args, workflow: nil, task_queue: nil, run_timeout: nil, task_timeout: nil, retry_policy: nil, memo: nil, search_attributes: nil, arg_hints: nil, headers: {}) ⇒ ContinueAsNewError

Create a continue as new error.

Parameters:

  • args (Array<Object>)

    Arguments for the new workflow.

  • workflow (Class<Workflow::Definition>, String, Symbol, nil) (defaults to: nil)

    Workflow definition class or workflow name. If unset/nil, the current workflow is used.

  • task_queue (String, nil) (defaults to: nil)

    Task queue for the workflow. If unset/nil, the current workflow task queue is used.

  • run_timeout (Float, nil) (defaults to: nil)

    Timeout of a single workflow run in seconds. The default is not carried over from the current workflow.

  • task_timeout (Float, nil) (defaults to: nil)

    Timeout of a single workflow task in seconds. The default is not carried over from the current workflow.

  • retry_policy (RetryPolicy, nil) (defaults to: nil)

    Retry policy for the workflow. If unset/nil, the current workflow retry policy is used.

  • memo (Hash{String, Symbol => Object}, nil) (defaults to: nil)

    Memo for the workflow. If unset/nil, the current workflow memo is used.

  • search_attributes (SearchAttributes, nil) (defaults to: nil)

    Search attributes for the workflow. If unset/nil, the current workflow search attributes are used.

  • arg_hints (Array<Object>, nil) (defaults to: nil)

    Overrides converter hints for arguments if any. If unset/nil and the workflow definition has arg hints, those are used by default.

  • headers (Hash<String, Object>) (defaults to: {})

    Headers for the workflow. The default is not carried over from the current workflow.



660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
# File 'lib/temporalio/workflow.rb', line 660

def initialize(
  *args,
  workflow: nil,
  task_queue: nil,
  run_timeout: nil,
  task_timeout: nil,
  retry_policy: nil,
  memo: nil,
  search_attributes: nil,
  arg_hints: nil,
  headers: {}
)
  super('Continue as new')
  @args = args
  @workflow = workflow
  @task_queue = task_queue
  @run_timeout = run_timeout
  @task_timeout = task_timeout
  @retry_policy = retry_policy
  @memo = memo
  @search_attributes = search_attributes
  @arg_hints = arg_hints
  @headers = headers
  Workflow._current.initialize_continue_as_new_error(self)
end

Instance Attribute Details

#arg_hintsObject

Returns the value of attribute arg_hints.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def arg_hints
  @arg_hints
end

#argsObject

Returns the value of attribute args.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def args
  @args
end

#headersObject

Returns the value of attribute headers.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def headers
  @headers
end

#memoObject

Returns the value of attribute memo.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def memo
  @memo
end

#retry_policyObject

Returns the value of attribute retry_policy.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def retry_policy
  @retry_policy
end

#run_timeoutObject

Returns the value of attribute run_timeout.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def run_timeout
  @run_timeout
end

#search_attributesObject

Returns the value of attribute search_attributes.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def search_attributes
  @search_attributes
end

#task_queueObject

Returns the value of attribute task_queue.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def task_queue
  @task_queue
end

#task_timeoutObject

Returns the value of attribute task_timeout.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def task_timeout
  @task_timeout
end

#workflowObject

Returns the value of attribute workflow.



636
637
638
# File 'lib/temporalio/workflow.rb', line 636

def workflow
  @workflow
end