public MP_EBayOrderItemDetail SaveEBayOrderItemInfo(EbayDatabaseOrderItemInfo data, ElapsedTimeInfo elapsedTimeInfo, int mpId) { MP_EbayAmazonCategory mpEbayAmazonCategory = null; if (data.PrimaryCategory != null) { mpEbayAmazonCategory = ElapsedTimeHelper.CalculateAndStoreElapsedTimeForCallInSeconds(elapsedTimeInfo, mpId, ElapsedDataMemberType.RetrieveDataFromDatabase, () => _EbayAmazonCategoryRepository.Get(data.PrimaryCategory.Id)); } var item = new MP_EBayOrderItemDetail { ItemID = data.ItemID, PrimaryCategory = mpEbayAmazonCategory, //SecondaryCategory = data.SecondaryCategory == null ? null : _EbayAmazonCategoryRepository.Get( data.SecondaryCategory.Id ), //FreeAddedCategory = data.FreeAddedCategory == null ? null : _EbayAmazonCategoryRepository.Get( data.FreeAddedCategory.Id ), Title = data.Title, }; ElapsedTimeHelper.CalculateAndStoreElapsedTimeForCallInSeconds(elapsedTimeInfo, mpId, ElapsedDataMemberType.StoreDataToDatabase, () => _EBayOrderItemInfoRepository.Save(item)); _CacheEBayOrderItemInfo.TryAdd(item.ItemID, item); return(item); }
public MP_EbayAmazonCategory AddEbayCategory(IMarketplaceType marketplace, eBayCategoryInfo data, ElapsedTimeInfo elapsedTimeInfo, int mpId) { var item = new MP_EbayAmazonCategory { CategoryId = data.CategoryId, IsVirtual = data.IsVirtual, Name = data.Name, Marketplace = _MarketPlaceRepository.Get(marketplace.InternalId) }; ElapsedTimeHelper.CalculateAndStoreElapsedTimeForCallInSeconds(elapsedTimeInfo, mpId, ElapsedDataMemberType.StoreDataToDatabase, () => _EbayAmazonCategoryRepository.Save(item)); AddCategoryToCache(marketplace, item); return(item); }
private MP_EbayAmazonCategory AddAmazonCategory(IMarketplaceType marketplace, AmazonProductCategory amazonProductCategory, ElapsedTimeInfo elapsedTimeInfo, int mpId) { var cat = new MP_EbayAmazonCategory { CategoryId = amazonProductCategory.CategoryId, Name = amazonProductCategory.CategoryName, Marketplace = _MarketPlaceRepository.Get(marketplace.InternalId), Parent = amazonProductCategory.Parent == null ? null : FindEBayAmazonCategory(marketplace, amazonProductCategory.Parent.CategoryId, elapsedTimeInfo, mpId) ?? AddAmazonCategory(marketplace, amazonProductCategory.Parent, elapsedTimeInfo, mpId) }; AddCategoryToCache(marketplace, cat); ElapsedTimeHelper.CalculateAndStoreElapsedTimeForCallInSeconds(elapsedTimeInfo, mpId, ElapsedDataMemberType.StoreDataToDatabase, () => _EbayAmazonCategoryRepository.Save(cat)); return(cat); }
} // FindLastKnownEbayTransactionTime private void AddCategoryToCache(IMarketplaceType marketplace, MP_EbayAmazonCategory item) { var cache = GetCache(marketplace); cache.TryAdd(item.CategoryId, item); } // AddCategoryToCache