using System; using System.Threading.Tasks; using gehGassi.Domain.Users; namespace gehGassi.Core.Interfaces { /// /// Schnittstellenbeschreibung für einen Service der die Verwaltung von gespeicherten Authentifizierungs-Ticktes ermöglicht /// public interface IPersistedTicketService : IService { /// /// Speichern eines Tickets. /// Wenn es noch nicht existiert, wird es angelegt. /// Wenn es existiert, wird es aktualisiert /// /// Key des Tickes /// Benutzername /// Ticket als Byte-Array /// Ablaufdatum des Tickets /// Task Task SaveAsync(string key, string userId, byte[] ticket, DateTimeOffset? expires); /// /// Löscht alle abgelaufenen Tickets /// /// true wenn erfolgreich, false sonst Task RemoveExpiredAsync(); /// /// Löschen eines Tickets aus dem Store /// /// Key des Tickets /// true wenn erfolgreich, false sonst Task RemoveAsync(string key); } }