using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using xModels.Dtos; using xStringService.Models.Dtos; namespace xStringService.Interfaces { public interface IXStringServiceControllerActions { // #region Retrievers ... /// /// Retrieve all Exists Languages ... /// /// Task>> GetLanguages(); /// /// Check Specified Resource Exists or not ... /// /// /// /// Task> IsResourceExists( [FromQuery] string resource, [FromQuery] string language = null ); /// /// Retrieve Specified Resource ... /// /// /// /// Task> Get( [FromQuery] string resource, [FromQuery] string language = null ); /// /// Retrieve Specified Translation of Specified Resource ... /// /// /// /// Task> GetResourceValue( [FromQuery] string resource, [FromQuery] string language = null ); /// /// Retrieve an Specified Resource Items ... /// /// /// Task>> GetResources( [FromQuery] string resource ); /// /// Retrieve Specified Resource Items as XResourceDto Presentation ... /// /// /// Task> GetResource( [FromQuery] string resource ); #endregion // #region Query ... /// /// Query Resource IDs ... /// /// /// ActionResult> QueryResourceIds( [FromQuery] XQuery query ); /// /// Query Specified Language Resources ... /// /// /// /// Task>> QueryLanguageResources( [FromQuery] XQuery query, [FromQuery] string language = null // ); /// /// Query Locale Resources ... /// /// /// /// Task>> QueryLocaleResources( [FromQuery] XQuery query, [FromQuery] string language = null // ); #endregion // #region Add/Update Actions ... /// /// Add Specified Resource ... /// /// /// /// /// Task> Add( [FromQuery] string resource, [FromQuery] string value, [FromQuery] string language = null ); /// /// Update Resource ... /// /// /// /// /// Task> Update( [FromQuery] string resource, [FromQuery] string value, [FromQuery] string language = null ); /// /// Add Or Update Resource ... /// /// /// /// /// Task> AddOrUpdate( [FromQuery] string resource, [FromQuery] string value, [FromQuery] string language = null ); /// /// Add Specified Resource ... /// /// /// Task> AddEntity( [FromBody] XStringDto item ); /// /// Update Specified Entity ... /// /// /// Task> UpdateEntity( [FromBody] XStringDto item ); /// /// Add Or Update Specified Entitiy ... /// /// /// Task> AddOrUpdateEntity( [FromBody] XStringDto item ); /// /// Add Specified Locale Resource ... /// /// /// /// Task> AddByLocaleResource( [FromBody] XLocaleResourceDto item, [FromQuery] string resource ); /// /// Update Specified Locale Resource ... /// /// /// /// Task> UpdateByLocaleResource( [FromBody] XLocaleResourceDto item, [FromQuery] string resource ); /// /// Add Or Update Resource By Locale ... /// /// /// /// Task> AddOrUpdateByLocaleResource( [FromBody] XLocaleResourceDto item, [FromQuery] string resource ); /// /// Add Or Update all XResourceDto(s) Locales ... /// /// /// Task>> AddByResource( [FromBody] XResourceDto item ); #endregion // #region Remove Actions ... /// /// Remove all Specified Language's Resources ... /// /// /// Task RemoveLanguageResources( [FromQuery] string language ); /// /// Remove all Specified Resource Ids instances ... /// /// /// Task>> RemoveResource( [FromQuery] string resource ); /// /// Remove Specified Resource ... /// /// /// /// Task> Remove( [FromQuery] string resource, [FromQuery] string language = null ); /// /// Remove all Resource of Specified XResourceDto ... /// /// /// Task RemoveByResource( [FromBody] XResourceDto item ); #endregion } }