Skip to content

struct Athena::Framework::Action(Controller, ActionType, ReturnType, ArgTypeTuple, ArgumentsType, ParamConverterType)
inherits Athena::Framework::ActionBase #

Represents a controller action that will handle a request.

Includes metadata about the endpoint, such as its controller, arguments, return type, and the action that should be executed.

Constructors#

.new(action : ActionType, arguments : ArgumentsType, param_converters : ParamConverterType, annotation_configurations : ACF::AnnotationConfigurations, params : Array(ATH::Params::ParamInterface), _controller : Controller.class, _return_type : ReturnType.class, _arg_types : ArgTypeTuple.class)#

View source

Methods#

#annotation_configurations : ACF::AnnotationConfigurations#

Returns annotation configurations registered via Athena::Config.configuration_annotation and applied to self.

These configurations could then be accessed within ATH::ParamConverters and/or ATH::Listenerss. See ATH::Events::RequestAware for an example.

View source

#arguments : ArgumentsType#

Returns an Array(ATH::Arguments::ArgumentMetadata) that self requires.

View source

#controller : Controller.class#

The ATH::Controller that includes self.

View source

#execute(arguments : Array) : ReturnType#

Executes the action related to self with the provided arguments array.

View source

#param_converters : ParamConverterType#

Returns a Tuple of ATH::ParamConverter::ConfigurationInterface representing the ATHA::ParamConverters applied to self.

View source

#params : Array(ATH::Params::ParamInterface)#

View source

#return_type : ReturnType.class#

The type that self's route should return.

View source