private static void EndGetFilledIssues(IAsyncResult asynchronousResult) { // State of request is asynchronous. InternalRequestState<DashboardRequest> requestState = (InternalRequestState<DashboardRequest>)asynchronousResult.AsyncState; // WWB: Stop The Time Out Timer -- Request Has Completed requestState.HttpWebRequestTimer.SafeStop(); try { HttpWebRequest httpWebRequest = requestState.HttpWebRequest; using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.EndGetResponse(asynchronousResult)) { if (httpWebReponse.ContentType.Contains("application/json")) { DashboardResponse response = JsonResponse.Parse<DashboardResponse>(httpWebReponse); ((DashboardRequest)requestState.ExternalRequestState).DashboardResponse = response; requestState.Callback(new WebServiceResponse<DashboardRequest>(requestState.ExternalRequestState)); } else //assume error { DashboardResponse ErrorResponse = new DashboardResponse() { Status = Wp7AzureMgmt.Models.ResponseStatus.IllegalResponse, List = null }; } } } catch (Exception exception) { // WWB: All Exception Are Handled By The Exception Callback if (requestState.ExceptionCallback == null) { throw; } else { // WWB: Package Up A Exception Response Object ExceptionReponse<DashboardRequest> response = new ExceptionReponse<DashboardRequest>() { Exception = exception, Request = requestState.ExternalRequestState }; // Call The Exception Call Back With the Exception Response To Report Exceptions To The Caller requestState.ExceptionCallback(new WebServiceResponse<ExceptionReponse<DashboardRequest>>(response)); } } }
/// <summary> /// Callback from Request For Deployments /// </summary> /// <param name="asynchronousResult">Aync Response From Request</param> private static void HttpWebResponseDeploymentsCallback(IAsyncResult asynchronousResult) { // State of request is asynchronous. InternalRequestState<DeploymentRequest> requestState = (InternalRequestState<DeploymentRequest>)asynchronousResult.AsyncState; // WWB: Stop The Time Out Timer -- Request Has Completed requestState.HttpWebRequestTimer.SafeStop(); try { HttpWebRequest httpWebRequest = requestState.HttpWebRequest; using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.EndGetResponse(asynchronousResult)) { if (httpWebReponse.ContentType.Contains("application/json")) { DeploymentsResponse response = ParseResponseObjectsDeploymentsResponse(httpWebReponse); ((DeploymentRequest)requestState.ExternalRequestState).Deployments = response.Deployments; if (response.Trial != null) { ((DeploymentRequest)requestState.ExternalRequestState).TrialRemaining = response.Trial.TrialRemaining; //((DeploymentRequest)requestState.ExternalRequestState).TrialRemaining = response.TrialResponse; } requestState.Callback(new WebServiceResponse<DeploymentRequest>(requestState.ExternalRequestState)); } else { throw new Exception("IllegalResponse"); //DeploymentsResponse ErrorResponse = new DeploymentsResponse() //{ // Status = DeploymentResponseStatus.IllegalResponse, // Deployments = null, // //TrialResponse = 1 // Trial = null //}; //requestState.Callback(new WebServiceResponse<DeploymentRequest>(requestState.ExternalRequestState)); } } } catch (Exception exception) { // WWB: All Exception Are Handled By The Exception Callback if (requestState.ExceptionCallback == null) { throw; } else { // WWB: Package Up A Exception Response Object ExceptionReponse<DeploymentRequest> response = new ExceptionReponse<DeploymentRequest>() { Exception = exception, Request = requestState.ExternalRequestState }; // Call The Exception Call Back With the Exception Response To Report Exceptions To The Caller requestState.ExceptionCallback(new WebServiceResponse<ExceptionReponse<DeploymentRequest>>(response)); } } }
/// <summary> /// Callback from Request For Upating Status /// </summary> /// <param name="asynchronousResult">Aync Response From Request</param> private static void HttpWebResponseUpdateDeploymentCallback(IAsyncResult asynchronousResult) { // State of request is asynchronous. InternalRequestState<UpdateDeploymentStatusRequest> requestState = (InternalRequestState<UpdateDeploymentStatusRequest>)asynchronousResult.AsyncState; // WWB: Stop The Time Out Timer -- Request Has Completed requestState.HttpWebRequestTimer.SafeStop(); try { HttpWebRequest httpWebRequest = requestState.HttpWebRequest; using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.EndGetResponse(asynchronousResult)) { // Parse response object //requestState.Callback(new WebServiceResponse<UpdateDeploymentStatusRequest>(requestState.ExternalRequestState)); // //requestState.Callback(new WebServiceResponse<DeploymentReinstanceRequest>(requestState.ExternalRequestState)); if (httpWebReponse.ContentType.Contains("application/json")) { AzureFunctionCheckResponse response = ParseResponseObjectsOpStatusResponse(httpWebReponse); ((UpdateDeploymentStatusRequest)requestState.ExternalRequestState).ResultResponse = response; //if (response.FunctionCheckResult != null) //{ // ((UpdateDeploymentStatusRequest)requestState.ExternalRequestState).Result = response.FunctionCheckResult; //} requestState.Callback(new WebServiceResponse<UpdateDeploymentStatusRequest>(requestState.ExternalRequestState)); } else { AzureFunctionCheckResponse ErrorResponse = new AzureFunctionCheckResponse() { WindowsAzureStatus = AzureFunctionCheckResponseStatus.IllegalResponse }; } } } catch (Exception exception) { // WWB: All Exception Are Handled By The Exception Callback if (requestState.ExceptionCallback == null) { throw; } else { // WWB: Package Up A Exception Response Object ExceptionReponse<UpdateDeploymentStatusRequest> response = new ExceptionReponse<UpdateDeploymentStatusRequest>() { Exception = exception, Request = requestState.ExternalRequestState }; // Call The Exception Call Back With the Exception Response To Report Exceptions To The Caller requestState.ExceptionCallback(new WebServiceResponse<ExceptionReponse<UpdateDeploymentStatusRequest>>(response)); } } }
/// <summary> /// Callback from Request For RSS /// </summary> /// <param name="asynchronousResult">Aync Response From Request</param> private static void HttpWebResponseRSSCallback(IAsyncResult asynchronousResult) { // State of request is asynchronous. InternalRequestState<RSSRequest> requestState = (InternalRequestState<RSSRequest>)asynchronousResult.AsyncState; // WWB: Stop The Time Out Timer -- Request Has Completed requestState.HttpWebRequestTimer.SafeStop(); try { HttpWebRequest httpWebRequest = requestState.HttpWebRequest; using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.EndGetResponse(asynchronousResult)) { RSSResponse response = ParseResponseObjectsToXML(httpWebReponse); ((RSSRequest)requestState.ExternalRequestState).Reader = response.Reader; requestState.Callback(new WebServiceResponse<RSSRequest>(requestState.ExternalRequestState)); } } catch (Exception exception) { // WWB: All Exception Are Handled By The Exception Callback if (requestState.ExceptionCallback == null) { throw; } else { // WWB: Package Up A Exception Response Object ExceptionReponse<RSSRequest> response = new ExceptionReponse<RSSRequest>() { Exception = exception, Request = requestState.ExternalRequestState }; // Call The Exception Call Back With the Exception Response To Report Exceptions To The Caller requestState.ExceptionCallback(new WebServiceResponse<ExceptionReponse<RSSRequest>>(response)); } } }