public void TestPushRkiKey()
        {
            PushRki2TerminalRequest request = new PushRki2TerminalRequest();

            request.SerialNo = "TEST999";
            request.RkiKey   = "acd";
            Result <TerminalRkiTaskInfo> result = API.PushRkiKey2Terminal(request);

            _logger.DebugFormat("Result=\n{0}", JsonConvert.SerializeObject(result));
        }
        public Result <TerminalRkiTaskInfo> PushRkiKey2Terminal(PushRki2TerminalRequest pushRki2TerminalRequest)
        {
            List <string> validationErrs = validateCreateTerminalRkiRequest(pushRki2TerminalRequest);

            if (validationErrs.Count > 0)
            {
                return(new Result <TerminalRkiTaskInfo>(validationErrs));
            }
            RestRequest request         = new RestRequest(CREATE_TERMINAL_RKI_KEY_URL, Method.POST);
            var         requestBodyJson = JsonConvert.SerializeObject(pushRki2TerminalRequest);

            request.AddParameter(Constants.CONTENT_TYPE_JSON, requestBodyJson, ParameterType.RequestBody);
            var responseContent = Execute(request);

            PushRkiKey2TerminalResponse  response = JsonConvert.DeserializeObject <PushRkiKey2TerminalResponse>(responseContent);
            Result <TerminalRkiTaskInfo> result   = new Result <TerminalRkiTaskInfo>(response);

            return(result);
        }
        private List <string> validateCreateTerminalRkiRequest(PushRki2TerminalRequest request)
        {
            List <string> validationErrs = new List <string>();

            if (request == null)
            {
                validationErrs.Add(GetMsgByKey("parameterPushRki2TerminalRequestNull"));
            }
            else
            {
                if (string.IsNullOrEmpty(request.RkiKey))
                {
                    validationErrs.Add(GetMsgByKey("rkiKeyMandatory"));
                }
                if (string.IsNullOrEmpty(request.SerialNo) && string.IsNullOrEmpty(request.Tid))
                {
                    validationErrs.Add(GetMsgByKey("snTidMandatory"));
                }
            }
            return(validationErrs);
        }