コード例 #1
0
        public void ValidateAPI(tkey objtkey, IAPIDataService dataService)
        {
            apiDataService = dataService;

            InitializeValidationRules(objtkey);
            ValidateEmailAddress("Email", "Email Address");
        }
コード例 #2
0
        public tkey UpdateAPI(int KEYID, int ACCOUNTID, string EXCHANGE, string APIKEY, string APISECRET, string PASSPHRASE, out TransactionalInformation transaction)
        {
            transaction = new TransactionalInformation();
            tkey objtkey = new tkey();

            try
            {
                APIDataService.CreateSession();
                objtkey = APIDataService.GetAPI(KEYID);

                objtkey.ACCOUNTID  = ACCOUNTID;
                objtkey.EXCHANGE   = EXCHANGE;
                objtkey.APIKEY     = APIKEY;
                objtkey.APISECRET  = APISECRET;
                objtkey.PASSPHRASE = PASSPHRASE;


                APIDataService.BeginTransaction();
                APIDataService.UpdateAPI(objtkey);
                APIDataService.CommitTransaction(true);
                transaction.ReturnStatus = true;
                transaction.ReturnMessage.Add("API KEY updated successfully.");
            }
            catch (Exception ex)
            {
                WebUtils.TransactionException(transaction, ex);
            }
            finally
            {
                APIDataService.CloseSession();
            }

            return(objtkey);
        }
コード例 #3
0
        public tkey GetAPI(int KeyID, out TransactionalInformation transaction)
        {
            transaction = new TransactionalInformation();
            tkey objtkey = new tkey();

            try
            {
                APIDataService.CreateSession();
                objtkey = APIDataService.GetAPI(KeyID);

                if (objtkey != null)
                {
                    transaction.ReturnStatus = true;
                }
                else
                {
                    transaction.ReturnStatus = false;
                    transaction.ReturnMessage.Add("API KEYID not found.");
                }
            }
            catch (Exception ex)
            {
                WebUtils.TransactionException(transaction, ex);
            }
            finally
            {
                APIDataService.CloseSession();
            }

            return(objtkey);
        }
コード例 #4
0
        public HttpResponseMessage InitializeAPI(HttpRequestMessage request, [FromBody] APIInfo objAPIInfo)
        {
            TransactionalInformation transaction              = new TransactionalInformation();
            APIBusinessService       apiBusinessService       = new APIBusinessService(apiDataService);
            ExchangeBusinessService  exchangesBusinessService = new ExchangeBusinessService(exchangesDataService);

            objAPIInfo.IsAuthenicated = true;

            tkey key = apiBusinessService.GetAPI(objAPIInfo.KEYID, out transaction);

            List <texchanx> exchanges = exchangesBusinessService.GetExchanges(out transaction);

            objAPIInfo.Key           = key;
            objAPIInfo.Exchanges     = exchanges;
            objAPIInfo.ReturnStatus  = transaction.ReturnStatus;
            objAPIInfo.ReturnMessage = transaction.ReturnMessage;

            if (transaction.ReturnStatus == true)
            {
                var response = Request.CreateResponse <APIInfo>(HttpStatusCode.OK, objAPIInfo);
                return(response);
            }

            var badResponse = Request.CreateResponse <APIInfo>(HttpStatusCode.BadRequest, objAPIInfo);

            return(badResponse);
        }
コード例 #5
0
        public HttpResponseMessage GetAPI(int keyID)
        {
            APIInfo objAPIInfo = new APIInfo();
            TransactionalInformation transaction        = new TransactionalInformation();
            APIBusinessService       apiBusinessService = new APIBusinessService(apiDataService);

            objAPIInfo.IsAuthenicated = true;

            tkey key = apiBusinessService.GetAPI(keyID, out transaction);

            objAPIInfo.Key            = key;
            objAPIInfo.IsAuthenicated = true;
            objAPIInfo.ReturnStatus   = transaction.ReturnStatus;
            objAPIInfo.ReturnMessage  = transaction.ReturnMessage;

            if (transaction.ReturnStatus == true)
            {
                var response = Request.CreateResponse <APIInfo>(HttpStatusCode.OK, objAPIInfo);
                return(response);
            }

            var badResponse = Request.CreateResponse <APIInfo>(HttpStatusCode.BadRequest, objAPIInfo);

            return(badResponse);
        }
