createQuery<DataType, ErrorType> method
Query<DataType, ErrorType>
createQuery<DataType, ErrorType>(
- String key,
- QueryFn<
DataType> queryFn, { - DataType? initial,
- RetryConfig? retryConfig,
- RefreshConfig? refreshConfig,
- JsonConfig<
DataType> ? jsonConfig,
Imperatively creates a Query
If a query with the same key already exists, it will be returned and the properties will be updated (if changed)
Implementation
Query<DataType, ErrorType> createQuery<DataType, ErrorType>(
String key,
QueryFn<DataType> queryFn, {
DataType? initial,
RetryConfig? retryConfig,
RefreshConfig? refreshConfig,
JsonConfig<DataType>? jsonConfig,
}) {
final query = cache.queries
.firstWhere(
(query) => query.key == key,
orElse: () => Query<DataType, ErrorType>(
key,
queryFn,
initial: initial,
retryConfig: retryConfig ?? this.retryConfig,
refreshConfig: refreshConfig ?? this.refreshConfig,
jsonConfig: jsonConfig,
),
)
.cast<DataType, ErrorType>();
query.updateQueryFn(queryFn);
cache.addQuery(query);
return query;
}