Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
namespace Sitecore.Commerce.Plugin.AdventureWorks.Pipelines.Blocks
{
using System.Threading.Tasks;
using Microsoft.AspNetCore.OData.Builder;
using Sitecore.Commerce.Core;
using Sitecore.Commerce.Core.Commands;
using Sitecore.Framework.Conditions;
using Sitecore.Framework.Pipelines;
/// <summary>
/// The Configure Service Api Block.
/// </summary>
public class ConfigureServiceApiBlock : PipelineBlock<ODataConventionModelBuilder, ODataConventionModelBuilder, CommercePipelineExecutionContext>
{
/// <summary>
/// The _pipeline.
/// </summary>
private readonly IPersistEntityPipeline _pipeline;
public ConfigureServiceApiBlock(IPersistEntityPipeline persistEntityPipeline)
{
this._pipeline = persistEntityPipeline;
}
public override Task<ODataConventionModelBuilder> Run(ODataConventionModelBuilder modelBuilder, CommercePipelineExecutionContext context)
{
Condition.Requires(modelBuilder).IsNotNull($"{base.Name}: The argument can not be null");
var configuration = modelBuilder.Action("SetCartVIPStatus");
configuration.Parameter<string>("cartId");
configuration.Parameter<bool>("applyVIPStatus");
configuration.ReturnsFromEntitySet<CommerceCommand>("Commands");
return Task.FromResult(modelBuilder);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment