private GeometryMethod MapToGeometryMethod(CrabAddressPositionOrigin addressPositionOrigin) { switch (addressPositionOrigin) { case CrabAddressPositionOrigin.ManualIndicationFromLot: case CrabAddressPositionOrigin.ManualIndicationFromParcel: case CrabAddressPositionOrigin.ManualIndicationFromBuilding: case CrabAddressPositionOrigin.ManualIndicationFromMailbox: case CrabAddressPositionOrigin.ManualIndicationFromUtilityConnection: case CrabAddressPositionOrigin.ManualIndicationFromAccessToTheRoad: case CrabAddressPositionOrigin.ManualIndicationFromEntryOfBuilding: case CrabAddressPositionOrigin.ManualIndicationFromStand: case CrabAddressPositionOrigin.ManualIndicationFromBerth: return(GeometryMethod.AppointedByAdministrator); case CrabAddressPositionOrigin.DerivedFromBuilding: case CrabAddressPositionOrigin.DerivedFromParcelGrb: case CrabAddressPositionOrigin.DerivedFromParcelCadastre: case CrabAddressPositionOrigin.DerivedFromStreet: case CrabAddressPositionOrigin.DerivedFromMunicipality: return(GeometryMethod.DerivedFromObject); case CrabAddressPositionOrigin.InterpolatedBasedOnAdjacentHouseNumbersBuilding: case CrabAddressPositionOrigin.InterpolatedBasedOnAdjacentHouseNumbersParcelGrb: case CrabAddressPositionOrigin.InterpolatedBasedOnAdjacentHouseNumbersParcelCadastre: case CrabAddressPositionOrigin.InterpolatedBasedOnRoadConnection: return(GeometryMethod.Interpolated); default: throw new NotImplementedException($"Cannot map {addressPositionOrigin} to GeometryMethod"); } }
public void ImportHouseNumberPositionFromCrab( CrabAddressPositionId addressPositionId, CrabHouseNumberId houseNumberId, WkbGeometry addressPosition, CrabAddressPositionOrigin addressPositionOrigin, CrabAddressNature addressNature, CrabLifetime lifetime, CrabTimestamp timestamp, CrabOperator @operator, CrabModification?modification, CrabOrganisation?organisation) { GuardRemoved(modification); var legacyEvent = new AddressHouseNumberPositionWasImportedFromCrab( addressPositionId, houseNumberId, addressPosition, addressPositionOrigin, addressNature, lifetime, timestamp, @operator, modification, organisation); ApplyPositionChangeFor <AddressHouseNumberPositionWasImportedFromCrab, int>(_crabHouseNumberPositionEvents, legacyEvent); ApplyAddressCompletion(); ApplyChange(legacyEvent); }
public void ImportSubaddressPositionFromCrab( CrabAddressPositionId addressPositionId, CrabSubaddressId subaddressId, WkbGeometry addressPosition, CrabAddressPositionOrigin addressPositionOrigin, CrabAddressNature addressNature, CrabLifetime lifetime, CrabTimestamp timestamp, CrabOperator @operator, CrabModification?modification, CrabOrganisation?organisation) { if (IsRemoved && modification != CrabModification.Delete) { return; } var legacyEvent = new AddressSubaddressPositionWasImportedFromCrab( addressPositionId, subaddressId, addressPosition, addressPositionOrigin, addressNature, lifetime, timestamp, @operator, modification, organisation); ApplyPositionChangeFor <AddressSubaddressPositionWasImportedFromCrab, int>(_crabSubaddressPositionEvents, legacyEvent); ApplyAddressCompletion(); ApplyChange(legacyEvent); }
private AddressHouseNumberPositionWasImportedFromCrab( int addressPositionId, int houseNumberId, string addressPosition, CrabAddressPositionOrigin addressPositionOrigin, string addressNature, LocalDateTime?beginDateTime, LocalDateTime?endDateTime, Instant timestamp, string @operator, CrabModification?modification, CrabOrganisation?organisation) : this( new CrabAddressPositionId(addressPositionId), new CrabHouseNumberId(houseNumberId), new WkbGeometry(addressPosition.ToByteArray()), addressPositionOrigin, new CrabAddressNature(addressNature), new CrabLifetime(beginDateTime, endDateTime), new CrabTimestamp(timestamp), new CrabOperator(@operator), modification, organisation) { }
public void WhenCrabAddressPositionOrigin( CrabAddressPositionOrigin crabAddressPositionOrigin, GeometryMethod geometryMethod, GeometrySpecification geometrySpecification, AddressId addressId, AddressWasRegistered addressWasRegistered, ImportHouseNumberPositionFromCrab importHouseNumberPositionFromCrab) { importHouseNumberPositionFromCrab = importHouseNumberPositionFromCrab .WithCrabAddressPositionOrigin(crabAddressPositionOrigin); Assert(new Scenario() .Given(addressId, addressWasRegistered) .When(importHouseNumberPositionFromCrab) .Then(addressId, new AddressWasPositioned(addressId, new AddressGeometry(geometryMethod, geometrySpecification, GeometryHelpers.CreateEwkbFrom(importHouseNumberPositionFromCrab.AddressPosition))), importHouseNumberPositionFromCrab.ToLegacyEvent())); }
private GeometrySpecification MapToGeometrySpecification(CrabAddressPositionOrigin addressPositionOrigin) { switch (addressPositionOrigin) { case CrabAddressPositionOrigin.ManualIndicationFromLot: return(GeometrySpecification.Lot); case CrabAddressPositionOrigin.ManualIndicationFromParcel: case CrabAddressPositionOrigin.ManualIndicationFromAccessToTheRoad: case CrabAddressPositionOrigin.DerivedFromParcelGrb: case CrabAddressPositionOrigin.DerivedFromParcelCadastre: case CrabAddressPositionOrigin.InterpolatedBasedOnAdjacentHouseNumbersBuilding: case CrabAddressPositionOrigin.InterpolatedBasedOnAdjacentHouseNumbersParcelGrb: case CrabAddressPositionOrigin.InterpolatedBasedOnAdjacentHouseNumbersParcelCadastre: return(GeometrySpecification.Parcel); case CrabAddressPositionOrigin.ManualIndicationFromBuilding: case CrabAddressPositionOrigin.ManualIndicationFromMailbox: case CrabAddressPositionOrigin.ManualIndicationFromUtilityConnection: case CrabAddressPositionOrigin.DerivedFromBuilding: return(GeometrySpecification.BuildingUnit); case CrabAddressPositionOrigin.ManualIndicationFromEntryOfBuilding: return(GeometrySpecification.Entry); case CrabAddressPositionOrigin.ManualIndicationFromBerth: return(GeometrySpecification.Berth); case CrabAddressPositionOrigin.ManualIndicationFromStand: return(GeometrySpecification.Stand); case CrabAddressPositionOrigin.DerivedFromStreet: case CrabAddressPositionOrigin.InterpolatedBasedOnRoadConnection: return(GeometrySpecification.RoadSegment); case CrabAddressPositionOrigin.DerivedFromMunicipality: return(GeometrySpecification.Municipality); default: throw new NotImplementedException($"Cannot map {addressPositionOrigin} to GeometrySpecification"); } }
public ImportSubaddressPositionFromCrab( CrabAddressPositionId addressPositionId, CrabSubaddressId subaddressId, WkbGeometry addressPosition, CrabAddressNature addressNature, CrabAddressPositionOrigin addressPositionOrigin, CrabLifetime lifetime, CrabTimestamp timestamp, CrabOperator @operator, CrabModification?modification, CrabOrganisation?organisation) { AddressPositionId = addressPositionId; SubaddressId = subaddressId; AddressPosition = addressPosition; AddressNature = addressNature; AddressPositionOrigin = addressPositionOrigin; Lifetime = lifetime; Timestamp = timestamp; Operator = @operator; Modification = modification; Organisation = organisation; }
public AddressHouseNumberPositionWasImportedFromCrab( CrabAddressPositionId addressPositionId, CrabHouseNumberId houseNumberId, WkbGeometry addressPosition, CrabAddressPositionOrigin addressPositionOrigin, CrabAddressNature addressNature, CrabLifetime lifetime, CrabTimestamp timestamp, CrabOperator @operator, CrabModification?modification, CrabOrganisation?organisation) { AddressPositionId = addressPositionId; HouseNumberId = houseNumberId; AddressPosition = addressPosition; AddressPositionOrigin = addressPositionOrigin; AddressNature = addressNature; BeginDateTime = lifetime.BeginDateTime; EndDateTime = lifetime.EndDateTime; Timestamp = timestamp; Operator = @operator; Modification = modification; Organisation = organisation; }
public static ImportHouseNumberPositionFromCrab WithCrabAddressPositionOrigin(this ImportHouseNumberPositionFromCrab command, CrabAddressPositionOrigin addressPositionOrigin) { return(new ImportHouseNumberPositionFromCrab( command.AddressPositionId, command.HouseNumberId, command.AddressPosition, command.AddressNature, addressPositionOrigin, command.Lifetime, command.Timestamp, command.Operator, command.Modification, command.Organisation)); }
public static AddressHouseNumberPositionWasImportedFromCrab WithCrabAddressPositionOrigin(this AddressHouseNumberPositionWasImportedFromCrab @event, CrabAddressPositionOrigin addressPositionOrigin) { return(new AddressHouseNumberPositionWasImportedFromCrab( new CrabAddressPositionId(@event.AddressPositionId), new CrabHouseNumberId(@event.HouseNumberId), new WkbGeometry(@event.AddressPosition), addressPositionOrigin, new CrabAddressNature(@event.AddressNature), new CrabLifetime(@event.BeginDateTime, @event.EndDateTime), new CrabTimestamp(@event.Timestamp), new CrabOperator(@event.Operator), @event.Modification, @event.Organisation)); }