public SqLiteQuickTransactionStorage(IQuickTransactionFactory quickTransactionFactory, IAccountStorage accountStorage, ICategoryStorage categoryStorage) : base(quickTransactionFactory) { _accountStorage = accountStorage; _categoryStorage = categoryStorage; }
public void Setup() { _accountFactory = new RegularAccountFactory(); _categoryFactory = new RegularCategoryFactory(); _accountStorage = new CachedAccountStorage(new SqLiteAccountStorage(_accountFactory)); _categoryStorage = new CachedCategoryStorage(new SqLiteCategoryStorage(_categoryFactory)); _transactionFactory = new RegularQuickTransactionFactory(); _storage = new CachedQuickTransactionStorage(new SqLiteQuickTransactionStorage(_transactionFactory, _accountStorage, _categoryStorage)); _storage.DeleteAllData(); _transaction = CreateTransaction(); }
public static IQuickTransaction Convert(IDictionary <string, object> line, IQuickTransactionFactory quickTransactionFactory, IAccountStorage accountStorage, ICategoryStorage categoryStorage) { var id = (long)line["id"]; var accountId = (long)(line["accountId"] is DBNull?0L: line["accountId"]); var categoryId = (long)(line["categoryId"] is DBNull ? 0L : line["categoryId"]); var name = line["name"].ToString(); var total = decimal.Parse(line["total"].ToString()); var account = accountStorage.GetAllAccounts().FirstOrDefault(x => x?.Id == accountId); var category = categoryStorage.GetAllCategories().FirstOrDefault(x => x?.Id == categoryId); var weight = decimal.Parse(line["weight"].ToString()); var askForTotal = (long)line["askForTotal"] > 0; var askForWeight = (long)line["askForWeight"] > 0; var transaction = quickTransactionFactory.CreateQuickTransaction(account, category, name, total, id, weight, askForTotal, askForWeight); transaction.Id = id; return(transaction); }
public MemoryQuickTransactionStorage(IQuickTransactionFactory quickTransactionFactory) : base(quickTransactionFactory) { }
protected QuickTransactionStorageBase(IQuickTransactionFactory quickTransactionFactory) { _quickTransactionFactory = quickTransactionFactory; }