Ejemplo n.º 1
0
        public static Parcel Register(ParcelId id, VbrCaPaKey vbrCaPaKey, IParcelFactory factory)
        {
            var parcel = factory.Create();

            parcel.ApplyChange(new ParcelWasRegistered(id, vbrCaPaKey));
            return(parcel);
        }
Ejemplo n.º 2
0
        public async Task ImportTerrainObject(
            Func <IParcels> getParcels,
            IParcelFactory parcelFactory,
            CommandMessage <ImportTerrainObjectFromCrab> message,
            CancellationToken ct)
        {
            var parcels = getParcels();

            var parcelId = ParcelId.CreateFor(message.Command.CaPaKey);
            var parcel   = await parcels.GetOptionalAsync(parcelId, ct);

            if (!parcel.HasValue)
            {
                parcel = new Optional <Parcel>(Parcel.Register(parcelId, message.Command.CaPaKey, parcelFactory));
                parcels.Add(parcelId, parcel.Value);
            }

            parcel.Value.ImportTerrainObjectFromCrab(
                message.Command.TerrainObjectId,
                message.Command.IdentifierTerrainObject,
                message.Command.TerrainObjectNatureCode,
                message.Command.XCoordinate,
                message.Command.YCoordinate,
                message.Command.BuildingNature,
                message.Command.Lifetime,
                message.Command.Timestamp,
                message.Command.Operator,
                message.Command.Modification,
                message.Command.Organisation);
        }
Ejemplo n.º 3
0
        public IdempotentCommandHandlerModuleProcessor(
            Func <IParcels> getParcels,
            IParcelFactory parcelFactory,
            ConcurrentUnitOfWork concurrentUnitOfWork,
            Func <IStreamStore> getStreamStore,
            EventMapping eventMapping,
            EventSerializer eventSerializer,
            ParcelProvenanceFactory provenanceFactory)
        {
            _getParcels           = getParcels;
            _parcelFactory        = parcelFactory;
            _concurrentUnitOfWork = concurrentUnitOfWork;
            _provenanceFactory    = provenanceFactory.CreateFrom;

            var fixGrar1475ProvenanceFactory = new FixGrar1475ProvenanceFactory();

            _fixGrar1475ProvenanceFactory = fixGrar1475ProvenanceFactory.CreateFrom;

            var fixGrar1637ProvenanceFactory = new FixGrar1637ProvenanceFactory();

            _fixGrar1637ProvenanceFactory = fixGrar1637ProvenanceFactory.CreateFrom;

            _parcelCommandHandlerModule = new ParcelCommandHandlerModule(
                getParcels,
                parcelFactory,
                () => concurrentUnitOfWork,
                getStreamStore,
                eventMapping,
                eventSerializer,
                provenanceFactory,
                fixGrar1475ProvenanceFactory,
                fixGrar1637ProvenanceFactory);
        }
        public IParcelOrder GeneratePacels(IParcelFactory parcelFactory, List<IParcelSettings> parcelSettings, IParcelOrderSettings parcelOrderSettings)
        {
            var parcelOrder = new ParcelOrder(parcelOrderSettings);
            foreach (var setting in parcelSettings)
            {
                parcelOrder.Add(parcelFactory.CreateParcel(setting));
            }
            return parcelOrder;

        }
Ejemplo n.º 5
0
        public ParcelCommandHandlerModule(
            Func <IParcels> getParcels,
            IParcelFactory parcelFactory,
            Func <ConcurrentUnitOfWork> getUnitOfWork,
            Func <IStreamStore> getStreamStore,
            EventMapping eventMapping,
            EventSerializer eventSerializer,
            ParcelProvenanceFactory provenanceFactory,
            FixGrar1475ProvenanceFactory fixGrar1475ProvenanceFactory,
            FixGrar1637ProvenanceFactory fixGrar1637ProvenanceFactory)
        {
            For <ImportTerrainObjectFromCrab>()
            .AddSqlStreamStore(getStreamStore, getUnitOfWork, eventMapping, eventSerializer)
            .AddProvenance(getUnitOfWork, provenanceFactory)
            .Handle(async(message, ct) => { await ImportTerrainObject(getParcels, parcelFactory, message, ct); });

            For <ImportTerrainObjectHouseNumberFromCrab>()
            .AddSqlStreamStore(getStreamStore, getUnitOfWork, eventMapping, eventSerializer)
            .AddProvenance(getUnitOfWork, provenanceFactory)
            .Handle(async(message, ct) => { await ImportTerrainObjectHouseNumber(getParcels, message, ct); });

            For <ImportSubaddressFromCrab>()
            .AddSqlStreamStore(getStreamStore, getUnitOfWork, eventMapping, eventSerializer)
            .AddProvenance(getUnitOfWork, provenanceFactory)
            .Handle(async(message, ct) => { await ImportSubaddress(getParcels, message, ct); });

            For <FixGrar1475>()
            .AddSqlStreamStore(getStreamStore, getUnitOfWork, eventMapping, eventSerializer)
            .AddProvenance(getUnitOfWork, fixGrar1475ProvenanceFactory)
            .Handle(async(message, ct) => { await FixGrar1475(getParcels, message, ct); });

            For <FixGrar1637>()
            .AddSqlStreamStore(getStreamStore, getUnitOfWork, eventMapping, eventSerializer)
            .AddProvenance(getUnitOfWork, fixGrar1637ProvenanceFactory)
            .Handle(async(message, ct) => { await FixGrar1637(getParcels, message, ct); });
        }
Ejemplo n.º 6
0
 public Parcels(IParcelFactory parcelFactory, ConcurrentUnitOfWork unitOfWork, IStreamStore eventStore, EventMapping eventMapping, EventDeserializer eventDeserializer)
     : base(parcelFactory.Create, unitOfWork, eventStore, eventMapping, eventDeserializer)
 {
 }
Ejemplo n.º 7
0
        private static Order AddParcelsToOrder(IParcelWithWeightFactory parcelWithweightFactory, IParcelFactory factory)
        {
            var order = new Order();


            var p1 = parcelWithweightFactory.Create(11);

            order.Add(p1);
            var p2 = factory.Create(2);

            order.Add(p2);
            var p3 = factory.Create(3);

            order.Add(p3);
            var p4 = parcelWithweightFactory.Create(12);

            order.Add(p4);
            var p5 = factory.Create(4);

            order.Add(p5);
            var p6 = factory.Create(11);

            order.Add(p6);
            var p7 = factory.Create(51);

            order.Add(p7);
            var p8 = factory.Create(4);

            order.Add(p8);
            return(order);
        }
Ejemplo n.º 8
0
 public ParsingService(IParcelFactory parcelFactory, IWeighingService weighingService, IPricingService pricingService)
 {
     this.parcelFactory   = parcelFactory;
     this.weighingService = weighingService;
     this.pricingService  = pricingService;
 }
 public DeliveryCostCalculator(IParcelFactory parcelFactory, IValidator validator)
 {
     _parcelFactory = parcelFactory;
     _validator     = validator;
 }
Ejemplo n.º 10
0
 public ParcelWithWeightFactory(IParcelFactory parcelFactory)
 {
     _parcelFactory = parcelFactory;
 }