Webiant Logo Webiant Logo
  1. No results found.

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

IAclService.cs

using Nop.Core;
using Nop.Core.Domain.Customers;
using Nop.Core.Domain.Security;

namespace Nop.Services.Security;

/// 
/// ACL service interface
/// 
public partial interface IAclService
{
    /// 
    /// Apply ACL to the passed query
    /// 
    /// Type of entity that supports the ACL
    /// Query to filter
    /// Customer
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filtered query
    /// 
    Task> ApplyAcl(IQueryable query, Customer customer) where TEntity : BaseEntity, IAclSupported;

    /// 
    /// Apply ACL to the passed query
    /// 
    /// Type of entity that supports the ACL
    /// Query to filter
    /// Identifiers of customer's roles
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filtered query
    /// 
    Task> ApplyAcl(IQueryable query, int[] customerRoleIds) where TEntity : BaseEntity, IAclSupported;

    /// 
    /// Deletes an ACL record
    /// 
    /// ACL record
    /// A task that represents the asynchronous operation
    Task DeleteAclRecordAsync(AclRecord aclRecord);

    /// 
    /// Gets ACL records
    /// 
    /// Type of entity that supports the ACL
    /// Entity
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the aCL records
    /// 
    Task> GetAclRecordsAsync(TEntity entity) where TEntity : BaseEntity, IAclSupported;

    /// 
    /// Inserts an ACL record
    /// 
    /// Type of entity that supports the ACL
    /// Entity
    /// Customer role id
    /// A task that represents the asynchronous operation
    Task InsertAclRecordAsync(TEntity entity, int customerRoleId) where TEntity : BaseEntity, IAclSupported;

    /// 
    /// Find customer role identifiers with granted access
    /// 
    /// Type of entity that supports the ACL
    /// Entity
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the customer role identifiers
    /// 
    Task GetCustomerRoleIdsWithAccessAsync(TEntity entity) where TEntity : BaseEntity, IAclSupported;

    /// 
    /// Authorize ACL permission
    /// 
    /// Type of entity that supports the ACL
    /// Entity
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains true - authorized; otherwise, false
    /// 
    Task AuthorizeAsync(TEntity entity) where TEntity : BaseEntity, IAclSupported;

    /// 
    /// Authorize ACL permission
    /// 
    /// Type of entity that supports the ACL
    /// Entity
    /// Customer
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains true - authorized; otherwise, false
    /// 
    Task AuthorizeAsync(TEntity entity, Customer customer) where TEntity : BaseEntity, IAclSupported;
}