Webiant Logo Webiant Logo
  1. No results found.

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

IPluginManager.cs

using Nop.Core.Domain.Customers;

namespace Nop.Services.Plugins;

/// 
/// Represents a plugin manager
/// 
/// Type of plugin
public partial interface IPluginManager where TPlugin : class, IPlugin
{
    /// 
    /// Load all plugins
    /// 
    /// Filter by customer; pass null to load all plugins
    /// Filter by store; pass 0 to load all plugins
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the list of plugins
    /// 
    Task> LoadAllPluginsAsync(Customer customer = null, int storeId = 0);

    /// 
    /// Load plugin by system name
    /// 
    /// System name
    /// Filter by customer; pass null to load all plugins
    /// Filter by store; pass 0 to load all plugins
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the plugin
    /// 
    Task LoadPluginBySystemNameAsync(string systemName, Customer customer = null, int storeId = 0);

    /// 
    /// Load active plugins
    /// 
    /// System names of active plugins
    /// Filter by customer; pass null to load all plugins
    /// Filter by store; pass 0 to load all plugins
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the list of active plugins
    /// 
    Task> LoadActivePluginsAsync(List systemNames, Customer customer = null, int storeId = 0);

    /// 
    /// Check whether the passed plugin is active
    /// 
    /// Plugin to check
    /// System names of active plugins
    /// Result
    bool IsPluginActive(TPlugin plugin, List systemNames);

    /// 
    /// Get plugin logo URL
    /// 
    /// Plugin
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the logo URL
    /// 
    Task GetPluginLogoUrlAsync(TPlugin plugin);
}