jaguar_mongo 0.1.3 jaguar_mongo: ^0.1.3 copied to clipboard
A mongo interceptor for jaguar
/// File: main.dart
library jaguar.example.silly;
import 'dart:async';
import 'dart:io';
import 'package:jaguar/jaguar.dart';
import 'package:mongo_dart/mongo_dart.dart';
import 'package:jaguar_mongo/jaguar_mongo.dart';
part 'main.g.dart';
@Api(path: '/api')
class MongoDbExampleApi extends _$JaguarMongoDbExampleApi {
/// NOTE: Example of using MongoDb interceptor in basic route
@Post(path: '/')
// NOTE: This is how MongoDb interceptor is wrapped
// around a route.
// Now other interceptors and route handler methods can
// request injection of opened connection using `@Input(MongoDb)`
@WrapMongoDb('mongodb://localhost:27017/test')
Future<String> mongoTest(
// NOTE: This is how the opened mongodb connection is injected
// into routes
@Input(MongoDb) Db db) async {
return "ok";
}
}
Future<Null> main(List<String> args) async {
MongoDbExampleApi api = new MongoDbExampleApi();
Configuration configuration = new Configuration();
configuration.addApi(api);
await serve(configuration);
}