/// <summary> /// Получить данные аутентификации пользователя. /// </summary> /// <param name="userOperationCredentials">Данные аутентификации пользователя.</param> /// <returns>Скорректированные данные аутентификации пользователя.</returns> protected UserOperationCredentials TryGetCredentials(UserOperationCredentials userOperationCredentials) { var authToken = userOperationCredentials?.AuthToken ?? Token; if (authToken == null && userOperationCredentials == null) { return(null); } return(new UserOperationCredentials { AuthToken = authToken, }); }
/// <summary> /// Вызов метода для зарегистрированного пользователя. /// </summary> /// <typeparam name="TResult">Тип возвращаемого метода.</typeparam> /// <param name="credentials">Данные аутентификации пользователя.</param> /// <param name="action">Вызываемый метод.</param> /// <returns>Значение вызываемого метода.</returns> protected TResult CheckAutorizedInvoke <TResult>(UserOperationCredentials credentials, Func <UserOperationCredentials, TResult> action) { var correctCredentials = TryGetCredentials(credentials); return(CheckAutorizedInvoke(() => action(correctCredentials))); }