Example #1
0
        private void ShowGenerateMacUI()
        {
            GenerateMacRequestDto req = new GenerateMacRequestDto();

            try
            {
                req.BillingLabel          = Read_String_Input("Enter BillingLabel:", true);
                req.CustomerTransactionID = Read_String_Input("Enter CustomerTransactionID:", true);
                req.CustomerCode          = Read_String_Input("Enter CustomerCode:", false);
                req.Username              = Read_String_Input("Enter UserName:"******"Enter Password:"******"Enter DataToMAC:", false);
                req.KSN                   = Read_String_Input("Enter KSN:", false);
                req.KeyDerivationType     = Read_KeyDerivationType_Input("Enter KeyDerivationType:");
                req.AdditionalRequestData = Read_MultipleKeysInput("AdditionalRequestData");
                var svc    = _serviceProvider.GetService <IDecryptV3Client>();
                var result = svc.GenerateMac(req).Result;
                if ((result.Response != null) && (result.SoapDetails != null))
                {
                    Console.WriteLine("=====================Response Start======================");
                    Console.WriteLine("Request:");
                    Console.Write(PrettyXml(result.SoapDetails.RequestXml) + "\n");
                    Console.WriteLine("Response:");
                    Console.Write(PrettyXml(result.SoapDetails.ResponseXml) + "\n");
                    Console.WriteLine("=====================Response End======================");
                    Console.WriteLine("=====================Parsed Response Start======================");
                    Console.WriteLine(result.Response.ToString());
                    Console.WriteLine("=====================Parsed Response End======================");
                }
                else
                {
                    Console.WriteLine("Response is null, Please check with input values given and try again");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error while GenerateMac : " + ex.Message.ToString());
            }
        }
Example #2
0
        private async void btn_Process_Click(object sender, RoutedEventArgs e)
        {
            GenerateMacRequestDto generateMacRequest = new GenerateMacRequestDto();

            try
            {
                generateMacRequest.BillingLabel = txt_billinglabel.Text;

                generateMacRequest.CustomerTransactionID = txt_customerTransactionId.Text;
                generateMacRequest.CustomerCode          = txt_Customercode.Text;
                generateMacRequest.Password = txt_Password.Password;
                generateMacRequest.Username = txt_Username.Text;
                var dataToMAC = txt_DataToMac.Text;
                generateMacRequest.DataToMAC             = dataToMAC;
                generateMacRequest.KSN                   = txt_KSn.Text;
                generateMacRequest.KeyDerivationType     = txt_KeyType.Text;
                generateMacRequest.AdditionalRequestData = new List <KeyValuePair <string, string> >();
                foreach (var item in _additionalRequestData)
                {
                    var temp = new KeyValuePair <string, string>(item.Key, item.Value);
                    generateMacRequest.AdditionalRequestData.Add(temp);
                }
                var validator = new GenerateMacRequestDtoValidator();
                var results   = validator.Validate(generateMacRequest);
                if (!results.IsValid)
                {
                    var errorMsg = string.Empty;
                    var failures = results.Errors.ToList();
                    failures.ForEach(x => errorMsg = errorMsg + x + Environment.NewLine);
                    MessageBox.Show(errorMsg, "Validation Failure");
                }
                else
                {
                    IServiceCollection services = new ServiceCollection();
                    IConfiguration     config   = new ConfigurationBuilder().AddJsonFile("appsettings.json", true, true).Build();
                    services.AddSingleton <IConfiguration>(config);
                    services.AddSingleton <IDecryptV3Client, DecryptV3Client>();
                    if (config.GetValue <string>("CERTIFICATE_FILENAME").Trim() == "")
                    {
                        MessageBox.Show("Certificate FileName Not Found In appsettings.json");
                    }
                    else if (config.GetValue <string>("CERTIFICATE_PASSWORD").Trim() == "")
                    {
                        MessageBox.Show("Certificate Password Not Found In appsettings.json");
                    }
                    else
                    {
                        IServiceProvider serviceProvider = services.BuildServiceProvider();
                        var svc    = serviceProvider.GetService <IDecryptV3Client>();
                        var result = await svc.GenerateMac(generateMacRequest);

                        if ((result.Response != null) && (result.SoapDetails != null))
                        {
                            txt_Response.Text = result.Response.ToString();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                txt_Response.Text = "Error while GenerateMac : " + ex.Message.ToString();
            }
        }