예제 #1
0
        public async Task HandleHandlesInventoryItemDeactivated()
        {
            var repositoryMock = new Mock <IReadModelRepository <InventoryItemDetailsDto, Guid> >();
            var hubMock        = new Mock <InventoryHub>();

            var inventoryItemDeactivated = new InventoryItemDeactivated(_itemId)
            {
                Version   = _version,
                TimeStamp = _timeStamp
            };

            hubMock.Setup(x => x.SendUpdateInventoryItemDetailMessage(
                              _itemId, inventoryItemDeactivated))
            .Returns(Task.CompletedTask)
            .Verifiable();
            repositoryMock.Setup(x => x.DeleteById(_itemId))
            .Returns(Task.CompletedTask)
            .Verifiable();

            var target = GetTarget(repositoryMock, hubMock);

            await target.Handle(inventoryItemDeactivated, new CancellationToken(false));

            repositoryMock.Verify();
            hubMock.Verify();
        }
예제 #2
0
        /// <summary>
        /// Handles the specified message.
        /// </summary>
        /// <param name="message">The message.</param>
        /// <param name="token">The token.</param>
        /// <returns>A <see cref="Task" />.</returns>
        public async Task Handle(InventoryItemDeactivated message, CancellationToken token)
        {
            await _database.DeleteById(message.Id);

            // notify hub
            await _hub.SendUpdateInventoryListMessage();
        }
예제 #3
0
        public void Handle(InventoryItemDeactivated message)
        {
            Hub.Clients.All.inventoryItemRemoved(message.AggregateId);

            var list = _readModel.GetInventoryItems();

            Hub.Clients.All.inventoryItemsListUpdated(list);
        }
예제 #4
0
 private static InventoryItemStockView Map(InventoryItemDeactivated e, InventoryItemStockView v)
 {
     return(new InventoryItemStockView
     {
         IsActive = false,
         Sku = v.Sku,
         Count = v.Count,
         OverStockLimit = v.OverStockLimit
     });
 }
예제 #5
0
 public void Handle(InventoryItemDeactivated message)
 {
     if (ReadModelFacade.UseSqlDatabase)
     {
         using (var datastore = new SqlDatabase())
             datastore.InventoryItemDetailsDtoStore.Remove(datastore.Details[message.Id]);
     }
     else
     {
         InMemoryDatabase.Details.Remove(message.Id);
     }
 }
예제 #6
0
 public void Handle(InventoryItemDeactivated message)
 {
     if (ReadModelFacade.UseSqlDatabase)
     {
         using (var datastore = new SqlDatabase())
             datastore.InventoryItemListDtoStore.Remove(datastore.List.Single(x => x.Id == message.Id));
     }
     else
     {
         InMemoryDatabase.List.Remove(InMemoryDatabase.List.Single(x => x.Id == message.Id));
     }
 }
예제 #7
0
        public async Task HandleAsync(InventoryItemDeactivated message)
        {
            Console.WriteLine("InventoryItemDeactivated: " + message.Id);
            var item = await this.repository.GetByIdAsync(message.Id);

            item.Version         = message.OriginalVersion;
            item.LastUpdatedAt   = message.Timestamp;
            item.LastUpdatedById = message.OperatorId;

            item.Activated = false;

            await this.repository.UpdateAsync(item);

            await this.repository.UnitOfWork.CommitAsync();
        }
예제 #8
0
        private void DeleteSummaryItem(InventoryItemDeactivated @event)
        {
            // Define Query
            ISingleResultQuery <InventoryItemSummaryQueryStrategy, InventoryItemSummaryEntity> query = QueryFactory.CreateNewSingleResultQuery <InventoryItemSummaryQueryStrategy, InventoryItemSummaryEntity>();

            query.QueryStrategy.WithRsn(@event.Rsn);

            // Retrieve Data, but remember if no items exist, the value is null
            query = InventoryItemSummaryRepository.Retrieve(query, false);
            InventoryItemSummaryEntity inventoryItem = query.Result;

            // As a previous event will have created this instance we should throw an exception if it is not found.
            if (inventoryItem == null)
            {
                throw new NullReferenceException(string.Format("No entity was found by the id '{0}'", @event.Rsn));
            }

            InventoryItemSummaryRepository.Delete(inventoryItem);
        }
예제 #9
0
 public void Handle(InventoryItemDeactivated message)
 {
     InMemoryDatabase.List.RemoveAll(x => x.Id == message.Id);
 }
예제 #10
0
 public Task Handle(InventoryItemDeactivated message)
 {
     InMemoryDatabase.List.RemoveAll(x => x.Id == message.Id);
     return(Task.CompletedTask);
 }
예제 #11
0
 public Task HandleAsync(InventoryItemDeactivated message)
 {
     InMemoryDatabase.Details.Remove(message.Id);
     return(Task.FromResult(0));
 }
예제 #12
0
 private void Apply(InventoryItemDeactivated e)
 {
     _activated = false;
 }
예제 #13
0
 public void Handle(InventoryItemDeactivated message)
 {
     BullShitDatabase.list.RemoveAll(x => x.Id == message.Id);
 }
예제 #14
0
 public Task Handle(InventoryItemDeactivated message, CancellationToken token)
 {
     InMemoryDatabase.Details.Remove(message.Id);
     return(Task.CompletedTask);
 }
예제 #15
0
 public void Handle(InventoryItemDeactivated @event)
 {
     BullshitDatabase.List.RemoveAll(x => x.Id == @event.Id);
 }
예제 #16
0
 partial void OnHandle(InventoryItemDeactivated @event)
 {
     DeleteDetailedItem(@event);
     DeleteSummaryItem(@event);
 }
예제 #17
0
 public void Handle(InventoryItemDeactivated message)
 {
     InMemoryDatabase.Details.Remove(message.Id);
 }
예제 #18
0
 internal void Apply(InventoryItemDeactivated e)
 {
     activated = false;
 }
예제 #19
0
        public void Handle(InventoryItemDeactivated message)
        {
            var a = _repository.FindOne <InventoryItemDetailsDto>(message.AggregateId);

            _repository.Remove <InventoryItemDetailsDto>(message.AggregateId);
        }
예제 #20
0
 public void Handle(InventoryItemDeactivated message)
 {
     _repository.Remove <InventoryItemListDto>(message.AggregateId);
 }
예제 #21
0
 public void Handle(InventoryItemDeactivated message)
 {
     BullShitDatabase.details.Remove(message.Id);
 }
예제 #22
0
 public Task HandleAsync(InventoryItemDeactivated message)
 {
     InMemoryDatabase.List.RemoveAll(x => x.Id == message.Id);
     return(Task.FromResult(0));
 }
예제 #23
0
 private static void Handle(InventoryItemStockView view, InventoryItemDeactivated notification, AdoNetTransactionUowProvider <TConnectionStringName> uowProvider)
 {
     uowProvider.Value.Connection.Update(Map(notification, view), uowProvider.Value);
 }
예제 #24
0
 public void Handle(InventoryItemDeactivated obj)
 {
     List.Remove(List.First(f => f.Id == obj.Id));
 }
예제 #25
0
 private void Apply(InventoryItemDeactivated e)
 {
     _activated = false;
 }
예제 #26
0
 public void Handle(InventoryItemDeactivated @event)
 {
     BullshitDatabase.Details.Remove(@event.Id);
 }