/// <summary> /// Processes the specified arguments. /// </summary> /// <param name="args">The arguments.</param> public override void Process(Sitecore.Commerce.Pipelines.ServicePipelineArgs args) { Assert.ArgumentNotNull(args, "args"); Assert.ArgumentNotNull(args.Request, "args.request"); Assert.ArgumentNotNull(args.Result, "args.result"); RefSFArguments.TranslateEntityToOrderAddressRequest request = (RefSFArguments.TranslateEntityToOrderAddressRequest)args.Request; Assert.ArgumentNotNull(request.SourceParty, "request.SourceParty"); Assert.ArgumentNotNull(request.DestinationAddress, "request.DestinationAddress"); if (request.SourceParty is ConnectOrderModels.CommerceParty) { this.TranslateCommerceParty(request.SourceParty as ConnectOrderModels.CommerceParty, request.DestinationAddress); } else if (request.SourceParty is EmailParty) { this.TranslateEmailParty(request.SourceParty as EmailParty, request.DestinationAddress); } else { this.TranslateCustomParty(request.SourceParty, request.DestinationAddress); } TranslateEntityToOrderAddressResult result = (TranslateEntityToOrderAddressResult)args.Result; result.Address = request.DestinationAddress; }
/// <summary> /// Processes the specified arguments. /// </summary> /// <param name="args">The arguments.</param> public override void Process(Sitecore.Commerce.Pipelines.ServicePipelineArgs args) { Assert.ArgumentNotNull(args, "args"); Assert.ArgumentNotNull(args.Request, "args.request"); Assert.ArgumentNotNull(args.Result, "args.result"); Party requestSourceParty; OrderAddress requestDestinationAddress; if (args.Request is TranslateEntityToOrderAddressRequest) { var refStorefrontRequest = (TranslateEntityToOrderAddressRequest)args.Request; Assert.ArgumentNotNull(refStorefrontRequest.SourceParty, "request.SourceParty"); Assert.ArgumentNotNull(refStorefrontRequest.DestinationAddress, "request.DestinationAddress"); requestSourceParty = refStorefrontRequest.SourceParty; requestDestinationAddress = refStorefrontRequest.DestinationAddress; } else { var csConnectRequest = (Sitecore.Commerce.Connect.CommerceServer.Orders.Pipelines.TranslateEntityToOrderAddressRequest)args.Request; Assert.ArgumentNotNull(csConnectRequest.SourceParty, "request.SourceParty"); Assert.ArgumentNotNull(csConnectRequest.DestinationAddress, "request.DestinationAddress"); requestSourceParty = csConnectRequest.SourceParty; requestDestinationAddress = csConnectRequest.DestinationAddress; } if (requestSourceParty is ConnectOrderModels.CommerceParty) { this.TranslateCommerceParty(requestSourceParty as ConnectOrderModels.CommerceParty, requestDestinationAddress); } else if (requestSourceParty is EmailParty) { this.TranslateEmailParty(requestSourceParty as EmailParty, requestDestinationAddress); } else { this.TranslateCustomParty(requestSourceParty, requestDestinationAddress); } TranslateEntityToOrderAddressResult result = (TranslateEntityToOrderAddressResult)args.Result; result.Address = requestDestinationAddress; }