AuthorizationRequest GetAuthorizationRequest(HttpActionContext actionContext)
{
AuthorizationRequest authorizationRequest = actionContext.GetAuthorizationRequest();
try
{
var absolutePath = actionContext.Request.RequestUri.AbsolutePath;
var startIndex = GetNameStartIndex(absolutePath);
if(startIndex > -1)
{
var resourceName = HttpUtility.UrlDecode(absolutePath.Substring(startIndex, absolutePath.Length - startIndex));
var resource = ResourceCatalog.Instance.GetResource(GlobalConstants.ServerWorkspaceID, resourceName);
if(resource != null && resource.ResourceType == ResourceType.ReservedService)
{
authorizationRequest = new AuthorizationRequest
{
RequestType = WebServerRequestType.WebExecuteInternalService,
User = actionContext.ControllerContext.RequestContext.Principal,
Url = actionContext.Request.RequestUri,
QueryString = new QueryString(actionContext.Request.GetQueryNameValuePairs())
};
}
}
}
catch(Exception e)
{
Dev2Logger.Log.Error(e);
}
return authorizationRequest;
}