Exemple #1
0
        internal void SetConfiguration(int rpdePageSize, OrderIdTemplate orderIdTemplate, SingleIdTemplate <SellerIdComponents> sellerIdTemplate, Uri ordersFeedBaseUrl, OrderType feedType)
        {
            base.SetConfiguration(orderIdTemplate, sellerIdTemplate);

            this.RPDEPageSize = rpdePageSize;

            // Allow these to be overridden by implementations if customisation is required
            this.FeedUrl = new Uri(ordersFeedBaseUrl.ToString() + "/" + (feedType == OrderType.Order ? "orders" : "order-proposals") + "-rpde");
        }
Exemple #2
0
        internal void SetConfiguration(int rpdePageSize, OrderIdTemplate orderIdTemplate, SingleIdTemplate <SellerIdComponents> sellerIdTemplate, Uri offersFeedUrl)
        {
            this.OrderIdTemplate = orderIdTemplate;

            this.SellerIdTemplate = sellerIdTemplate;

            this.RPDEPageSize = rpdePageSize;

            // Allow these to be overridden by implementations if customisation is required
            this.FeedUrl = offersFeedUrl;
        }
        public void SingleIdTemplate_GetIdComponents_IdToEnum()
        {
            var template = new OrderIdTemplate(
                "{+BaseUrl}api/{OrderType}/{uuid}",
                "{+BaseUrl}api/{OrderType}/{uuid}#/orderedItems/{OrderItemIdLong}"
                );

            template.RequiredBaseUrl = new Uri("https://example.com/");

            var components = template.GetOrderItemIdComponents("client", new Uri("https://example.com/api/orders/asdf#/orderedItems/123"));

            Assert.NotNull(components);
            Assert.Equal(OrderType.Order, components.OrderType);
            Assert.Equal("asdf", components.uuid);
            Assert.Equal(123, components.OrderItemIdLong);
        }
Exemple #4
0
        public void SingleIdTemplate_GetIdComponents_IdToEnum()
        {
            var template = new OrderIdTemplate(
                "{+BaseUrl}api/{OrderType}/{uuid}",
                "{+BaseUrl}api/{OrderType}/{uuid}#/orderedItems/{OrderItemIdLong}"
                );

            template.RequiredBaseUrl = new Uri("https://example.com/");

            var components = template.GetOrderItemIdComponents("client", new Uri("https://example.com/api/orders/3cbb8557-ca8f-4889-b21f-a59f860f8d25#/orderedItems/123"));

            Assert.NotNull(components);
            Assert.Equal(OrderType.Order, components.OrderType);
            Assert.Equal(new Guid("3cbb8557-ca8f-4889-b21f-a59f860f8d25"), components.uuid);
            Assert.Equal(123, components.OrderItemIdLong);
        }
        public void SingleIdTemplate_GetIdComponents_EnumToId()
        {
            var template = new OrderIdTemplate(
                "{+BaseUrl}api/{OrderType}/{uuid}",
                "{+BaseUrl}api/{OrderType}/{uuid}#/orderedItems/{OrderItemIdLong}"
                );

            template.RequiredBaseUrl = new Uri("https://example.com/");

            OrderIdComponents components = new OrderIdComponents
            {
                uuid            = "asdf",
                OrderItemIdLong = 123,
                OrderType       = OrderType.Order
            };

            var id = template.RenderOrderItemId(components);

            Assert.Equal(new Uri("https://example.com/api/orders/asdf#/orderedItems/123"), id);
        }
Exemple #6
0
        public void SingleIdTemplate_GetIdComponents_EnumToId()
        {
            var template = new OrderIdTemplate(
                "{+BaseUrl}api/{OrderType}/{uuid}",
                "{+BaseUrl}api/{OrderType}/{uuid}#/orderedItems/{OrderItemIdLong}"
                );

            template.RequiredBaseUrl = new Uri("https://example.com/");

            OrderIdComponents components = new OrderIdComponents
            {
                uuid            = new Guid("3cbb8557-ca8f-4889-b21f-a59f860f8d25"),
                OrderItemIdLong = 123,
                OrderType       = OrderType.Order
            };

            var id = template.RenderOrderItemId(components);

            Assert.Equal(new Uri("https://example.com/api/orders/3cbb8557-ca8f-4889-b21f-a59f860f8d25#/orderedItems/123"), id);
        }
 public abstract void ProcessCustomerCancellation(OrderIdComponents orderId, SellerIdComponents sellerId, OrderIdTemplate orderIdTemplate, List <OrderIdComponents> orderItemIds);
 public abstract bool CustomerCancelOrderItems(OrderIdComponents orderId, SellerIdComponents sellerId, OrderIdTemplate orderIdTemplate, List <OrderIdComponents> orderItemIds);
Exemple #9
0
 public abstract Task <Order> ProcessOrderCreationFromOrderProposal(OrderIdComponents orderId, OrderIdTemplate orderIdTemplate, ILegalEntity seller, SellerIdComponents sellerId, Order order);
Exemple #10
0
 protected abstract Task TriggerTestAction(OpenBookingSimulateAction simulateAction, OrderIdTemplate orderIdTemplate);
Exemple #11
0
 public abstract Task ProcessOrderProposalCustomerRejection(OrderIdComponents orderId, SellerIdComponents sellerId, OrderIdTemplate orderIdTemplate);
Exemple #12
0
 /// <summary>
 /// Initiate customer cancellation for the specified OrderItems
 /// Note sellerId will always be null in Single Seller mode
 /// </summary>
 /// <returns>True if Order found, False if Order not found</returns>
 public override bool CustomerCancelOrderItems(OrderIdComponents orderId, SellerIdComponents sellerId, OrderIdTemplate orderIdTemplate, List <OrderIdComponents> orderItemIds)
 {
     //throw new OpenBookingException(new CancellationNotPermittedError());
     return(FakeBookingSystem.Database.CancelOrderItem(orderId.ClientId, sellerId.SellerIdLong ?? null /* Hack to allow this to work in Single Seller mode too */, orderId.uuid, orderItemIds.Select(x => x.OrderItemIdLong.Value).ToList(), true));
 }
Exemple #13
0
 protected internal void SetConfiguration(OrderIdTemplate orderIdTemplate, SingleIdTemplate <SellerIdComponents> sellerIdTemplate)
 {
     this.OrderIdTemplate  = orderIdTemplate;
     this.SellerIdTemplate = sellerIdTemplate;
 }