private void HandleWebApiRequest(ActWebAPIBase act) { HttpWebClientUtils WebAPI = new HttpWebClientUtils(); //Call for Request Construction if (WebAPI.RequestContstructor(act, WebServicesProxy)) { WebAPI.SaveRequest(SaveRequestXML, SavedXMLDirectoryPath); Reporter.ToLog(eLogLevel.INFO, "RequestContstructor passed successfully", null, true, true); if (WebAPI.SendRequest() == true) { Reporter.ToLog(eLogLevel.INFO, "SendRequest passed successfully", null, true, true); //Call for response validation bool dontFailActionOnBadResponse = false; Boolean.TryParse(act.GetInputParamCalculatedValue(ActWebAPIBase.Fields.DoNotFailActionOnBadRespose), out dontFailActionOnBadResponse); if (!dontFailActionOnBadResponse) { WebAPI.ValidateResponse(); } Reporter.ToLog(eLogLevel.INFO, "ValidateResponse passed successfully", null, true, true); WebAPI.SaveResponseToFile(SaveResponseXML, SavedXMLDirectoryPath); WebAPI.HandlePostExecutionOperations(); //Parse response WebAPI.ParseRespondToOutputParams(); Reporter.ToLog(eLogLevel.INFO, "ParseRespondToOutputParams passed successfully", null, true, true); } } }
private void RequestBodyType_Selection(object sender, RoutedEventArgs e) { mAct.AddOrUpdateInputParamValue(ActWebAPIBase.Fields.RequestBodyTypeRadioButton, (((RadioButton)sender).Tag).ToString()); if ((mAct.GetInputParamValue(ActWebAPIBase.Fields.RequestBodyTypeRadioButton)) == ApplicationAPIUtils.eRequestBodyType.FreeText.ToString()) { FreeTextStackPanel.Visibility = System.Windows.Visibility.Visible; if (!String.IsNullOrEmpty((mAct.GetInputParamCalculatedValue(ActWebAPIBase.Fields.TemplateFileNameFileBrowser)))) { TemplateFileNameFileBrowser.ValueTextBox.Text = string.Empty; } TemplateStackPanel.Visibility = System.Windows.Visibility.Collapsed; RequestBodyTypePanel.Visibility = System.Windows.Visibility.Visible; BodyInputGridPannel.Visibility = System.Windows.Visibility.Collapsed; FreeTextStackPanel.Visibility = Visibility.Visible; } if ((mAct.GetInputParamValue(ActWebAPIBase.Fields.RequestBodyTypeRadioButton)) == ApplicationAPIUtils.eRequestBodyType.TemplateFile.ToString()) { TemplateStackPanel.Visibility = System.Windows.Visibility.Visible; if (!String.IsNullOrEmpty((mAct.GetInputParamCalculatedValue(ActWebAPIBase.Fields.TemplateFileNameFileBrowser)))) { RequestBodyUCValueExpression.ValueTextBox.Text = string.Empty; } FreeTextStackPanel.Visibility = System.Windows.Visibility.Collapsed; RequestBodyTypePanel.Visibility = System.Windows.Visibility.Visible; BodyInputGridPannel.Visibility = System.Windows.Visibility.Collapsed; FreeTextStackPanel.Visibility = Visibility.Collapsed; } else if ((mAct.GetInputParamValue(ActWebAPIRest.Fields.ContentType) == ApplicationAPIUtils.eContentType.XwwwFormUrlEncoded.ToString()) || (mAct.GetInputParamValue(ActWebAPIRest.Fields.ContentType) == ApplicationAPIUtils.eContentType.FormData.ToString())) { if (!String.IsNullOrEmpty((mAct.GetInputParamCalculatedValue(ActWebAPIBase.Fields.TemplateFileNameFileBrowser)))) { RequestBodyUCValueExpression.ValueTextBox.Text = string.Empty; } if (!String.IsNullOrEmpty((mAct.GetInputParamCalculatedValue(ActWebAPIBase.Fields.TemplateFileNameFileBrowser)))) { TemplateFileNameFileBrowser.ValueTextBox.Text = string.Empty; } FreeTextStackPanel.Visibility = System.Windows.Visibility.Collapsed; TemplateStackPanel.Visibility = System.Windows.Visibility.Collapsed; RequestBodyTypePanel.Visibility = System.Windows.Visibility.Collapsed; BodyInputGridPannel.Visibility = System.Windows.Visibility.Visible; } }
private bool SetAuthorization() { //Set Authentication method and retrieve fields ApplicationAPIUtils.eAuthType AuthorizationType = (ApplicationAPIUtils.eAuthType)mAct.GetInputParamCalculatedValue <ApplicationAPIUtils.eAuthType>(ActWebAPIBase.Fields.AuthorizationType); switch (AuthorizationType) { case ApplicationAPIUtils.eAuthType.NoAuthentication: break; case ApplicationAPIUtils.eAuthType.BasicAuthentication: string AuthorizationUser = mAct.GetInputParamCalculatedValue(ActWebAPIBase.Fields.AuthUsername); string AuthorizationPassword = mAct.GetInputParamCalculatedValue(ActWebAPIBase.Fields.AuthPassword); if ((!string.IsNullOrEmpty(AuthorizationUser) || (!string.IsNullOrEmpty(AuthorizationPassword)))) { byte[] encodedAuthorization = Encoding.ASCII.GetBytes(AuthorizationUser + ":" + AuthorizationPassword); Client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(encodedAuthorization)); } else { mAct.Error = "Request setup Failed because of missing/wrong input"; mAct.ExInfo = "Authorization User/Password is missing"; return(false); } break; } return(true); }