ActionContext innerContext = hasPrincipalContext ? new ServiceActionContext(params,
((PrincipalActionContext) inInnerContext).getPrincipal()) : new AsyncActionContext(params);
if (taskHandlerExecution != null)
{
TaskHandlerActionContext outerContext = new TaskHandlerActionContextImpl<ActionContext>(innerContext,
inActionContext.getUserActionRequests());
return taskHandlerExecution.execute(outerContext);
}
return plainExecution.execute(innerContext);
}