using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using gehGassiApp.Domain.Common; namespace gehGassiApp.Core.Interfaces { /// /// Schnittstellenbeschreibung für einen Service der den Umgang mit Ländern vereinfacht /// public interface ICountryService { /// /// Gibt eine Liste aller Länder zurück /// /// Liste Task> GetCountriesAsync(); /// /// Gibt ein Land anhand des Codes zurück /// /// ISO2 /// Land oder null, wenn nicht gefunden Task GetCountryAsync(string countryCode); /// /// Gibt eine Liste von Bundesländern zurück /// /// Liste von Bundesländern Task> GetStatesAsync(); /// /// Gibt eine Liste von Bundesländern / Staaten eines Landes zurück /// /// ISO2 des Landes /// Liste von Bundesländern Task> GetStatesAsync(string countryCode); /// /// Gibt ein Bundesland / Staat eines Landes zurück /// /// ISO2 des Landes /// Code des Bundeslandes /// Bundesland oder null, wenn nicht gefunden Task GetStateAsync(string countryCode, string stateCode); /// /// Gibt ein Bundesland / Staat eines Landes zurück /// /// ISO2 des Landes /// Name des Bundeslandes /// Bundesland oder null, wenn nicht gefunden Task GetStateByNameAsync(string countryCode, string stateName); /// /// Gibt eine Liste der Ländercodes zurück die zu einem Filter passen /// /// Filter /// Operator der angewendet werden soll /// Liste gefundener Ländercodes Task> FindCountryCodesAsync(string filter, string operatorValue); /// /// Gibt eine Liste der Bundesland-Codes zurück die zu einem Filter passen /// /// Filter /// Operator der angewendet werden soll /// Liste gefundener Bundeslandcodes Task> FindStateCodesAsync(string filter, string operatorValue); /// /// Gibt eine Liste aller Länder zurück die in der Nationalitätenliste enthalten sind /// /// Liste Task> GetNationalitiesAsync(); } }