Core - creobitcom/Creobit.Backend GitHub Wiki
Набор базовых интерфейсов для работы с бэкендом.
Не требуется.
Не требуется.
Интерфейс для работы с данными приложения.
// Прочитать данные.
void Read<T>(Action<T> onComplete, Action onFailure);
Интерфейс аутентификации.
// Выполнен вход.
bool IsLoggedIn { get; }
// Выполнить вход.
void Login(Action onComplete, Action onFailure);
// Выполнить выход.
void Logout(Action onComplete, Action onFailure);
Интерфейс связывания аккаунтов.
// Выполнить линковку.
void Link(string linkKey, Action onComplete, Action onFailure);
// Запросить ключ для линковки.
void RequestLinkKey(int linkKeyLenght, Action<(string LinkKey, DateTime LinkKeyExpirationTime)> onComplete, Action onFailure);
Интерфейс работы с магазином.
// Продукты.
IEnumerable<IProduct> Products { get; }
// Загрузить продукты.
void LoadProducts(Action onComplete, Action onFailure);
Интерфейс пользователя.
// Url аватара.
string AvatarUrl { get; }
// Имя.
string Name { get; }
// Обновить.
void Refresh(Action onComplete, Action onFailure);
// Установить Url аватара.
void SetAvatarUrl(string avatarUrl, Action onComplete, Action onFailure);
// Установить имя.
void SetName(string name, Action onComplete, Action onFailure);
Интерфейс для работы с данными пользователя.
// Прочитать данные.
void Read<T>(Action<T> onComplete, Action onFailure) where T : class, new();
// Записать данные.
void Write(object data, Action onComplete, Action onFailure);
Интерфейс обработки исключений.
// Обработать исключение.
void Process(Exception exception);
Интерфейс продукта.
// Внутренний набор валют.
IEnumerable<(string CurrencyId, uint Count)> BundledCurrencies { get; }
// Внутренний набор продуктов.
IEnumerable<(IProduct Product, uint Count)> BundledProducts { get; }
// Описание продукта.
string Description { get; }
// Идентификатор продукта.
string Id { get; }
// Имя продукта.
string Name { get; }
// Цены.
IEnumerable<(string CurrencyId, uint Price, string CurrencyCode)> Prices { get; }
// Выполнить покупку.
void Purchase(string currencyId, Action onComplete, Action onFailure);
TODO