31 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using gehGassiApp.Domain.Common;
namespace gehGassiApp.Core.Interfaces.Synchronization
{
/// <summary>
/// Schnittstellenbeschreibung für einen Service der die Verwaltung von Pull Synch-Infos ermöglicht.
/// </summary>
public interface ISyncInfoPullService : IService<SyncInfoPull>
{
/// <summary>
/// Hinzufügen oder Aktualisieren einer SyncInfo zu einem Objekt.
/// </summary>
/// <param name="table">Tabelle bzw. Name des Objektes</param>
/// <param name="lastUpdate">Wann wurde das letzte Mal ein Sync durchgeführt</param>
/// <returns>Task</returns>
Task AddOrUpddateAsync(string table, DateTimeOffset lastUpdate);
/// <summary>
/// Abfragen einer Sync-Info zu einem Objekt
/// </summary>
/// <param name="table">Tabelle bzw. Name des Objektes</param>
/// <returns>SncInfo wenn gefunden, oder null wenn es noch keine gibt</returns>
Task<SyncInfoPull> GetAsync(string table);
}
}