コード例 #6
0
        public HttpResponseMessage UpdateAPI(HttpRequestMessage request, [FromBody] APIInfo objAPIInfo)
        {
            TransactionalInformation transaction        = new TransactionalInformation();
            APIBusinessService       apiBusinessService = new APIBusinessService(apiDataService);

            tkey objKey = apiBusinessService.UpdateAPI(
                objAPIInfo.KEYID,
                objAPIInfo.ACCOUNTID,
                objAPIInfo.EXCHANGE,
                objAPIInfo.APIKEY,
                objAPIInfo.APISECRET,
                objAPIInfo.PASSPHRASE,
                out transaction);

            if (transaction.ReturnStatus == false)
            {
                objAPIInfo.ReturnMessage    = transaction.ReturnMessage;
                objAPIInfo.ReturnStatus     = transaction.ReturnStatus;
                objAPIInfo.ValidationErrors = transaction.ValidationErrors;
                var badResponse = Request.CreateResponse <APIInfo>(HttpStatusCode.BadRequest, objAPIInfo);
                return(badResponse);
            }

            objAPIInfo.ReturnStatus  = transaction.ReturnStatus;
            objAPIInfo.ReturnMessage = transaction.ReturnMessage;

            var response = Request.CreateResponse <APIInfo>(HttpStatusCode.OK, objAPIInfo);

            return(response);
        }
コード例 #7
0
        public tkey AddAPI(int ACCOUNTID, string EXCHANGE, string APIKEY, string APISECRET, string PASSPHRASE, out TransactionalInformation transaction)
        {
            transaction = new TransactionalInformation();
            APIBusinessRules apiRules = new APIBusinessRules();

            tkey objtkey = new tkey();

            try
            {
                objtkey.ACCOUNTID  = ACCOUNTID;
                objtkey.EXCHANGE   = EXCHANGE;
                objtkey.APIKEY     = APIKEY;
                objtkey.APISECRET  = APISECRET;
                objtkey.PASSPHRASE = PASSPHRASE;

                APIDataService.CreateSession();
                apiRules.ValidateAPI(objtkey, APIDataService);

                if (apiRules.ValidationStatus == true)
                {
                    APIDataService.BeginTransaction();
                    APIDataService.AddAPI(objtkey);
                    APIDataService.CommitTransaction(true);
                    transaction.ReturnStatus = true;
                    transaction.ReturnMessage.Add("API KEY added successfully.");
                }
                else
                {
                    transaction.ReturnStatus     = apiRules.ValidationStatus;
                    transaction.ReturnMessage    = apiRules.ValidationMessage;
                    transaction.ValidationErrors = apiRules.ValidationErrors;
                }
            }
            catch (Exception ex)
            {
                WebUtils.TransactionException(transaction, ex);
            }
            finally
            {
                APIDataService.CloseSession();
            }

            return(objtkey);
        }
コード例 #8
0
        public HttpResponseMessage CreateAPI(HttpRequestMessage request, [FromBody] APIInfo objAPIInfo)
        {
            TransactionalInformation transaction = new TransactionalInformation();
            APIBusinessService       apiBusinessService;

            if ((string.IsNullOrEmpty(objAPIInfo.EXCHANGE)) && (string.IsNullOrEmpty(objAPIInfo.APIKEY)))
            {
                objAPIInfo.ReturnStatus = false;
                objAPIInfo.ReturnMessage.Add("Please leave any of your API KEY information");
                var badResponse = Request.CreateResponse <APIInfo>(HttpStatusCode.BadRequest, objAPIInfo);
                return(badResponse);
            }

            apiBusinessService = new APIBusinessService(apiDataService);
            tkey objKey = apiBusinessService.AddAPI(
                objAPIInfo.ACCOUNTID,
                objAPIInfo.EXCHANGE,
                objAPIInfo.APIKEY,
                objAPIInfo.APISECRET,
                objAPIInfo.PASSPHRASE,
                out transaction);

            if (transaction.ReturnStatus == false)
            {
                objAPIInfo.ReturnMessage    = transaction.ReturnMessage;
                objAPIInfo.ReturnStatus     = transaction.ReturnStatus;
                objAPIInfo.ValidationErrors = transaction.ValidationErrors;
                var badResponse = Request.CreateResponse <APIInfo>(HttpStatusCode.BadRequest, objAPIInfo);
                return(badResponse);
            }

            objAPIInfo.IsAuthenicated = true;
            objAPIInfo.ReturnStatus   = transaction.ReturnStatus;
            objAPIInfo.ReturnMessage.Add("Register API KEY successful.");

            var response = Request.CreateResponse <APIInfo>(HttpStatusCode.OK, objAPIInfo);

            return(response);
        }
コード例 #9
0
 /// <summary>
 /// Initialize API Business Rules
 /// </summary>
 /// <param name="objtkey"></param>
 /// <param name="dataService"></param>
 public void InitializeAPIBusinessRules(tkey objtkey, IAPIDataService dataService)
 {
     apiDataService = dataService;
     InitializeValidationRules(objtkey);
 }
コード例 #10
0
 public void UpdateAPI(tkey key)
 {
     dbConnection.tkeys.Add(key);
 }
コード例 #11
0
        public tkey GetAPI(int keyID)
        {
            tkey key = dbConnection.tkeys.SingleOrDefault(u => u.KEYID == keyID);

            return(key);
        }
コード例 #12
0
 /// <summary>
 /// Create API
 /// </summary>
 public void AddAPI(tkey key)
 {
     dbConnection.tkeys.Add(key);
 }