Class: Temporalio::Workflow::Definition::Query

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

Overview

A query definition. This is usually built as a result of a workflow_query method, but can be manually created to set at runtime on Temporalio::Workflow.query_handlers.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, to_invoke:, description: nil, raw_args: false, arg_hints: nil, result_hint: nil) ⇒ Query

Create a query definition manually. See Temporalio::Workflow::Definition.workflow_query for more details on some of the parameters.

Parameters:

  • name (String, nil)

    Name or nil if dynamic.

  • to_invoke (Symbol, Proc)

    Method name or proc to invoke.

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

    Description for this handler that may appear in CLI/UI. This is currently experimental.

  • raw_args (Boolean) (defaults to: false)

    Whether the parameters should be raw values.

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

    Argument hints for the query.

  • result_hint (Object, nil) (defaults to: nil)

    Result hints for the query.



633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
# File 'lib/temporalio/workflow/definition.rb', line 633

def initialize(
  name:,
  to_invoke:,
  description: nil,
  raw_args: false,
  arg_hints: nil,
  result_hint: nil
)
  @name = name
  @to_invoke = to_invoke
  @description = description
  @raw_args = raw_args
  @arg_hints = arg_hints
  @result_hint = result_hint
  Internal::ProtoUtils.assert_non_reserved_name(name)
end

Instance Attribute Details

#arg_hintsObject (readonly)

Returns the value of attribute arg_hints.



607
608
609
# File 'lib/temporalio/workflow/definition.rb', line 607

def arg_hints
  @arg_hints
end

#descriptionObject (readonly)

Returns the value of attribute description.



607
608
609
# File 'lib/temporalio/workflow/definition.rb', line 607

def description
  @description
end

#nameObject (readonly)

Returns the value of attribute name.



607
608
609
# File 'lib/temporalio/workflow/definition.rb', line 607

def name
  @name
end

#raw_argsObject (readonly)

Returns the value of attribute raw_args.



607
608
609
# File 'lib/temporalio/workflow/definition.rb', line 607

def raw_args
  @raw_args
end

#result_hintObject (readonly)

Returns the value of attribute result_hint.



607
608
609
# File 'lib/temporalio/workflow/definition.rb', line 607

def result_hint
  @result_hint
end

#to_invokeObject (readonly)

Returns the value of attribute to_invoke.



607
608
609
# File 'lib/temporalio/workflow/definition.rb', line 607

def to_invoke
  @to_invoke
end