mirror of https://github.com/AMT-Cheif/drift.git
Also add plugin to drift
This commit is contained in:
parent
331d600df3
commit
bb5f08f90f
|
@ -0,0 +1,43 @@
|
||||||
|
//@dart=2.6
|
||||||
|
|
||||||
|
import 'dart:convert';
|
||||||
|
import 'dart:isolate';
|
||||||
|
|
||||||
|
import 'package:drift_dev/plugin.dart' as plugin;
|
||||||
|
import 'package:web_socket_channel/io.dart';
|
||||||
|
|
||||||
|
const useDebuggingVariant = false;
|
||||||
|
|
||||||
|
void main(List<String> args, SendPort sendPort) {
|
||||||
|
if (useDebuggingVariant) {
|
||||||
|
_PluginProxy(sendPort).start();
|
||||||
|
} else {
|
||||||
|
plugin.start(args, sendPort);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Used during development. See CONTRIBUTING.md in the moor repo on how to debug
|
||||||
|
// the plugin.
|
||||||
|
class _PluginProxy {
|
||||||
|
final SendPort sendToAnalysisServer;
|
||||||
|
|
||||||
|
ReceivePort _receive;
|
||||||
|
IOWebSocketChannel _channel;
|
||||||
|
|
||||||
|
_PluginProxy(this.sendToAnalysisServer);
|
||||||
|
|
||||||
|
Future<void> start() async {
|
||||||
|
_channel = IOWebSocketChannel.connect('ws://localhost:9999');
|
||||||
|
_receive = ReceivePort();
|
||||||
|
sendToAnalysisServer.send(_receive.sendPort);
|
||||||
|
|
||||||
|
_receive.listen((data) {
|
||||||
|
// the server will send messages as maps, convert to json
|
||||||
|
_channel.sink.add(json.encode(data));
|
||||||
|
});
|
||||||
|
|
||||||
|
_channel.stream.listen((data) {
|
||||||
|
sendToAnalysisServer.send(json.decode(data as String));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
name: analyzer_load_moor_plugin
|
||||||
|
version: 1.0.0
|
||||||
|
description: This pubspec is a part of Drift and determines the version of the analyzer plugin to load
|
||||||
|
|
||||||
|
environment:
|
||||||
|
sdk: '>=2.9.0 <3.0.0'
|
||||||
|
|
||||||
|
dependencies:
|
||||||
|
drift_dev: ^1.0.0
|
||||||
|
web_socket_channel: ^1.0.15
|
||||||
|
|
||||||
|
# These overrides are only needed when working on the plugin with useDebuggingVariant = false (not recommended)
|
||||||
|
|
||||||
|
#dependency_overrides:
|
||||||
|
# drift_dev:
|
||||||
|
# path: /path/to/drift/drift_dev
|
||||||
|
# sqlparser:
|
||||||
|
# path: /path/to/drift/sqlparser
|
|
@ -41,9 +41,9 @@ class MoorPlugin extends ServerPlugin
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
List<String> get fileGlobsToAnalyze => const ['*.moor'];
|
List<String> get fileGlobsToAnalyze => const ['*.moor', '*.drift'];
|
||||||
@override
|
@override
|
||||||
String get name => 'Moor plugin';
|
String get name => 'Drift plugin';
|
||||||
@override
|
@override
|
||||||
// docs say that this should a version of _this_ plugin, but they lie. this
|
// docs say that this should a version of _this_ plugin, but they lie. this
|
||||||
// version will be used to determine compatibility with the analyzer
|
// version will be used to determine compatibility with the analyzer
|
||||||
|
|
|
@ -25,7 +25,7 @@ dependencies:
|
||||||
io: ^1.0.3
|
io: ^1.0.3
|
||||||
|
|
||||||
# Moor-specific analysis and apis
|
# Moor-specific analysis and apis
|
||||||
drift: ^4.6.0
|
drift: ^1.0.0
|
||||||
sqlite3: '>=0.1.6 <2.0.0'
|
sqlite3: '>=0.1.6 <2.0.0'
|
||||||
sqlparser: ^0.17.0
|
sqlparser: ^0.17.0
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue