public virtual SupplierProductStateCreatedOrMergePatchedOrDeletedDto ToSupplierProductStateEventDto(ISupplierProductEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (ISupplierProductStateCreated)stateEvent; return(ToSupplierProductStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (ISupplierProductStateMergePatched)stateEvent; return(ToSupplierProductStateMergePatchedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public virtual InventoryItemRequirementEntryMvoStateCreatedOrMergePatchedOrDeletedDto ToInventoryItemRequirementEntryMvoStateEventDto(IInventoryItemRequirementEntryMvoEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IInventoryItemRequirementEntryMvoStateCreated)stateEvent; return(ToInventoryItemRequirementEntryMvoStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IInventoryItemRequirementEntryMvoStateMergePatched)stateEvent; return(ToInventoryItemRequirementEntryMvoStateMergePatchedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public HttpResponseMessage Post([FromBody] CreatePartyDto value) { try { value.PartyTypeId = PartyTypeIds.Organization; if (value.PartyId == default(string)) { throw DomainError.Named("nullId", "Aggregate Id in cmd is null, aggregate name: {0}.", "Party"); } _partyApplicationService.When(value as ICreateParty); var idObj = value.PartyId; return(Request.CreateResponse <string>(HttpStatusCode.Created, idObj)); } catch (Exception ex) { var response = HttpServiceExceptionUtils.GetErrorHttpResponseMessage(ex); throw new HttpResponseException(response); } }
public virtual OrderItemStateCreatedOrMergePatchedOrRemovedDto ToOrderItemStateEventDto(IOrderItemEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IOrderItemStateCreated)stateEvent; return(ToOrderItemStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IOrderItemStateMergePatched)stateEvent; return(ToOrderItemStateMergePatchedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public virtual void ThrowOnInvalidStateTransition(ICommand c) { if (((IInventoryItemEntryMvoStateProperties)_state).InventoryItemVersion == InventoryItemEntryMvoState.VersionZero) { if (IsCommandCreate((IInventoryItemEntryMvoCommand)c)) { return; } throw DomainError.Named("premature", "Can't do anything to unexistent aggregate"); } if (IsCommandCreate((IInventoryItemEntryMvoCommand)c)) { throw DomainError.Named("rebirth", "Can't create aggregate that already exists"); } }
private void SetNullInnerIdOrThrowOnInconsistentIds(object innerObject, string innerIdName, object innerIdValue, string outerIdName, object outerIdValue) { if (innerIdValue == null) { ReflectUtils.SetPropertyValue(innerIdName, innerObject, outerIdValue); } else if (!Object.Equals(innerIdValue, outerIdValue)) { if (innerIdValue is string && outerIdValue is string && ((string)innerIdValue).Normalize() == ((string)outerIdValue).Normalize()) { return; } throw DomainError.Named("inconsistentId", "Outer {0} {1} NOT equals inner {2} {3}", outerIdName, outerIdValue, innerIdName, innerIdValue); } }
public void AddPassword(IDomainIdentityService ids, IUserIndexService index, PasswordGenerator pwds, string display, string login, string password) { if (index.IsLoginRegistered(login)) { throw DomainError.Named("duplicate-login", "Login {0} is already taken", login); } var user = new UserId(ids.GetId()); var salt = pwds.CreateSalt(); var token = pwds.CreateToken(); var hash = pwds.HashPassword(password, salt); Apply(new SecurityPasswordAdded(_state.Id, user, display, login, hash, salt, token)); }
protected void ThrowOnWrongEvent(IInOutImageEvent e) { var id = new System.Text.StringBuilder(); id.Append("[").Append("InOutImage|"); var stateEntityIdInOutDocumentNumber = (this as IGlobalIdentity <InOutImageId>).GlobalId.InOutDocumentNumber; var eventEntityIdInOutDocumentNumber = e.InOutImageEventId.InOutDocumentNumber; if (stateEntityIdInOutDocumentNumber != eventEntityIdInOutDocumentNumber) { throw DomainError.Named("mutateWrongEntity", "Entity Id InOutDocumentNumber {0} in state but entity id InOutDocumentNumber {1} in event", stateEntityIdInOutDocumentNumber, eventEntityIdInOutDocumentNumber); } id.Append(stateEntityIdInOutDocumentNumber).Append(","); var stateEntityIdSequenceId = (this as IGlobalIdentity <InOutImageId>).GlobalId.SequenceId; var eventEntityIdSequenceId = e.InOutImageEventId.SequenceId; if (stateEntityIdSequenceId != eventEntityIdSequenceId) { throw DomainError.Named("mutateWrongEntity", "Entity Id SequenceId {0} in state but entity id SequenceId {1} in event", stateEntityIdSequenceId, eventEntityIdSequenceId); } id.Append(stateEntityIdSequenceId).Append(","); id.Append("]"); if (ForReapplying) { return; } var stateVersion = this.Version; var stateEvent = e is IInOutImageStateEvent ? (IInOutImageStateEvent)e : null; if (e == null) { return; } stateEvent.Version = stateVersion; //var stateEventStateVersion = stateEvent.Version; //if (InOutImageState.VersionZero == stateEventStateVersion) //{ // stateEventStateVersion = stateEvent.Version = stateVersion; //} //if (stateVersion != stateEventStateVersion) //{ // throw OptimisticConcurrencyException.Create(stateVersion, stateEventStateVersion, id.ToString()); //} }
protected void ThrowOnWrongEvent(IPicklistRoleEvent e) { var id = new System.Text.StringBuilder(); id.Append("[").Append("PicklistRole|"); var stateEntityIdPicklistId = (this as IGlobalIdentity <PicklistRoleId>).GlobalId.PicklistId; var eventEntityIdPicklistId = e.PicklistRoleEventId.PicklistId; if (stateEntityIdPicklistId != eventEntityIdPicklistId) { throw DomainError.Named("mutateWrongEntity", "Entity Id PicklistId {0} in state but entity id PicklistId {1} in event", stateEntityIdPicklistId, eventEntityIdPicklistId); } id.Append(stateEntityIdPicklistId).Append(","); var stateEntityIdPartyRoleId = (this as IGlobalIdentity <PicklistRoleId>).GlobalId.PartyRoleId; var eventEntityIdPartyRoleId = e.PicklistRoleEventId.PartyRoleId; if (stateEntityIdPartyRoleId != eventEntityIdPartyRoleId) { throw DomainError.Named("mutateWrongEntity", "Entity Id PartyRoleId {0} in state but entity id PartyRoleId {1} in event", stateEntityIdPartyRoleId, eventEntityIdPartyRoleId); } id.Append(stateEntityIdPartyRoleId).Append(","); id.Append("]"); if (ForReapplying) { return; } var stateVersion = this.Version; var stateEvent = e is IPicklistRoleStateEvent ? (IPicklistRoleStateEvent)e : null; if (e == null) { return; } stateEvent.Version = stateVersion; //var stateEventStateVersion = stateEvent.Version; //if (PicklistRoleState.VersionZero == stateEventStateVersion) //{ // stateEventStateVersion = stateEvent.Version = stateVersion; //} //if (stateVersion != stateEventStateVersion) //{ // throw OptimisticConcurrencyException.Create(stateVersion, stateEventStateVersion, id.ToString()); //} }
protected void ThrowOnWrongEvent(IMovementConfirmationLineEvent e) { var id = new System.Text.StringBuilder(); id.Append("[").Append("MovementConfirmationLine|"); var stateEntityIdMovementConfirmationDocumentNumber = (this as IGlobalIdentity <MovementConfirmationLineId>).GlobalId.MovementConfirmationDocumentNumber; var eventEntityIdMovementConfirmationDocumentNumber = e.MovementConfirmationLineEventId.MovementConfirmationDocumentNumber; if (stateEntityIdMovementConfirmationDocumentNumber != eventEntityIdMovementConfirmationDocumentNumber) { throw DomainError.Named("mutateWrongEntity", "Entity Id MovementConfirmationDocumentNumber {0} in state but entity id MovementConfirmationDocumentNumber {1} in event", stateEntityIdMovementConfirmationDocumentNumber, eventEntityIdMovementConfirmationDocumentNumber); } id.Append(stateEntityIdMovementConfirmationDocumentNumber).Append(","); var stateEntityIdLineNumber = (this as IGlobalIdentity <MovementConfirmationLineId>).GlobalId.LineNumber; var eventEntityIdLineNumber = e.MovementConfirmationLineEventId.LineNumber; if (stateEntityIdLineNumber != eventEntityIdLineNumber) { throw DomainError.Named("mutateWrongEntity", "Entity Id LineNumber {0} in state but entity id LineNumber {1} in event", stateEntityIdLineNumber, eventEntityIdLineNumber); } id.Append(stateEntityIdLineNumber).Append(","); id.Append("]"); if (ForReapplying) { return; } var stateVersion = this.Version; var stateEvent = e is IMovementConfirmationLineStateEvent ? (IMovementConfirmationLineStateEvent)e : null; if (e == null) { return; } stateEvent.Version = stateVersion; //var stateEventStateVersion = stateEvent.Version; //if (MovementConfirmationLineState.VersionZero == stateEventStateVersion) //{ // stateEventStateVersion = stateEvent.Version = stateVersion; //} //if (stateVersion != stateEventStateVersion) //{ // throw OptimisticConcurrencyException.Create(stateVersion, stateEventStateVersion, id.ToString()); //} }
protected void ThrowOnWrongEvent(IUserLoginEvent e) { var id = new System.Text.StringBuilder(); id.Append("[").Append("UserLogin|"); var stateEntityIdUserId = (this as IGlobalIdentity <UserLoginId>).GlobalId.UserId; var eventEntityIdUserId = e.UserLoginEventId.UserId; if (stateEntityIdUserId != eventEntityIdUserId) { throw DomainError.Named("mutateWrongEntity", "Entity Id UserId {0} in state but entity id UserId {1} in event", stateEntityIdUserId, eventEntityIdUserId); } id.Append(stateEntityIdUserId).Append(","); var stateEntityIdLoginKey = (this as IGlobalIdentity <UserLoginId>).GlobalId.LoginKey; var eventEntityIdLoginKey = e.UserLoginEventId.LoginKey; if (stateEntityIdLoginKey != eventEntityIdLoginKey) { throw DomainError.Named("mutateWrongEntity", "Entity Id LoginKey {0} in state but entity id LoginKey {1} in event", stateEntityIdLoginKey, eventEntityIdLoginKey); } id.Append(stateEntityIdLoginKey).Append(","); id.Append("]"); if (ForReapplying) { return; } var stateVersion = this.Version; var stateEvent = e is IUserLoginStateEvent ? (IUserLoginStateEvent)e : null; if (e == null) { return; } stateEvent.Version = stateVersion; //var stateEventStateVersion = stateEvent.Version; //if (UserLoginState.VersionZero == stateEventStateVersion) //{ // stateEventStateVersion = stateEvent.Version = stateVersion; //} //if (stateVersion != stateEventStateVersion) //{ // throw OptimisticConcurrencyException.Create(stateVersion, stateEventStateVersion, id.ToString()); //} }
public void DocumentAction(string id, [FromBody] InOutCommandDtos.DocumentActionRequestContent content) { try { var cmd = content.ToDocumentAction(); var idObj = id; if (cmd.DocumentNumber == null) { cmd.DocumentNumber = idObj; } else if (!cmd.DocumentNumber.Equals(idObj)) { throw DomainError.Named("inconsistentId", "Argument Id {0} NOT equals body Id {1}", id, cmd.DocumentNumber); } _inOutApplicationService.When(cmd); } catch (Exception ex) { var response = HttpServiceExceptionUtils.GetErrorHttpResponseMessage(ex); throw new HttpResponseException(response); } }
public void OrderShipGroupAction(string orderId, string shipGroupSeqId, [FromBody] OrderCommandDtos.OrderShipGroupActionRequestContent content) { try { var cmd = content.ToOrderShipGroupAction(); var idObj = new OrderShipGroupId(orderId, shipGroupSeqId); if (cmd.OrderShipGroupId == null) { cmd.OrderShipGroupId = idObj; } else if (!cmd.OrderShipGroupId.Equals(idObj)) { throw DomainError.Named("inconsistentId", "Argument Id {0} NOT equals body Id {1}", idObj, cmd.OrderShipGroupId); } _orderApplicationService.When(cmd); } catch (Exception ex) { var response = HttpServiceExceptionUtils.GetErrorHttpResponseMessage(ex); throw new HttpResponseException(response); } }
public void ConfirmAllItemsIssued(string id, [FromBody] ShipmentCommandDtos.ConfirmAllItemsIssuedRequestContent content) { try { var cmd = content.ToConfirmAllItemsIssued(); var idObj = id; if (cmd.ShipmentId == null) { cmd.ShipmentId = idObj; } else if (!cmd.ShipmentId.Equals(idObj)) { throw DomainError.Named("inconsistentId", "Argument Id {0} NOT equals body Id {1}", id, cmd.ShipmentId); } _shipmentApplicationService.When(cmd); } catch (Exception ex) { var response = ShipmentsControllerUtils.GetErrorHttpResponseMessage(ex); throw new HttpResponseException(response); } }
public void CountItem(string id, [FromBody] PhysicalInventoryCommandDtos.CountItemRequestContent content) { try { var cmd = content.ToCountItem(); var idObj = id; if (cmd.DocumentNumber == null) { cmd.DocumentNumber = idObj; } else if (!cmd.DocumentNumber.Equals(idObj)) { throw DomainError.Named("inconsistentId", "Argument Id {0} NOT equals body Id {1}", id, cmd.DocumentNumber); } _physicalInventoryApplicationService.When(cmd); } catch (Exception ex) { var response = PhysicalInventoriesControllerUtils.GetErrorHttpResponseMessage(ex); throw new HttpResponseException(response); } }
public void DefineAction(RequestId requestId, ProjectId projectId, string outcome, ITimeProvider provider) { // filter request IDs var time = provider.GetUtcNow(); ProjectInfo projectInfo; if (!_aggState.Projects.TryGetValue(projectId, out projectInfo)) { throw DomainError.Named("unknown-project", "Unknown project {0}", projectId); } var actionId = new ActionId(NewGuidIfEmpty(requestId)); Apply(new ActionDefined(_aggState.Id, actionId, projectId, outcome, time)); }
async Task IdempotentlyUpdateAgg(string id, Action <OrganizationAggregate> usingThisMethod) { var agg = await AggRepository.GetAsync <OrganizationAggregate>(id); if (agg == null) { throw DomainError.Named("OrganizationDoesNotExist", string.Empty); } var ov = agg.Version; usingThisMethod(agg); PublishedEvents = agg.PublishedEvents; if (ov != agg.Version) { await AggRepository.StoreAsync(agg); } }
public void MoveStuffToProject(IEnumerable <StuffId> stuffToMove, ProjectId projectId, ITimeProvider provider) { GetProjectOrThrow(projectId); var dateTime = provider.GetUtcNow(); foreach (var stuffId in stuffToMove) { StuffInfo stuffInfo; if (!_aggState.StuffInInbox.TryGetValue(stuffId, out stuffInfo)) { throw DomainError.Named("unknown-stuff", "Unknown stuff {0}", stuffId); } Apply(new StuffArchived(_aggState.Id, stuffId, dateTime)); Apply(new ActionDefined(_aggState.Id, new ActionId(Guid.NewGuid()), projectId, stuffInfo.Description, dateTime)); } }
public void ProduceACar(string employeeName, string carModel, ICarBlueprintLibrary carBlueprintLibrary) { ThrowExceptionIfFactoryIsNotOpen(); if (!_aggregateState.ListOfEmployeeNames.Contains(employeeName)) { throw DomainError.Named("unknown-employee", ":> '{0}' not assigned to factory", employeeName); } if (_aggregateState.EmployeesWhoHaveProducedACarToday.Contains(employeeName)) { throw DomainError.Named("employee-already-produced-car-today", ":> '{0}' not assigned to factory", employeeName); } var design = carBlueprintLibrary.TryToGetBlueprintForModelOrNull(carModel); if (design == null) { throw DomainError.Named("car-model-not-found", "Model '{0}' not found", carModel); } var partsUsedToBuildCar = new List <CarPart>(); foreach (var part in design.RequiredParts) { if (_aggregateState.GetNumberOfAvailablePartsQuantity(part.Name) < part.Quantity) { throw DomainError.Named("required-part-not-found", ":> {0} not found", part.Name); } // remeber the CarPart that will be used to build the specififed carModel partsUsedToBuildCar.Add(new CarPart(part.Name, part.Quantity)); } DoRealWork("produce a car - " + "'" + employeeName + "'" + " is building a '" + carModel + "'"); // As mentioned in Episode 12 of the BTW podcast, this code below is wrong. // The ICarBlueprintLibrary passed in, is not used. Hard coded "parts" was ALWAYS used. // Tried to fix with the partsUsedToBuildCar approach but needs to be tested. // var parts = new[] { new CarPart("chassis", 1), new CarPart("wheels", 4), new CarPart("engine", 1) }; RecordAndRealizeThat(new CarProduced(_aggregateState.Id, employeeName, carModel, partsUsedToBuildCar.ToArray())); }
protected void ThrowOnWrongEvent(IAttributeSetInstanceExtensionFieldMvoStateEvent stateEvent) { var stateEntityId = this.AttributeSetInstanceExtensionFieldId; // Aggregate Id var eventEntityId = stateEvent.StateEventId.AttributeSetInstanceExtensionFieldId; // EntityBase.Aggregate.GetStateEventIdPropertyIdName(); if (stateEntityId != eventEntityId) { throw DomainError.Named("mutateWrongEntity", "Entity Id {0} in state but entity id {1} in event", stateEntityId, eventEntityId); } var stateVersion = this.AttrSetInstEFGroupVersion; var eventVersion = stateEvent.StateEventId.AttrSetInstEFGroupVersion; if (stateVersion != eventVersion) { throw DomainError.Named("concurrencyConflict", "Conflict between state version {0} and event version {1}", stateVersion, eventVersion); } }
protected void ThrowOnWrongEvent(IOrganizationStateEvent stateEvent) { var stateEntityId = this.OrganizationId; // Aggregate Id var eventEntityId = stateEvent.StateEventId.OrganizationId; // EntityBase.Aggregate.GetStateEventIdPropertyIdName(); if (stateEntityId != eventEntityId) { throw DomainError.Named("mutateWrongEntity", "Entity Id {0} in state but entity id {1} in event", stateEntityId, eventEntityId); } var stateVersion = this.Version; var eventVersion = stateEvent.StateEventId.Version; if (stateVersion != eventVersion) { throw DomainError.Named("concurrencyConflict", "Conflict between state version {0} and event version {1}", stateVersion, eventVersion); } }
public void AddPermissionToSecurityItem(UserId userId, string permission) { if (string.IsNullOrEmpty(permission)) { throw DomainError.Named("empty", "Permission can't be empty"); } if (!_state.ContainsUser(userId)) { throw DomainError.Named("invalid-user", "User {0} does not exist", userId.Id); } var user = _state.GetUser(userId); if (!user.Permissions.Contains(permission)) { Apply(new PermissionAddedToSecurityItem(_state.Id, user.Id, user.DisplayName, permission, user.Token)); } }
public virtual void ThrowOnInvalidStateTransition(ICommand c) { if (((IPermissionStateProperties)_state).Version == PermissionState.VersionZero) { if (IsCommandCreate((IPermissionCommand)c)) { return; } throw DomainError.Named("premature", "Can't do anything to unexistent aggregate"); } if (_state.Deleted) { throw DomainError.Named("zombie", "Can't do anything to deleted aggregate."); } if (IsCommandCreate((IPermissionCommand)c)) { throw DomainError.Named("rebirth", "Can't create aggregate that already exists"); } }
public virtual OrganizationStructureTypeStateCreatedOrMergePatchedOrDeletedDto ToOrganizationStructureTypeStateEventDto(IOrganizationStructureTypeEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IOrganizationStructureTypeStateCreated)stateEvent; return(ToOrganizationStructureTypeStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IOrganizationStructureTypeStateMergePatched)stateEvent; return(ToOrganizationStructureTypeStateMergePatchedDto(e)); } else if (stateEvent.EventType == StateEventType.Deleted) { var e = (IOrganizationStructureTypeStateDeleted)stateEvent; return(ToOrganizationStructureTypeStateDeletedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public virtual ShipmentReceiptImageStateCreatedOrMergePatchedOrRemovedDto ToShipmentReceiptImageStateEventDto(IShipmentReceiptImageEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IShipmentReceiptImageStateCreated)stateEvent; return(ToShipmentReceiptImageStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IShipmentReceiptImageStateMergePatched)stateEvent; return(ToShipmentReceiptImageStateMergePatchedDto(e)); } else if (stateEvent.EventType == StateEventType.Removed) { var e = (IShipmentReceiptImageStateRemoved)stateEvent; return(ToShipmentReceiptImageStateRemovedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public virtual void ThrowOnInvalidStateTransition(ICommand c) { if (((IAttributeSetInstanceExtensionFieldMvoStateProperties)_state).AttrSetInstEFGroupVersion == AttributeSetInstanceExtensionFieldMvoState.VersionZero) { if (IsCommandCreate((IAttributeSetInstanceExtensionFieldMvoCommand)c)) { return; } throw DomainError.Named("premature", "Can't do anything to unexistent aggregate"); } if (_state.Deleted) { throw DomainError.Named("zombie", "Can't do anything to deleted aggregate."); } if (IsCommandCreate((IAttributeSetInstanceExtensionFieldMvoCommand)c)) { throw DomainError.Named("rebirth", "Can't create aggregate that already exists"); } }
void ThrowOnInvalidStateTransition(ICommand <UserId> e) { if (_state.Version == 0) { if (e is CreateUser) { return; } throw DomainError.Named("premature", "Can't do anything to unexistent aggregate"); } if (_state.Version == -1) { throw DomainError.Named("zombie", "Can't do anything to deleted aggregate."); } if (e is CreateUser) { throw DomainError.Named("rebirth", "Can't create aggregate that already exists"); } }
public virtual MovementConfirmationLineStateCreatedOrMergePatchedOrRemovedDto ToMovementConfirmationLineStateEventDto(IMovementConfirmationLineEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IMovementConfirmationLineStateCreated)stateEvent; return(ToMovementConfirmationLineStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IMovementConfirmationLineStateMergePatched)stateEvent; return(ToMovementConfirmationLineStateMergePatchedDto(e)); } else if (stateEvent.EventType == StateEventType.Removed) { var e = (IMovementConfirmationLineStateRemoved)stateEvent; return(ToMovementConfirmationLineStateRemovedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public virtual UserClaimMvoStateCreatedOrMergePatchedOrDeletedDto ToUserClaimMvoStateEventDto(IUserClaimMvoEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IUserClaimMvoStateCreated)stateEvent; return(ToUserClaimMvoStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IUserClaimMvoStateMergePatched)stateEvent; return(ToUserClaimMvoStateMergePatchedDto(e)); } else if (stateEvent.EventType == StateEventType.Deleted) { var e = (IUserClaimMvoStateDeleted)stateEvent; return(ToUserClaimMvoStateDeletedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }
public virtual AttributeSetInstanceExtensionFieldStateCreatedOrMergePatchedOrDeletedDto ToAttributeSetInstanceExtensionFieldStateEventDto(IAttributeSetInstanceExtensionFieldEvent stateEvent) { if (stateEvent.EventType == StateEventType.Created) { var e = (IAttributeSetInstanceExtensionFieldStateCreated)stateEvent; return(ToAttributeSetInstanceExtensionFieldStateCreatedDto(e)); } else if (stateEvent.EventType == StateEventType.MergePatched) { var e = (IAttributeSetInstanceExtensionFieldStateMergePatched)stateEvent; return(ToAttributeSetInstanceExtensionFieldStateMergePatchedDto(e)); } else if (stateEvent.EventType == StateEventType.Deleted) { var e = (IAttributeSetInstanceExtensionFieldStateDeleted)stateEvent; return(ToAttributeSetInstanceExtensionFieldStateDeletedDto(e)); } throw DomainError.Named("invalidEventType", String.Format("Invalid state event type: {0}", stateEvent.EventType)); }