65 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| // ***********************************************************************
 | |
| // <copyright file="IModuleService.cs">
 | |
| //     AgileWebs
 | |
| // </copyright>
 | |
| // ***********************************************************************
 | |
| using Core.Blueprint.Mongo;
 | |
| using Core.Thalos.Adapters;
 | |
| using Core.Thalos.Domain.Contexts.Onboarding.Request;
 | |
| 
 | |
| namespace Core.Thalos.Provider.Contracts
 | |
| {
 | |
|     public interface IModuleProvider
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// Creates a new Module.
 | |
|         /// </summary>
 | |
|         /// <param name="entity">The Module to be created.</param>
 | |
|         /// <returns>A <see cref="{Task{ModuleAdapter}}"/> representing
 | |
|         /// the asynchronous execution of the service.</returns>
 | |
|         ValueTask<ModuleAdapter> CreateModule(ModuleRequest newModule, CancellationToken cancellationToken);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets an Module by identifier.
 | |
|         /// </summary>
 | |
|         /// <param name="id">The Module identifier.</param>
 | |
|         /// <returns>A <see cref="{Task{ModuleAdapter}}"/> representing
 | |
|         /// the asynchronous execution of the service.</returns>
 | |
|         ValueTask<ModuleAdapter> GetModuleById(string _id, CancellationToken cancellationToken);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets all the roles.
 | |
|         /// </summary>
 | |
|         /// <returns>A <see cref="{Task{IEnumerbale{ModuleAdapter}}}"/> representing
 | |
|         /// the asynchronous execution of the service.</returns>
 | |
|         ValueTask<IEnumerable<ModuleAdapter>> GetAllModules(CancellationToken cancellationToken);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets all the permissions by permissions identifier list.
 | |
|         /// </summary>
 | |
|         /// <param name="permissions">The list of permissions identifiers.</param>
 | |
|         /// <returns>A <see cref="Task{IEnumerable{ModuleAdapter}}"/> representing
 | |
|         /// the asynchronous execution of the service.</returns>
 | |
|         ValueTask<IEnumerable<ModuleAdapter>> GetAllModulesByList(string[] modules, CancellationToken cancellationToken);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Changes the status of the permission.
 | |
|         /// </summary>
 | |
|         /// <param name="id">The permission identifier.</param>
 | |
|         /// <param name="newStatus">The new status of the permission.</param>
 | |
|         /// <returns>The <see cref="ModuleAdapter"/> updated entity.</returns>
 | |
|         /// <returns>A <see cref="{Task{ModuleAdapter}}"/> representing
 | |
|         /// the asynchronous execution of the service.</returns>
 | |
|         ValueTask<ModuleAdapter> ChangeModuleStatus(string id, StatusEnum newStatus, CancellationToken cancellationToken);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Updates a Module by id.
 | |
|         /// </summary>
 | |
|         /// <param name="entity">The Module to be updated.</param>
 | |
|         /// <param name="id">The Module identifier.</param>
 | |
|         /// <returns>A <see cref="{Task{ModuleAdapter}}"/> representing
 | |
|         /// the asynchronous execution of the service.</returns>
 | |
|         ValueTask<ModuleAdapter> UpdateModule(ModuleAdapter entity, CancellationToken cancellationToken);
 | |
|     }
 | |
| }
 | 
