fix(crud)!: use FutureOrResult extension (close #42)
This commit was merged in pull request #49.
This commit is contained in:
@@ -14,18 +14,27 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:wyatt_architecture/wyatt_architecture.dart';
|
||||
import 'package:wyatt_crud_bloc/src/domain/entities/object_model.dart';
|
||||
import 'package:wyatt_crud_bloc/src/domain/entities/query.dart';
|
||||
import 'package:wyatt_crud_bloc/src/domain/repositories/crud_repository.dart';
|
||||
|
||||
class Query<Model extends ObjectModel>
|
||||
extends UseCase<List<QueryInterface>, List<Model?>> {
|
||||
extends AsyncUseCase<List<QueryInterface>, List<Model?>> {
|
||||
final CrudRepository<Model> _crudRepository;
|
||||
|
||||
Query(this._crudRepository);
|
||||
|
||||
@override
|
||||
FutureResult<List<Model?>> call(List<QueryInterface> params) =>
|
||||
_crudRepository.query(params);
|
||||
FutureOr<void> onStart(List<QueryInterface>? params) {
|
||||
if(params == null){
|
||||
throw ClientException('List of conditions cannot be null.');
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
FutureOrResult<List<Model?>> call(List<QueryInterface>? params) =>
|
||||
_crudRepository.query(params!);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user