From ff962f8a8c22e1782f4350e279fcc24bbf26401d Mon Sep 17 00:00:00 2001 From: Jakob Andersen Date: Thu, 6 Jul 2017 10:48:25 +0200 Subject: [PATCH] Generated code using new protoc Dart gRPC plugin. (#20) Updated README.md with instructions on how to regenerate the code. Fixes #11. --- example/route_guide/README.md | 24 +++++++++++++++ example/route_guide/lib/src/client.dart | 2 +- .../lib/src/generated/route_guide.pb.dart | 26 +++++++++-------- .../lib/src/generated/route_guide.pbgrpc.dart | 29 ++++++------------- 4 files changed, 48 insertions(+), 33 deletions(-) diff --git a/example/route_guide/README.md b/example/route_guide/README.md index 385924b..866857d 100644 --- a/example/route_guide/README.md +++ b/example/route_guide/README.md @@ -25,3 +25,27 @@ Likewise, to run the client: ```sh $ dart bin/client.dart ``` + +# Regenerate the stubs + +If you have made changes to the message or service definition in +`protos/route_guide.proto` and need to regenerate the corresponding Dart files, +you will need to have protoc version 3.0.0 or higher and the Dart protoc plugin +version 0.7.3 or higher on your PATH. + +To install protoc, see the instructions on +[the Protocol Buffers website](https://developers.google.com/protocol-buffers/). + +The easiest way to get the Dart protoc plugin is by running + +```sh +$ pub global activate protoc_plugin +``` + +and follow the directions to add `~/.pub-cache/bin` to your PATH. + +You can now regenerate the Dart files by running + +```sh +$ protoc --dart_out=grpc:lib/src/generated -Iprotos protos/route_guide.proto +``` diff --git a/example/route_guide/lib/src/client.dart b/example/route_guide/lib/src/client.dart index b864699..6ae54d7 100644 --- a/example/route_guide/lib/src/client.dart +++ b/example/route_guide/lib/src/client.dart @@ -87,7 +87,7 @@ class Client { coordFactor}'); yield point; await new Future.delayed( - new Duration(milliseconds: 500 + random.nextInt(100))); + new Duration(milliseconds: 200 + random.nextInt(100))); } } diff --git a/example/route_guide/lib/src/generated/route_guide.pb.dart b/example/route_guide/lib/src/generated/route_guide.pb.dart index 088b409..64e9183 100644 --- a/example/route_guide/lib/src/generated/route_guide.pb.dart +++ b/example/route_guide/lib/src/generated/route_guide.pb.dart @@ -1,6 +1,8 @@ /// // Generated code. Do not modify. /// +// ignore_for_file: non_constant_identifier_names +// ignore_for_file: library_prefixes library routeguide_route_guide; // ignore: UNUSED_SHOWN_NAME @@ -34,7 +36,7 @@ class Point extends GeneratedMessage { } int get latitude => $_get(0, 1, 0); - void set latitude(int v) { + set latitude(int v) { $_setUnsignedInt32(0, 1, v); } @@ -42,7 +44,7 @@ class Point extends GeneratedMessage { void clearLatitude() => clearField(1); int get longitude => $_get(1, 2, 0); - void set longitude(int v) { + set longitude(int v) { $_setUnsignedInt32(1, 2, v); } @@ -79,7 +81,7 @@ class Rectangle extends GeneratedMessage { } Point get lo => $_get(0, 1, null); - void set lo(Point v) { + set lo(Point v) { setField(1, v); } @@ -87,7 +89,7 @@ class Rectangle extends GeneratedMessage { void clearLo() => clearField(1); Point get hi => $_get(1, 2, null); - void set hi(Point v) { + set hi(Point v) { setField(2, v); } @@ -125,7 +127,7 @@ class Feature extends GeneratedMessage { } String get name => $_get(0, 1, ''); - void set name(String v) { + set name(String v) { $_setString(0, 1, v); } @@ -133,7 +135,7 @@ class Feature extends GeneratedMessage { void clearName() => clearField(1); Point get location => $_get(1, 2, null); - void set location(Point v) { + set location(Point v) { setField(2, v); } @@ -171,7 +173,7 @@ class RouteNote extends GeneratedMessage { } Point get location => $_get(0, 1, null); - void set location(Point v) { + set location(Point v) { setField(1, v); } @@ -179,7 +181,7 @@ class RouteNote extends GeneratedMessage { void clearLocation() => clearField(1); String get message => $_get(1, 2, ''); - void set message(String v) { + set message(String v) { $_setString(1, 2, v); } @@ -220,7 +222,7 @@ class RouteSummary extends GeneratedMessage { } int get pointCount => $_get(0, 1, 0); - void set pointCount(int v) { + set pointCount(int v) { $_setUnsignedInt32(0, 1, v); } @@ -228,7 +230,7 @@ class RouteSummary extends GeneratedMessage { void clearPointCount() => clearField(1); int get featureCount => $_get(1, 2, 0); - void set featureCount(int v) { + set featureCount(int v) { $_setUnsignedInt32(1, 2, v); } @@ -236,7 +238,7 @@ class RouteSummary extends GeneratedMessage { void clearFeatureCount() => clearField(2); int get distance => $_get(2, 3, 0); - void set distance(int v) { + set distance(int v) { $_setUnsignedInt32(2, 3, v); } @@ -244,7 +246,7 @@ class RouteSummary extends GeneratedMessage { void clearDistance() => clearField(3); int get elapsedTime => $_get(3, 4, 0); - void set elapsedTime(int v) { + set elapsedTime(int v) { $_setUnsignedInt32(3, 4, v); } diff --git a/example/route_guide/lib/src/generated/route_guide.pbgrpc.dart b/example/route_guide/lib/src/generated/route_guide.pbgrpc.dart index 38eb93e..aa7d563 100644 --- a/example/route_guide/lib/src/generated/route_guide.pbgrpc.dart +++ b/example/route_guide/lib/src/generated/route_guide.pbgrpc.dart @@ -1,24 +1,18 @@ /// // Generated code. Do not modify. -// -// ...yeah, alright, is isn't actually generated *yet*, but this is just about -// what it'll look like when it is... /// +// ignore_for_file: non_constant_identifier_names +// ignore_for_file: library_prefixes +library routeguide_route_guide_pbgrpc; + import 'dart:async'; import 'package:grpc/grpc.dart'; + import 'route_guide.pb.dart'; +export 'route_guide.pb.dart'; -abstract class RouteGuideClient { - ResponseFuture getFeature(Point request); - ResponseStream listFeatures(Rectangle request); - ResponseFuture recordRoute(Stream request); - ResponseStream routeChat(Stream request); - - factory RouteGuideClient(ClientChannel channel) = RouteGuideClientImpl; -} - -class RouteGuideClientImpl implements RouteGuideClient { +class RouteGuideClient { final ClientChannel _channel; static final _$getFeature = new ClientMethod( @@ -38,9 +32,8 @@ class RouteGuideClientImpl implements RouteGuideClient { (RouteNote value) => value.writeToBuffer(), (List value) => new RouteNote.fromBuffer(value)); - RouteGuideClientImpl(this._channel); + RouteGuideClient(this._channel); - @override ResponseFuture getFeature(Point request) { final call = new ClientCall(_channel, _$getFeature); call.request @@ -49,7 +42,6 @@ class RouteGuideClientImpl implements RouteGuideClient { return new ResponseFuture(call); } - @override ResponseStream listFeatures(Rectangle request) { final call = new ClientCall(_channel, _$listFeatures); call.request @@ -58,15 +50,12 @@ class RouteGuideClientImpl implements RouteGuideClient { return new ResponseStream(call); } - @override ResponseFuture recordRoute(Stream request) { - final call = new ClientCall(_channel, _$recordRoute, - metadata: {'grpc-timeout': '20S'}); + final call = new ClientCall(_channel, _$recordRoute); request.pipe(call.request); return new ResponseFuture(call); } - @override ResponseStream routeChat(Stream request) { final call = new ClientCall(_channel, _$routeChat); request.pipe(call.request);