Class: Foobara::Agent::DescribeType
- Defined in:
- foobara-agent-0.0.5/src/foobara/agent/describe_type.rb
Constant Summary
Constants included from TruncatedInspect
Instance Attribute Summary collapse
-
#type ⇒ Object
Returns the value of attribute type.
Attributes included from CommandPatternImplementation::Concerns::Subcommands
Attributes included from CommandPatternImplementation::Concerns::Runtime
#exception, #outcome, #raw_result
Attributes included from CommandPatternImplementation::Concerns::Errors
Attributes included from CommandPatternImplementation::Concerns::Inputs
Instance Method Summary collapse
- #execute ⇒ Object
- #find_type ⇒ Object
- #set_json_schema ⇒ Object
- #set_type_name ⇒ Object
- #type_description ⇒ Object
Methods inherited from Command
Methods included from Concern
foobara_class_methods_module_for, foobara_concern?, included
Methods included from CommandPatternImplementation::Concerns::Reflection
Methods included from CommandPatternImplementation::Concerns::DomainMappers
#domain_map, #domain_map!, #run_mapped_subcommand!
Methods included from CommandPatternImplementation::Concerns::Subcommands
#run_subcommand!, #subcommand?
Methods included from CommandPatternImplementation::Concerns::Entities
Methods included from CommandPatternImplementation::Concerns::Transactions
Methods included from NestedTransactionable
#auto_detect_current_transactions, #commit_transaction, #commit_transaction_if_open, #open_transaction, #opened_transactions, #relevant_entity_classes, relevant_entity_classes_for_type, #relevant_entity_classes_for_type, #rollback_transaction, #transactions, #use_transaction, with_needed_transactions_for_type
Methods included from CommandPatternImplementation::Concerns::StateMachine
Methods included from CommandPatternImplementation::Concerns::Runtime
#halt!, #run, #run!, #run_execute, #succeed, #success?, #validate, #validate_records
Methods included from CommandPatternImplementation::Concerns::Errors
Methods included from CommandPatternImplementation::Concerns::Inputs
#cast_and_validate_inputs, #initialize, #method_missing, #respond_to_missing?, #respond_to_missing_for_inputs?
Methods included from TruncatedInspect
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Foobara::CommandPatternImplementation::Concerns::Inputs
Instance Attribute Details
#type ⇒ Object
Returns the value of attribute type.
20 21 22 |
# File 'foobara-agent-0.0.5/src/foobara/agent/describe_type.rb', line 20 def type @type end |
Instance Method Details
#execute ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'foobara-agent-0.0.5/src/foobara/agent/describe_type.rb', line 11 def execute find_type set_type_name set_json_schema type_description end |
#find_type ⇒ Object
22 23 24 |
# File 'foobara-agent-0.0.5/src/foobara/agent/describe_type.rb', line 22 def find_type self.type = command_connector.command_registry.(type_name) end |
#set_json_schema ⇒ Object
34 35 36 |
# File 'foobara-agent-0.0.5/src/foobara/agent/describe_type.rb', line 34 def set_json_schema type_description[:json_schema] = JsonSchemaGenerator.to_json_schema(type) end |
#set_type_name ⇒ Object
30 31 32 |
# File 'foobara-agent-0.0.5/src/foobara/agent/describe_type.rb', line 30 def set_type_name type_description[:full_type_name] = type.scoped_full_name end |
#type_description ⇒ Object
26 27 28 |
# File 'foobara-agent-0.0.5/src/foobara/agent/describe_type.rb', line 26 def type_description @type_description ||= {} end |