Class AbstractProfileAction

    • Method Detail

      • doExecute

        @Nonnull
        protected Event doExecute​(@Nonnull
                                  RequestContext springRequestContext,
                                  @Nonnull
                                  ProfileRequestContext profileRequestContext)
        Spring-aware actions can override this method to fully control the execution of an Action by the Web Flow engine.

        Alternatively they may override AbstractProfileAction.doExecute(ProfileRequestContext) and access Spring information via a SpringRequestContext attached to the profile request context.

        The default implementation attaches the Spring Web Flow request context to the profile request context tree to "narrow" the execution signature to the basic OpenSAML ProfileAction interface. After execution, an EventContext is sought, and used to return a result back to the Web Flow engine. If no context exists, a "proceed" event is signaled.

        Parameters:
        springRequestContext - the Spring request context
        profileRequestContext - a profile request context
        Returns:
        a Web Flow event produced by the action
      • getResult

        @Nonnull
        protected Event getResult​(@Nonnull
                                  ProfileAction action,
                                  @Nonnull
                                  ProfileRequestContext profileRequestContext)
        Examines the profile context for an event to return, or signals a successful outcome if no EventContext is located; the EventContext will be removed upon completion.

        The EventContext must contain a Spring Web Flow Event or a String. Any other type of context data will be ignored.

        Parameters:
        action - the action signaling the event
        profileRequestContext - the profile request context to examine
        Returns:
        an event based on the profile request context, or "proceed"
      • getBean

        @Nullable
        protected <T> T getBean​(@Nonnull
                                ProfileRequestContext profileRequestContext,
                                @Nonnull @NotEmpty
                                String name,
                                @Nonnull
                                Class<T> claz)
        Utilizes the active flow's ApplicationContext to obtain a bean of a given name and class.
        Type Parameters:
        T - the bean type
        Parameters:
        profileRequestContext - the profile request context
        name - bean name
        claz - bean type
        Returns:
        the bean or null
        Since:
        4.3.0
      • getBean

        @Nullable
        protected <T> T getBean​(@Nonnull
                                RequestContext flowRequestContext,
                                @Nonnull @NotEmpty
                                String name,
                                @Nonnull
                                Class<T> claz)
        Utilizes the active flow's ApplicationContext to obtain a bean of a given name and class.
        Type Parameters:
        T - the bean type
        Parameters:
        flowRequestContext - the active flow's request context
        name - bean name
        claz - bean type
        Returns:
        the bean or null
        Since:
        4.3.0
      • getParameter

        @Nullable
        protected <T> T getParameter​(@Nonnull
                                     ProfileRequestContext profileRequestContext,
                                     @Nonnull @NotEmpty
                                     String name)
        Return a casted parameter of a given name from the flow's flow or conversation scope (in that order).
        Type Parameters:
        T - the parameter type
        Parameters:
        profileRequestContext - profile request context
        name - parameter name
        Returns:
        the parameter or null
        Since:
        4.3.0
      • getParameter

        @Nullable
        protected <T> T getParameter​(@Nonnull
                                     RequestContext flowRequestContext,
                                     @Nonnull @NotEmpty
                                     String name)
        Return a casted parameter of a given name from the flow's flow or conversation scope (in that order).
        Type Parameters:
        T - the parameter type
        Parameters:
        flowRequestContext - the active flow's request context
        name - parameter name
        Returns:
        the parameter or null
        Since:
        4.3.0