public void Refresh([CanBeNull] Action <Error> onError = null) { if (_demoImplementation == null) { Balance = new List <VirtualCurrencyBalanceModel>(); UpdateVirtualCurrencyBalanceEvent?.Invoke(Balance); Items = new List <InventoryItemModel>(); UpdateItemsEvent?.Invoke(Items); return; } _demoImplementation.GetVirtualCurrencyBalance(balance => { Balance = balance; UpdateVirtualCurrencyBalanceEvent?.Invoke(Balance); }, onError); _demoImplementation.GetInventoryItems(items => { Items = items; UpdateItemsEvent?.Invoke(Items); }, onError); }
private void HandleInventoryUpdate(Action callback) { AllItems.Clear(); AllItems.AddRange(VirtualItems); AllItems.AddRange(Subscriptions); UpdateVirtualCurrencyBalanceEvent?.Invoke(Balance); UpdateItemsEvent?.Invoke(VirtualItems); UpdateSubscriptionsEvent?.Invoke(Subscriptions); RefreshEvent?.Invoke(); callback?.Invoke(); }