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
}
}