public InventoryViewModel(IDataService dataService, IMvxMessenger messenger, IBackupService oneDriveService) : base(dataService, messenger, oneDriveService) { _dataService = dataService; _messenger = messenger; // Only register message once (prevents multiple calls) if (_messenger.CountSubscriptionsFor <ItemQuantityUpMessage>() == 0) { _upToken = _messenger.Subscribe <ItemQuantityUpMessage>(message => { ItemQuantityUpCommand.Execute(message.Item); }); } if (_messenger.CountSubscriptionsFor <ItemQuantityDownMessage>() == 0) { _downToken = _messenger.Subscribe <ItemQuantityDownMessage>(message => { ItemQuantityDownCommand.Execute(message.Item); }); } _refreshToken = _messenger.Subscribe <CollectionChangedMessage>(Refresh); Items = _dataService.AllItems(); }
static void Initialize(IMvxMessenger messenger) { Gai.SharedInstance.DispatchInterval = 60; Gai.SharedInstance.TrackUncaughtExceptions = true; Gai.SharedInstance.GetTracker(TrackingId); screenNameToken = messenger.Subscribe <GaScreenNameMessage>((m) => SetScreenName(m)); int count = messenger.CountSubscriptionsFor <GaScreenNameMessage>(); eventToken = messenger.Subscribe <GaEventMessage>(CreateEvent); exceptionToken = messenger.Subscribe <GaExceptionMessage>(CreateException); performanceToken = messenger.Subscribe <GaPerformanceTimingMessage>(CreatePerformanceMetric); publishToken = messenger.Subscribe <GaPublishMessage>(PublishAll); }