public ICardsDatabase GetLatestCardsDB() { string url = settings.VersionCheck_CardsDBUrl; ICardsDatabase returnValue = null; var requestErrorPolicy = Policy .Handle <System.Net.WebException>() .Fallback( () => { returnValue = trackerFactory.GetService <ICardsDatabase>(); }, (ex, context) => { Logger.Trace(ex, "Exception when retreiving cards DB from {0}", url); Logger log = LogManager.GetLogger(App.UserInfoLogger); log.Info(ex.Message); } ); requestErrorPolicy.Execute(() => { Logger.Trace("Start retreiving cards DB from {0}", url); IHTTPService httpService = trackerFactory.GetService <IHTTPService>(); string cardsDBContent = httpService.SendGetRequest(url); ICardsDatabase cardsDB = trackerFactory.GetFileManager().UpdateCardsDB(cardsDBContent); Logger.Trace("Finished retreiving cards DB from {0}", url); returnValue = cardsDB; }); return(returnValue); }
public AddSingleRewardViewModel(ITrackerFactory trackerFactory) { this.trackerFactory = trackerFactory; cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); CommandAddButtonPressed = new RelayCommand(new Action <object>(AddClicked)); CommandDeleteClicked = new RelayCommand(new Action <object>(DeleteClicked)); }
public OpenPackViewModel(TrackerFactory trackerFactory) { CommandSave = new RealyAsyncCommand <object>(CommandSaveExecute); this.trackerFactory = trackerFactory; settings = trackerFactory.GetService <ISettings>(); cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); InitNewPack(); }
public OpeningPackStatsWindowViewModel(TrackerFactory trackerFactory) : base(trackerFactory) { cardImageService = trackerFactory.GetService <ICardImageService>(); winDialogs = trackerFactory.GetService <IWinDialogs>(); cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); CommandExportToCsv = new RealyAsyncCommand <object>(CommandExportToCsvExecute); CommandOpenCsv = new RealyAsyncCommand <object>(CommandOpenCsvExcute); packSetFilter = AllFilter; }
public void SetPacksToCore(ITracker tracker) { ICardsDatabase cardsDb = TrackerFactory.DefaultTrackerFactory.GetService <ICardsDatabase>(); CardSet core = cardsDb.CardSets.Where(cs => cs.Name == "Core").Single(); foreach (Pack p in tracker.Packs) { p.CardSet = core; } Logger.Info("Converted {0} packs", tracker.Packs.Count); }
public CardInstance(Card card, ITrackerFactory trackerFactory) { this.Card = card; this.trackerFactory = trackerFactory; if (cardImageService == null) { cardImageService = trackerFactory.GetService <ICardImageService>(); } if (cardsDatabase == null) { cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); } }
private void Application_Startup(object sender, StartupEventArgs e) { ConfigurationItemFactory.Default.Targets .RegisterDefinition("UserInfoLogger", typeof(ESLTracker.Utils.NLog.UserInfoLoggerTarget)); AppDomain.CurrentDomain.UnhandledException += (s, ex) => HandleUnhandledException((Exception)ex.ExceptionObject, "AppDomain.CurrentDomain.UnhandledException"); DispatcherUnhandledException += (s, ex) => HandleUnhandledException(ex.Exception, "Application.Current.DispatcherUnhandledException"); TaskScheduler.UnobservedTaskException += (s, ex) => HandleUnhandledException(ex.Exception, "TaskScheduler.UnobservedTaskException"); CheckSingleInstance(); CheckDataFile(); IVersionService vc = TrackerFactory.DefaultTrackerFactory.GetService <IVersionService>(); var settings = TrackerFactory.DefaultTrackerFactory.GetService <ISettings>(); var newVersion = vc.CheckNewAppVersionAvailable(); if (newVersion.IsAvailable) { Logger userInfo = LogManager.GetLogger(App.UserInfoLogger); userInfo.Info(NewVersionAvailable, new Dictionary <string, string> { { OpenChangelog, settings.VersionCheck_LatestBuildUserUrl }, { Download, newVersion.DownloadUrl } }); } if (vc.IsNewCardsDBAvailable()) { ICardsDatabase cardsDB = vc.GetLatestCardsDB(); Logger log = LogManager.GetLogger(App.UserInfoLogger); log.Info(CardsDatabaseUpdated, new object[] { cardsDB.Version, cardsDB.VersionDate.ToShortDateString(), cardsDB.VersionInfo }); } bool isShiftPressed = (Keyboard.Modifiers & ModifierKeys.Shift) == ModifierKeys.Shift; if (settings.General_StartGameWithTracker && !isShiftPressed) { var winApi = TrackerFactory.DefaultTrackerFactory.GetService <IWinAPI>(); var messanger = TrackerFactory.DefaultTrackerFactory.GetService <IMessenger>(); TrackerFactory.DefaultTrackerFactory.GetService <ILauncherService>().StartGame(winApi, messanger); } }
public void UpdateCardsDB(string newContent) { string fileName = ".\\Resources\\cards.json"; IFileWrapper fileWrapper = trackerfactory.GetService <IFileWrapper>(); ICardsDatabase cardsDatabase = trackerfactory.GetService <ICardsDatabase>(); string backupFileName = string.Format("{0}_{1}{2}", Path.GetFileNameWithoutExtension(fileName), cardsDatabase.Version, Path.GetExtension(fileName)); //includes . backupFileName = Path.Combine(Path.GetDirectoryName(fileName), backupFileName); if (fileWrapper.Exists(backupFileName)) { fileWrapper.Delete(backupFileName); } fileWrapper.Move(fileName, backupFileName); fileWrapper.WriteAllText(fileName, newContent); trackerfactory.GetService <ICardsDatabase>().RealoadDB(); }
public void UpdateCardsDBTest002_EnsureNewObjectIsReturned() { string newFileContent = "{some json}"; Mock <ITrackerFactory> trackerFactory = new Mock <ITrackerFactory>(); Mock <ICardsDatabase> newCardsDatabase = new Mock <ICardsDatabase>(); Mock <IFileWrapper> fileWrapper = new Mock <IFileWrapper>(); trackerFactory.Setup(tf => tf.GetService <IFileWrapper>()).Returns(fileWrapper.Object); Mock <ICardsDatabase> cardsDatabase = new Mock <ICardsDatabase>(); cardsDatabase.Setup(cd => cd.RealoadDB()).Returns(newCardsDatabase.Object); trackerFactory.Setup(tf => tf.GetService <ICardsDatabase>()).Returns(cardsDatabase.Object); FileManager fm = new FileManager(trackerFactory.Object); ICardsDatabase actual = fm.UpdateCardsDB(newFileContent); Assert.AreSame(newCardsDatabase.Object, actual); }
public CardListEditorViewModel(ITrackerFactory trackerFactory) { this.trackerFactory = trackerFactory; this.cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); }
static SelectCard() { cardsDatabaseService = TrackerFactory.DefaultTrackerFactory.GetService <ICardsDatabase>(); }
public AddSingleRewardViewModel(ITrackerFactory trackerFactory) { this.trackerFactory = trackerFactory; cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); }
public DeckImporter(ITrackerFactory trackerFactory) { this.trackerFactory = trackerFactory; this.cardsDatabase = trackerFactory.GetService <ICardsDatabase>(); }