public async Task <CommandMessage> Process( dynamic commandToProcess, IDictionary <string, object> metadata, int currentPosition, CancellationToken cancellationToken) { switch (commandToProcess) { case ImportStreetNameFromCrab command: var commandImportStreetName = new CommandMessage <ImportStreetNameFromCrab>(command.CreateCommandId(), command, metadata); await _streetNameCommandHandlerModule.ImportStreetNameFromCrab(_getStreetNames, commandImportStreetName, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandImportStreetName, _provenanceFactory, currentPosition); return(commandImportStreetName); case ImportStreetNameStatusFromCrab command: var commandImportStreetNameStatus = new CommandMessage <ImportStreetNameStatusFromCrab>(command.CreateCommandId(), command, metadata); await _streetNameCommandHandlerModule.ImportStreetNameStatusFromCrab(_getStreetNames, commandImportStreetNameStatus, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandImportStreetNameStatus, _provenanceFactory, currentPosition); return(commandImportStreetNameStatus); default: throw new NotImplementedException("Command to import is not recognized"); } }
public async Task <CommandMessage> Process( dynamic commandToProcess, IDictionary <string, object> metadata, int currentPosition, CancellationToken cancellationToken = default(CancellationToken)) { switch (commandToProcess) { case ImportTerrainObjectFromCrab command: var commandTerrainObject = new CommandMessage <ImportTerrainObjectFromCrab>(command.CreateCommandId(), command, metadata); await _parcelCommandHandlerModule.ImportTerrainObject(_getParcels, commandTerrainObject, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandTerrainObject, _provenanceFactory, currentPosition); return(commandTerrainObject); case ImportTerrainObjectHouseNumberFromCrab command: var commandTerrainObjectHouseNumber = new CommandMessage <ImportTerrainObjectHouseNumberFromCrab>(command.CreateCommandId(), command, metadata); await _parcelCommandHandlerModule.ImportTerrainObjectHouseNumber(_getParcels, commandTerrainObjectHouseNumber, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandTerrainObjectHouseNumber, _provenanceFactory, currentPosition); return(commandTerrainObjectHouseNumber); case ImportSubaddressFromCrab command: var commandSubaddress = new CommandMessage <ImportSubaddressFromCrab>(command.CreateCommandId(), command, metadata); await _parcelCommandHandlerModule.ImportSubaddress(_getParcels, commandSubaddress, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandSubaddress, _provenanceFactory, currentPosition); return(commandSubaddress); default: throw new NotImplementedException("Command to import is not recognized"); } }
public async Task <CommandMessage> Process( dynamic commandToProcess, IDictionary <string, object> metadata, int currentPosition, CancellationToken cancellationToken) { switch (commandToProcess) { case ImportHouseNumberFromCrab command: var commandHouseNumberMessage = new CommandMessage <ImportHouseNumberFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportHouseNumberFromCrab(_getAddresses, commandHouseNumberMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandHouseNumberMessage, _provenanceFactory, currentPosition); return(commandHouseNumberMessage); case ImportHouseNumberStatusFromCrab command: var commandHouseNumberStatusMessage = new CommandMessage <ImportHouseNumberStatusFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportHouseNumberStatusFromCrab(_getAddresses, commandHouseNumberStatusMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandHouseNumberStatusMessage, _provenanceFactory, currentPosition); return(commandHouseNumberStatusMessage); case ImportHouseNumberPositionFromCrab command: var commandHouseNumberPositionMessage = new CommandMessage <ImportHouseNumberPositionFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportHouseNumberPositionFromCrab(_getAddresses, commandHouseNumberPositionMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandHouseNumberPositionMessage, _provenanceFactory, currentPosition); return(commandHouseNumberPositionMessage); case ImportHouseNumberMailCantonFromCrab command: var commandHouseNumberMailCantonMessage = new CommandMessage <ImportHouseNumberMailCantonFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportHouseNumberMailCantonFromCrab(_getAddresses, commandHouseNumberMailCantonMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandHouseNumberMailCantonMessage, _provenanceFactory, currentPosition); return(commandHouseNumberMailCantonMessage); case ImportHouseNumberSubaddressFromCrab command: var commandHouseNumberSubaddressMessage = new CommandMessage <ImportHouseNumberSubaddressFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportHouseNumberSubaddressFromCrab(_getAddresses, commandHouseNumberSubaddressMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandHouseNumberSubaddressMessage, _provenanceFactory, currentPosition); return(commandHouseNumberSubaddressMessage); case ImportSubaddressFromCrab command: var commandSubaddressMessage = new CommandMessage <ImportSubaddressFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportSubaddressFromCrab(_getAddresses, commandSubaddressMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandSubaddressMessage, _provenanceFactory, currentPosition); return(commandSubaddressMessage); case ImportSubaddressStatusFromCrab command: var commandSubaddressStatusMessage = new CommandMessage <ImportSubaddressStatusFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportSubaddressStatusFromCrab(_getAddresses, commandSubaddressStatusMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandSubaddressStatusMessage, _provenanceFactory, currentPosition); return(commandSubaddressStatusMessage); case ImportSubaddressPositionFromCrab command: var commandSubaddressPositionMessage = new CommandMessage <ImportSubaddressPositionFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportSubaddressPositionFromCrab(_getAddresses, commandSubaddressPositionMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandSubaddressPositionMessage, _provenanceFactory, currentPosition); return(commandSubaddressPositionMessage); case ImportSubaddressMailCantonFromCrab command: var commandSubaddressMailCantonMessage = new CommandMessage <ImportSubaddressMailCantonFromCrab>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.ImportSubaddressMailCantonFromCrab(_getAddresses, commandSubaddressMailCantonMessage, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandSubaddressMailCantonMessage, _provenanceFactory, currentPosition); return(commandSubaddressMailCantonMessage); case AssignPersistentLocalIdForCrabHouseNumberId command: var commandAssignPersistentLocalIdForCrabHouseNumberId = new CommandMessage <AssignPersistentLocalIdForCrabHouseNumberId>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.AssignPersistentLocalIdForCrabHouseNumberId(_getAddresses, commandAssignPersistentLocalIdForCrabHouseNumberId, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandAssignPersistentLocalIdForCrabHouseNumberId, _addressPersistentLocalIdProvenanceFactory, currentPosition); return(commandAssignPersistentLocalIdForCrabHouseNumberId); case AssignPersistentLocalIdForCrabSubaddressId command: var commandAssignPersistentLocalIdForCrabSubaddressId = new CommandMessage <AssignPersistentLocalIdForCrabSubaddressId>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.AssignPersistentLocalIdForCrabSubaddressId(_getAddresses, commandAssignPersistentLocalIdForCrabSubaddressId, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandAssignPersistentLocalIdForCrabSubaddressId, _addressPersistentLocalIdProvenanceFactory, currentPosition); return(commandAssignPersistentLocalIdForCrabSubaddressId); case RequestPersistentLocalIdForCrabHouseNumberId command: var commandRequestPersistentLocalIdForCrabHouseNumberId = new CommandMessage <RequestPersistentLocalIdForCrabHouseNumberId>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.RequestPersistentLocalIdForCrabHouseNumberId(_getAddresses, commandRequestPersistentLocalIdForCrabHouseNumberId, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandRequestPersistentLocalIdForCrabHouseNumberId, _addressPersistentLocalIdProvenanceFactory, currentPosition); return(commandRequestPersistentLocalIdForCrabHouseNumberId); case RequestPersistentLocalIdForCrabSubaddressId command: var commandRequestPersistentLocalIdForCrabSubaddressId = new CommandMessage <RequestPersistentLocalIdForCrabSubaddressId>(command.CreateCommandId(), command, metadata); await _addressCommandHandlerModule.RequestPersistentLocalIdForCrabSubaddressId(_getAddresses, commandRequestPersistentLocalIdForCrabSubaddressId, cancellationToken); AddProvenancePipe.AddProvenance(() => _concurrentUnitOfWork, commandRequestPersistentLocalIdForCrabSubaddressId, _addressPersistentLocalIdProvenanceFactory, currentPosition); return(commandRequestPersistentLocalIdForCrabSubaddressId); default: throw new NotImplementedException("Command to import is not recognized"); } }