Webiant Logo Webiant Logo
  1. No results found.

    Try your search with a different keyword or use * as a wildcard.

EventPublisherExtensions.cs

using Nop.Core.Domain.Shipping;
using Nop.Core.Events;

namespace Nop.Services.Shipping;

/// 
/// Event publisher extensions
/// 
public static class EventPublisherExtensions
{
    /// 
    /// Publishes the shipment sent event.
    /// 
    /// The event publisher.
    /// The shipment.
    /// A task that represents the asynchronous operation
    public static async Task PublishShipmentSentAsync(this IEventPublisher eventPublisher, Shipment shipment)
    {
        await eventPublisher.PublishAsync(new ShipmentSentEvent(shipment));
    }

    /// 
    /// Publishes the shipment ready for pickup event.
    /// 
    /// The event publisher.
    /// The shipment.
    /// A task that represents the asynchronous operation
    public static async Task PublishShipmentReadyForPickupAsync(this IEventPublisher eventPublisher, Shipment shipment)
    {
        await eventPublisher.PublishAsync(new ShipmentReadyForPickupEvent(shipment));
    }

    /// 
    /// Publishes the shipment delivered event.
    /// 
    /// The event publisher.
    /// The shipment.
    /// A task that represents the asynchronous operation
    public static async Task PublishShipmentDeliveredAsync(this IEventPublisher eventPublisher, Shipment shipment)
    {
        await eventPublisher.PublishAsync(new ShipmentDeliveredEvent(shipment));
    }
}