예제 #1
0
        private SMGResponseStatus CallSMGSelectService()
        {
            _logger.Info("I:--START--:--CallSMGSelectService--");
            SMGResponseStatus ret = new SMGResponseStatus();

            string endpoint = ConfigurationManager.AppSettings["SMGWebServiceURL"].ToString(); // "http://10.202.104.21/BPSJobTrigger/Rest/BPSJobTriggerService.svc/TriggerJob ";
            var    client   = new RestClient(endpoint);
            var    request  = new RestRequest(Method.POST);
            var    req      = new SMGRequest();

            // Set Parameters here
            req.jobCode = ConfigurationManager.AppSettings["SMGJobCode"].ToString(); // "SMGDNC001";
            req.Params  = new SMGParam[] { new SMGParam()
                                           {
                                               key = "value", value = DateTime.Now.ToString("dd/MM/yyyy", new System.Globalization.CultureInfo("en-US"))
                                           } };

            string content = "";
            var    jsonReq = JsonConvert.SerializeObject(req, new JsonSerializerSettings {
                ContractResolver = CustomDataContractResolver.Instance
            });                                                                                                                                    //request.JsonSerializer.Serialize(req);

            request.AddParameter("application/json; charset=utf-8", jsonReq, ParameterType.RequestBody);
            _logger.DebugFormat("-- XMLRequest --\n{0}", request.XmlNamespace);

            var response = client.Execute(request);

            System.Net.HttpStatusCode statusCode = response.StatusCode;
            int numericStatusCode = (int)statusCode;

            if (numericStatusCode == 200)
            {
                content = response.Content;
                JavaScriptSerializer json_serializer = new JavaScriptSerializer();

                SMGResponse wsResponse = json_serializer.Deserialize <SMGResponse>(content);
                //case call success
                //Do something
                //Console.WriteLine("Response Code : " + wsResponse.responseStatus.responseCode);
                //Console.WriteLine("Response Message : " + wsResponse.responseStatus.responseMsg);
                ret = wsResponse.responseStatus;
                _logger.Debug("I:--SUCCESS--:--CallSMGSelectService--");
            }
            else
            {
                //Do something
                //Console.WriteLine("Fail");
                ret.responseCode = response.StatusCode.ToString();
                ret.responseMsg  = response.ErrorMessage;
                _logger.ErrorFormat("O:--FAILED--:Error Message/{0}", response.StatusCode + " " + response.ErrorMessage);
            }

            return(ret);
        }
예제 #2
0
 public DoNotCallBatchSelectServiceResponse()
 {
     SMGStatus = new SMGResponseStatus();
     SLMStatus = new SLMMasterService.ResponseStatus();
 }