Package net.shibboleth.idp.cas.flow.impl

# Class AbstractCASProtocolAction<RequestType,ResponseType>

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.profile.action.AbstractConditionalProfileAction
net.shibboleth.idp.profile.AbstractProfileAction
net.shibboleth.idp.cas.flow.impl.AbstractCASProtocolAction<RequestType,ResponseType>

Type Parameters:
  `RequestType` - request
  `ResponseType` - response

All Implemented Interfaces:
  `Component`, `DestructableComponent`, `InitializableComponent`, `ProfileAction`, `Aware`, `MessageSource`, `MessageSourceAware`, `Action`

Direct Known Subclasses:
  `AbstractOutgoingSamlMessageAction`, `BuildAuthenticationContextAction`, `BuildProxyChainAction`, `BuildRelyingPartyContextAction`, `BuildSAMLMetadataContextAction`, `CheckProxyAuthorizationAction`, `GrantProxyTicketAction`, `GrantServiceTicketAction`, `InitializeLoginAction`, `InitializeProxyAction`, `InitializeValidateAction`, `PopulateProtocolErrorAction`, `PrepareTicketValidationResponseAction`, `ProcessSamlMessageAction`, `PublishProtocolMessageAction`, `UpdateIdPSessionWithSPSessionAction`, `ValidateProxyCallbackAction`, `ValidateRenewAction`, `ValidateTicketAction`, `WriteValidateResponseAction`

public abstract class AbstractCASProtocolAction<RequestType,ResponseType> extends AbstractProfileAction
Base class for CAS protocol actions.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final org.slf4j.Logger`
`log`
Class logger.
`private final Function<ProfileRequestContext,ProtocolContext<RequestType,ResponseType>>`
`protocolLookupFunction`
Looks up a CAS protocol context from IdP profile request context.

## Constructor Summary

Constructors
Constructor
Description
`AbstractCASProtocolAction()`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`protected RequestType`
`getCASRequest(ProfileRequestContext prc)`
Get the CAS request.
`protected ResponseType`
`getCASResponse(ProfileRequestContext prc)`
Get the CAS response.
`protected Service`
`getCASService(ProfileRequestContext prc)`
Get the CAS service.
`protected Ticket`
`getCASTicket(ProfileRequestContext prc)`
Get the CAS ticket.
`protected ProtocolContext<RequestType,ResponseType>`
`getProtocolContext(ProfileRequestContext prc)`
Get the CAS protocol context.
`protected void`
`setCASRequest(ProfileRequestContext prc, RequestType request)`
Set the CAS request.
`protected void`
`setCASResponse(ProfileRequestContext prc, ResponseType response)`
Set the CAS response.
`protected void`
`setCASService(ProfileRequestContext prc, Service service)`
Set the CAS service.
`protected void`
`setCASTicket(ProfileRequestContext prc, Ticket ticket)`
Set the CAS ticket.

### Methods inherited from class net.shibboleth.idp.profile.AbstractProfileAction

`doExecute, execute, getBean, getBean, getMessage, getMessage, getMessage, getParameter, getParameter, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategy`

### Methods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction

`doPreExecute, getActivationCondition, setActivationCondition`

### Methods inherited from class org.opensaml.profile.action.AbstractProfileAction

`doExecute, doPostExecute, doPostExecute, ensureHttpServletRequest, ensureHttpServletResponse, execute, getHttpServletRequest, getHttpServletRequestSupplier, getHttpServletResponse, getHttpServletResponseSupplier, getLogPrefix, isPreExecuteCalled, setHttpServletRequestSupplier, setHttpServletResponseSupplier`

### Methods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent

`checkComponentActive, checkSetterPreconditions, destroy, doDestroy, doInitialize, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, initialize, isDestroyed, isInitialized`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface net.shibboleth.shared.component.InitializableComponent

`initialize, isInitialized`

## Field Details

### log

@Nonnull private final org.slf4j.Logger log
Class logger.

### protocolLookupFunction

@Nonnull private final Function<ProfileRequestContext,ProtocolContext<RequestType,ResponseType>> protocolLookupFunction
Looks up a CAS protocol context from IdP profile request context.

## Constructor Details

### AbstractCASProtocolAction

public AbstractCASProtocolAction()
Constructor.

## Method Details

### getCASRequest

@Nonnull protected RequestType getCASRequest(@Nullable ProfileRequestContext prc) throws EventException
Get the CAS request.

Parameters:
  `prc` - profile request context
Returns:
  CAS request
Throws:
  `EventException` - to propagate an event

### setCASRequest

protected void setCASRequest(@Nullable ProfileRequestContext prc, @Nonnull RequestType request) throws EventException
Set the CAS request.

Parameters:
  `prc` - profile request context
  `request` - CAS request
Throws:
  `EventException` - to propagate an event

### getCASResponse

@Nonnull protected ResponseType getCASResponse(@Nullable ProfileRequestContext prc) throws EventException
Get the CAS response.

Parameters:
  `prc` - profile request context
Returns:
  CAS response
Throws:
  `EventException` - to propagate an event

### setCASResponse

protected void setCASResponse(@Nullable ProfileRequestContext prc, @Nonnull ResponseType response) throws EventException
Set the CAS response.

Parameters:
  `prc` - profile request context
  `response` - CAS response
Throws:
  `EventException` - to propagate an event

### getCASTicket

@Nonnull protected Ticket getCASTicket(ProfileRequestContext prc) throws EventException
Get the CAS ticket.

Parameters:
  `prc` - profile request context
Returns:
  CAS ticket
Throws:
  `EventException` - to propagate an event

### setCASTicket

protected void setCASTicket(@Nullable ProfileRequestContext prc, @Nonnull Ticket ticket) throws EventException
Set the CAS ticket.

Parameters:
  `prc` - profile request context
  `ticket` - CAS ticket
Throws:
  `EventException` - to propagate an event

### getCASService

@Nonnull protected Service getCASService(@Nullable ProfileRequestContext prc) throws EventException
Get the CAS service.

Parameters:
  `prc` - profile request context
Returns:
  CAS service
Throws:
  `EventException` - to propagate an event

### setCASService

protected void setCASService(@Nullable ProfileRequestContext prc, @Nonnull Service service) throws EventException
Set the CAS service.

Parameters:
  `prc` - profile request context
  `service` - CAS service
Throws:
  `EventException` - to propagate an event

### getProtocolContext

@Nonnull protected ProtocolContext<RequestType,ResponseType> getProtocolContext(@Nullable ProfileRequestContext prc) throws EventException
Get the CAS protocol context.

Parameters:
  `prc` - profile request context
Returns:
  CAS protocol context
Throws:
  `EventException` - to propagate an event