Пример #1
0
        public static string Stringify(this YodleeSecurityInfo oInfo)
        {
            if (oInfo == null)
            {
                return(string.Empty);
            }

            return(string.Format(
                       "Name: {0}, ItemID: {1}, CsId: {2}, Password: {3}",
                       oInfo.Name, oInfo.ItemId, oInfo.CsId, Encrypted.Decrypt(oInfo.Password)
                       ));
        } // Stringify
Пример #2
0
        }         // ConvertData

        private ElapsedTimeInfo UpdateClientOrdersInfo(IDatabaseCustomerMarketPlace databaseCustomerMarketPlace, YodleeSecurityInfo securityInfo, MP_CustomerMarketplaceUpdatingHistory historyRecord)
        {
            Dictionary <BankData, List <BankTransactionData> > ordersList;

            if (databaseCustomerMarketPlace.DisplayName == "ParsedBank")
            {
                //retrieve data from file
                var fileInfo          = Helper.GetFileInfo((int)securityInfo.ItemId);
                var lastTransactionId = Helper.GetLastTransactionId();
                if (fileInfo == null)
                {
                    throw new Exception("file not found");
                }

                var parser     = new TransactionsParser();
                var parsedData = parser.ParseFile(fileInfo.FilePath);

                if (parsedData == null)
                {
                    throw new Exception(string.Format("failed to parse the file {0}", fileInfo.FileName));
                }
                if (!string.IsNullOrEmpty(parsedData.Error))
                {
                    throw new Exception(string.Format("failed to parse the file {0} \n {1}", fileInfo.FileName, parsedData.Error));
                }

                ordersList = ConvertData(parsedData, fileInfo.FileName, securityInfo.ItemId, lastTransactionId);
            }
            else
            {
                //retrieve data from Yodlee API
                ordersList = YodleeConnector.GetOrders(securityInfo.Name, Encrypted.Decrypt(securityInfo.Password),
                                                       securityInfo.ItemId);
            }

            var elapsedTimeInfo = new ElapsedTimeInfo();

            if (ordersList != null)
            {
                var newOrders = new YodleeOrderDictionary {
                    Data = ordersList
                };

                //save orders data
                ElapsedTimeHelper.CalculateAndStoreElapsedTimeForCallInSeconds(elapsedTimeInfo,
                                                                               databaseCustomerMarketPlace.Id,
                                                                               ElapsedDataMemberType.StoreDataToDatabase,
                                                                               () => Helper.StoreYodleeOrdersData(
                                                                                   databaseCustomerMarketPlace,
                                                                                   newOrders,
                                                                                   historyRecord)
                                                                               );
            }

            List <string> directors;

            ElapsedTimeHelper.CalculateAndStoreElapsedTimeForCallInSeconds(elapsedTimeInfo,
                                                                           databaseCustomerMarketPlace.Id,
                                                                           ElapsedDataMemberType.AggregateData,
                                                                           () => Helper.GetAllYodleeOrdersData(DateTime.Now, databaseCustomerMarketPlace, false, out directors));

            //Thread.Sleep(15000);
            return(elapsedTimeInfo);
        } // UpdateClientsOrderInfo