Skip to content

Instantly share code, notes, and snippets.

@vaygeth89
Last active October 24, 2021 09:31
Show Gist options
  • Save vaygeth89/01416aa48ec542ed6e09ee03199c57fa to your computer and use it in GitHub Desktop.
Save vaygeth89/01416aa48ec542ed6e09ee03199c57fa to your computer and use it in GitHub Desktop.
import 'dart:io';
import 'package:dio/dio.dart';
import 'package:tutorial_flutter_minimalist_authentication/constants/constants.dart';
import 'package:tutorial_flutter_minimalist_authentication/exceptions/access_token_exception.dart';
import 'package:tutorial_flutter_minimalist_authentication/exceptions/business_exception.dart';
import 'package:tutorial_flutter_minimalist_authentication/exceptions/refresh_token_exception.dart';
import 'package:tutorial_flutter_minimalist_authentication/models/api/business_error.dart';
import 'package:tutorial_flutter_minimalist_authentication/models/session/authentication_data.dart';
import 'package:tutorial_flutter_minimalist_authentication/models/account/sign_in.dart';
import 'package:tutorial_flutter_minimalist_authentication/models/account/renew_access_token.dart';
import 'package:tutorial_flutter_minimalist_authentication/repositories/api/account_repository.dart';
class ApiRepositoryBase {
late Dio _dio;
static final String bearerTokenHeader = "Bearer ";
Duration timeout = const Duration(seconds: 8);
ApiRepositoryBase({required String baseURL}) {
_dio = Dio(
BaseOptions(
baseUrl: baseURL,
headers: {
HttpHeaders.contentTypeHeader: ContentType.json.value,
},
),
);
}
}
class AccountApiRepository extends ApiRepositoryBase implements AccountRepository {
AccountApiRepository({String baseURL = accountAPIURL_v1})
: super(baseURL: accountAPIURL_v1);
@override
Future<AuthenticationData> signIn({
required SignIn signIn}) async {
//Todo implement
throw UnimplementedError();
}
@override
Future<bool> verifyToken(
{required String accessToken}) async {
//Todo implement
throw UnimplementedError();
}
@override
Future<AuthenticationData> renewAccessToken(
{required RenewAccessToken renewAccessToken}) async {
throw UnimplementedError();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment