OfflineFirstWithRestRepository constructor
OfflineFirstWithRestRepository({
- required RestProvider restProvider,
- required SqliteProvider sqliteProvider,
- MemoryCacheProvider? memoryCacheProvider,
- required Set<
Migration> migrations, - bool? autoHydrate,
- String? loggerName,
- RequestSqliteCacheManager? offlineQueueHttpClientRequestSqliteCacheManager,
- bool throwTunnelNotFoundExceptions = false,
- List<
int> reattemptForStatusCodes = const [404, 501, 502, 503, 504],
Implementation
OfflineFirstWithRestRepository({
required RestProvider restProvider,
required SqliteProvider sqliteProvider,
MemoryCacheProvider? memoryCacheProvider,
required Set<Migration> migrations,
bool? autoHydrate,
String? loggerName,
RequestSqliteCacheManager? offlineQueueHttpClientRequestSqliteCacheManager,
this.throwTunnelNotFoundExceptions = false,
this.reattemptForStatusCodes = const [404, 501, 502, 503, 504],
}) : remoteProvider = restProvider,
super(
autoHydrate: autoHydrate,
loggerName: loggerName,
memoryCacheProvider: memoryCacheProvider,
migrations: migrations,
sqliteProvider: sqliteProvider,
remoteProvider: restProvider,
) {
remoteProvider.client = OfflineQueueHttpClient(
restProvider.client,
offlineQueueHttpClientRequestSqliteCacheManager ??
RequestSqliteCacheManager(_queueDatabaseName),
reattemptForStatusCodes: reattemptForStatusCodes,
);
offlineRequestQueue = OfflineRequestQueue(
client: remoteProvider.client as OfflineQueueHttpClient,
);
}