helloworld and route_guide: update to protobuf v1 (#279)

This commit is contained in:
Patrice Chalin 2020-03-10 04:06:16 -04:00 committed by GitHub
parent 7d3b3749e8
commit 63dd99e3f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 236 additions and 259 deletions

View File

@ -6,9 +6,9 @@ The [Dart](https://www.dart.dev/) implementation of
# Usage # Usage
See the [Dart gRPC Quickstart](https://grpc.io/docs/quickstart/dart.html). See the [Dart gRPC Quick Start](https://grpc.io/docs/quickstart/dart).
[grpc-web](https://github.com/grpc/grpc-web) in a browser context is supported by [grpc-web](https://github.com/grpc/grpc-web) in a browser context is supported by
`package:grpc/grpc_web.dart`. `package:grpc/grpc_web.dart`.
# Status # Status
@ -16,12 +16,12 @@ See the [Dart gRPC Quickstart](https://grpc.io/docs/quickstart/dart.html).
If you experience issues, or if you have feature requests, If you experience issues, or if you have feature requests,
please [open an issue](https://github.com/dart-lang/grpc-dart/issues). please [open an issue](https://github.com/dart-lang/grpc-dart/issues).
Note that we have limited bandwidth to accept PRs, and that all PRs will require signing the [EasyCLA](https://lfcla.com/). Note that we have limited bandwidth to accept PRs, and that all PRs will require signing the [EasyCLA](https://lfcla.com).
# Notes # Notes
This library requires Dart SDK version 2.2.0 or later. This library requires Dart SDK version 2.2.0 or later.
It currently supports the [Flutter](https://flutter.dev/) and It currently supports the [Flutter](https://flutter.dev) and
[Dart native](https://dart.dev/platforms) platforms. [Dart native](https://dart.dev/platforms) platforms.

View File

@ -1,15 +1,15 @@
Four code examples are available: Four code examples are available:
1. [`/helloworld/`](https://github.com/grpc/grpc-dart/tree/master/example/helloworld): 1. [helloworld](https://github.com/grpc/grpc-dart/tree/master/example/helloworld):
A demonstration of using the Dart gRPC library to perform unary RPs. A demonstration of using the Dart gRPC library to perform unary RPs.
1. [`/googleapis/`](https://github.com/grpc/grpc-dart/tree/master/example/googleapis): 1. [googleapis`](https://github.com/grpc/grpc-dart/tree/master/example/googleapis):
A demonstration of using the Dart gRPC library to communicate with Google APIs. A demonstration of using the Dart gRPC library to communicate with Google APIs.
1. [`/metadata/`](https://github.com/grpc/grpc-dart/tree/master/example/metadata): 1. [metadata](https://github.com/grpc/grpc-dart/tree/master/example/metadata):
A demonstration of how to handle custom metadata, cancellation, and timeouts in Dart gRPC. A demonstration of how to handle custom metadata, cancellation, and timeouts in Dart gRPC.
1. [`/route_guide/`](https://github.com/grpc/grpc-dart/tree/master/example/route_guide): 1. [route_guide](https://github.com/grpc/grpc-dart/tree/master/example/route_guide):
A demonstration of how to perform unary, client streaming, server streaming and full duplex RPCs. A demonstration of how to perform unary, client streaming, server streaming and full duplex RPCs.
For a complete, step-wise working example, see the [Dart gRPC Quickstart](https://grpc.io/docs/quickstart/dart.html). For a complete, step-wise working example, see the [Dart gRPC Quick Start](https://grpc.io/docs/quickstart/dart).

View File

@ -14,18 +14,17 @@
// limitations under the License. // limitations under the License.
/// Dart implementation of the gRPC helloworld.Greeter client. /// Dart implementation of the gRPC helloworld.Greeter client.
import 'dart:async';
import 'package:grpc/grpc.dart'; import 'package:grpc/grpc.dart';
import 'package:helloworld/src/generated/helloworld.pb.dart'; import 'package:helloworld/src/generated/helloworld.pb.dart';
import 'package:helloworld/src/generated/helloworld.pbgrpc.dart'; import 'package:helloworld/src/generated/helloworld.pbgrpc.dart';
Future<void> main(List<String> args) async { Future<void> main(List<String> args) async {
final channel = ClientChannel('localhost', final channel = ClientChannel(
port: 50051, 'localhost',
options: port: 50051,
const ChannelOptions(credentials: ChannelCredentials.insecure())); options: const ChannelOptions(credentials: ChannelCredentials.insecure()),
);
final stub = GreeterClient(channel); final stub = GreeterClient(channel);
final name = args.isNotEmpty ? args[0] : 'world'; final name = args.isNotEmpty ? args[0] : 'world';

View File

@ -14,8 +14,6 @@
// limitations under the License. // limitations under the License.
/// Dart implementation of the gRPC helloworld.Greeter server. /// Dart implementation of the gRPC helloworld.Greeter server.
import 'dart:async';
import 'package:grpc/grpc.dart'; import 'package:grpc/grpc.dart';
import 'package:helloworld/src/generated/helloworld.pb.dart'; import 'package:helloworld/src/generated/helloworld.pb.dart';

View File

@ -1,79 +1,73 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: helloworld.proto // source: helloworld.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core import 'dart:core' as $core;
show bool, Deprecated, double, int, List, Map, override, pragma, String;
import 'package:protobuf/protobuf.dart' as $pb; import 'package:protobuf/protobuf.dart' as $pb;
class HelloRequest extends $pb.GeneratedMessage { class HelloRequest extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = $pb.BuilderInfo('HelloRequest', static final $pb.BuilderInfo _i = $pb.BuilderInfo('HelloRequest', package: const $pb.PackageName('helloworld'), createEmptyInstance: create)
package: const $pb.PackageName('helloworld'))
..aOS(1, 'name') ..aOS(1, 'name')
..hasRequiredFields = false; ..hasRequiredFields = false
;
HelloRequest._() : super(); HelloRequest._() : super();
factory HelloRequest() => create(); factory HelloRequest() => create();
factory HelloRequest.fromBuffer($core.List<$core.int> i, factory HelloRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory HelloRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory HelloRequest.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
HelloRequest clone() => HelloRequest()..mergeFromMessage(this); HelloRequest clone() => HelloRequest()..mergeFromMessage(this);
HelloRequest copyWith(void Function(HelloRequest) updates) => HelloRequest copyWith(void Function(HelloRequest) updates) => super.copyWith((message) => updates(message as HelloRequest));
super.copyWith((message) => updates(message as HelloRequest));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static HelloRequest create() => HelloRequest._(); static HelloRequest create() => HelloRequest._();
HelloRequest createEmptyInstance() => create(); HelloRequest createEmptyInstance() => create();
static $pb.PbList<HelloRequest> createRepeated() => static $pb.PbList<HelloRequest> createRepeated() => $pb.PbList<HelloRequest>();
$pb.PbList<HelloRequest>(); @$core.pragma('dart2js:noInline')
static HelloRequest getDefault() => _defaultInstance ??= create()..freeze(); static HelloRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<HelloRequest>(create);
static HelloRequest _defaultInstance; static HelloRequest _defaultInstance;
$core.String get name => $_getS(0, ''); @$pb.TagNumber(1)
set name($core.String v) { $core.String get name => $_getSZ(0);
$_setString(0, v); @$pb.TagNumber(1)
} set name($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasName() => $_has(0); $core.bool hasName() => $_has(0);
@$pb.TagNumber(1)
void clearName() => clearField(1); void clearName() => clearField(1);
} }
class HelloReply extends $pb.GeneratedMessage { class HelloReply extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = $pb.BuilderInfo('HelloReply', static final $pb.BuilderInfo _i = $pb.BuilderInfo('HelloReply', package: const $pb.PackageName('helloworld'), createEmptyInstance: create)
package: const $pb.PackageName('helloworld'))
..aOS(1, 'message') ..aOS(1, 'message')
..hasRequiredFields = false; ..hasRequiredFields = false
;
HelloReply._() : super(); HelloReply._() : super();
factory HelloReply() => create(); factory HelloReply() => create();
factory HelloReply.fromBuffer($core.List<$core.int> i, factory HelloReply.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory HelloReply.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory HelloReply.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
HelloReply clone() => HelloReply()..mergeFromMessage(this); HelloReply clone() => HelloReply()..mergeFromMessage(this);
HelloReply copyWith(void Function(HelloReply) updates) => HelloReply copyWith(void Function(HelloReply) updates) => super.copyWith((message) => updates(message as HelloReply));
super.copyWith((message) => updates(message as HelloReply));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static HelloReply create() => HelloReply._(); static HelloReply create() => HelloReply._();
HelloReply createEmptyInstance() => create(); HelloReply createEmptyInstance() => create();
static $pb.PbList<HelloReply> createRepeated() => $pb.PbList<HelloReply>(); static $pb.PbList<HelloReply> createRepeated() => $pb.PbList<HelloReply>();
static HelloReply getDefault() => _defaultInstance ??= create()..freeze(); @$core.pragma('dart2js:noInline')
static HelloReply getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<HelloReply>(create);
static HelloReply _defaultInstance; static HelloReply _defaultInstance;
$core.String get message => $_getS(0, ''); @$pb.TagNumber(1)
set message($core.String v) { $core.String get message => $_getSZ(0);
$_setString(0, v); @$pb.TagNumber(1)
} set message($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasMessage() => $_has(0); $core.bool hasMessage() => $_has(0);
@$pb.TagNumber(1)
void clearMessage() => clearField(1); void clearMessage() => clearField(1);
} }

View File

@ -1,5 +1,7 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: helloworld.proto // source: helloworld.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type

View File

@ -1,12 +1,13 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: helloworld.proto // source: helloworld.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:async' as $async; import 'dart:async' as $async;
import 'dart:core' as $core show int, String, List; import 'dart:core' as $core;
import 'package:grpc/service_api.dart' as $grpc; import 'package:grpc/service_api.dart' as $grpc;
import 'helloworld.pb.dart' as $0; import 'helloworld.pb.dart' as $0;
@ -43,7 +44,7 @@ abstract class GreeterServiceBase extends $grpc.Service {
} }
$async.Future<$0.HelloReply> sayHello_Pre( $async.Future<$0.HelloReply> sayHello_Pre(
$grpc.ServiceCall call, $async.Future request) async { $grpc.ServiceCall call, $async.Future<$0.HelloRequest> request) async {
return sayHello(call, await request); return sayHello(call, await request);
} }

View File

@ -1,19 +1,21 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: helloworld.proto // source: helloworld.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
const HelloRequest$json = { const HelloRequest$json = const {
'1': 'HelloRequest', '1': 'HelloRequest',
'2': [ '2': const [
{'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'}, const {'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'},
], ],
}; };
const HelloReply$json = { const HelloReply$json = const {
'1': 'HelloReply', '1': 'HelloReply',
'2': [ '2': const [
{'1': 'message', '3': 1, '4': 1, '5': 9, '10': 'message'}, const {'1': 'message', '3': 1, '4': 1, '5': 9, '10': 'message'},
], ],
}; };

View File

@ -9,7 +9,4 @@ dependencies:
async: ^2.2.0 async: ^2.2.0
grpc: grpc:
path: ../../ path: ../../
protobuf: ^0.13.12 protobuf: ^1.0.1
dev_dependencies:
test: ^1.6.4

View File

@ -13,7 +13,6 @@
// See the License for the specific language governing permissions and // See the License for the specific language governing permissions and
// limitations under the License. // limitations under the License.
import 'dart:async';
import 'dart:math' show Random; import 'dart:math' show Random;
import 'package:grpc/grpc.dart'; import 'package:grpc/grpc.dart';

View File

@ -1,246 +1,244 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: route_guide.proto // source: route_guide.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core import 'dart:core' as $core;
show bool, Deprecated, double, int, List, Map, override, pragma, String;
import 'package:protobuf/protobuf.dart' as $pb; import 'package:protobuf/protobuf.dart' as $pb;
class Point extends $pb.GeneratedMessage { class Point extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = static final $pb.BuilderInfo _i = $pb.BuilderInfo('Point', package: const $pb.PackageName('routeguide'), createEmptyInstance: create)
$pb.BuilderInfo('Point', package: const $pb.PackageName('routeguide')) ..a<$core.int>(1, 'latitude', $pb.PbFieldType.O3)
..a<$core.int>(1, 'latitude', $pb.PbFieldType.O3) ..a<$core.int>(2, 'longitude', $pb.PbFieldType.O3)
..a<$core.int>(2, 'longitude', $pb.PbFieldType.O3) ..hasRequiredFields = false
..hasRequiredFields = false; ;
Point._() : super(); Point._() : super();
factory Point() => create(); factory Point() => create();
factory Point.fromBuffer($core.List<$core.int> i, factory Point.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory Point.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory Point.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
Point clone() => Point()..mergeFromMessage(this); Point clone() => Point()..mergeFromMessage(this);
Point copyWith(void Function(Point) updates) => Point copyWith(void Function(Point) updates) => super.copyWith((message) => updates(message as Point));
super.copyWith((message) => updates(message as Point));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static Point create() => Point._(); static Point create() => Point._();
Point createEmptyInstance() => create(); Point createEmptyInstance() => create();
static $pb.PbList<Point> createRepeated() => $pb.PbList<Point>(); static $pb.PbList<Point> createRepeated() => $pb.PbList<Point>();
static Point getDefault() => _defaultInstance ??= create()..freeze(); @$core.pragma('dart2js:noInline')
static Point getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Point>(create);
static Point _defaultInstance; static Point _defaultInstance;
$core.int get latitude => $_get(0, 0); @$pb.TagNumber(1)
set latitude($core.int v) { $core.int get latitude => $_getIZ(0);
$_setSignedInt32(0, v); @$pb.TagNumber(1)
} set latitude($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasLatitude() => $_has(0); $core.bool hasLatitude() => $_has(0);
@$pb.TagNumber(1)
void clearLatitude() => clearField(1); void clearLatitude() => clearField(1);
$core.int get longitude => $_get(1, 0); @$pb.TagNumber(2)
set longitude($core.int v) { $core.int get longitude => $_getIZ(1);
$_setSignedInt32(1, v); @$pb.TagNumber(2)
} set longitude($core.int v) { $_setSignedInt32(1, v); }
@$pb.TagNumber(2)
$core.bool hasLongitude() => $_has(1); $core.bool hasLongitude() => $_has(1);
@$pb.TagNumber(2)
void clearLongitude() => clearField(2); void clearLongitude() => clearField(2);
} }
class Rectangle extends $pb.GeneratedMessage { class Rectangle extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = static final $pb.BuilderInfo _i = $pb.BuilderInfo('Rectangle', package: const $pb.PackageName('routeguide'), createEmptyInstance: create)
$pb.BuilderInfo('Rectangle', package: const $pb.PackageName('routeguide')) ..aOM<Point>(1, 'lo', subBuilder: Point.create)
..a<Point>(1, 'lo', $pb.PbFieldType.OM, Point.getDefault, Point.create) ..aOM<Point>(2, 'hi', subBuilder: Point.create)
..a<Point>(2, 'hi', $pb.PbFieldType.OM, Point.getDefault, Point.create) ..hasRequiredFields = false
..hasRequiredFields = false; ;
Rectangle._() : super(); Rectangle._() : super();
factory Rectangle() => create(); factory Rectangle() => create();
factory Rectangle.fromBuffer($core.List<$core.int> i, factory Rectangle.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory Rectangle.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory Rectangle.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
Rectangle clone() => Rectangle()..mergeFromMessage(this); Rectangle clone() => Rectangle()..mergeFromMessage(this);
Rectangle copyWith(void Function(Rectangle) updates) => Rectangle copyWith(void Function(Rectangle) updates) => super.copyWith((message) => updates(message as Rectangle));
super.copyWith((message) => updates(message as Rectangle));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static Rectangle create() => Rectangle._(); static Rectangle create() => Rectangle._();
Rectangle createEmptyInstance() => create(); Rectangle createEmptyInstance() => create();
static $pb.PbList<Rectangle> createRepeated() => $pb.PbList<Rectangle>(); static $pb.PbList<Rectangle> createRepeated() => $pb.PbList<Rectangle>();
static Rectangle getDefault() => _defaultInstance ??= create()..freeze(); @$core.pragma('dart2js:noInline')
static Rectangle getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Rectangle>(create);
static Rectangle _defaultInstance; static Rectangle _defaultInstance;
@$pb.TagNumber(1)
Point get lo => $_getN(0); Point get lo => $_getN(0);
set lo(Point v) { @$pb.TagNumber(1)
setField(1, v); set lo(Point v) { setField(1, v); }
} @$pb.TagNumber(1)
$core.bool hasLo() => $_has(0); $core.bool hasLo() => $_has(0);
@$pb.TagNumber(1)
void clearLo() => clearField(1); void clearLo() => clearField(1);
@$pb.TagNumber(1)
Point ensureLo() => $_ensure(0);
@$pb.TagNumber(2)
Point get hi => $_getN(1); Point get hi => $_getN(1);
set hi(Point v) { @$pb.TagNumber(2)
setField(2, v); set hi(Point v) { setField(2, v); }
} @$pb.TagNumber(2)
$core.bool hasHi() => $_has(1); $core.bool hasHi() => $_has(1);
@$pb.TagNumber(2)
void clearHi() => clearField(2); void clearHi() => clearField(2);
@$pb.TagNumber(2)
Point ensureHi() => $_ensure(1);
} }
class Feature extends $pb.GeneratedMessage { class Feature extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = static final $pb.BuilderInfo _i = $pb.BuilderInfo('Feature', package: const $pb.PackageName('routeguide'), createEmptyInstance: create)
$pb.BuilderInfo('Feature', package: const $pb.PackageName('routeguide')) ..aOS(1, 'name')
..aOS(1, 'name') ..aOM<Point>(2, 'location', subBuilder: Point.create)
..a<Point>( ..hasRequiredFields = false
2, 'location', $pb.PbFieldType.OM, Point.getDefault, Point.create) ;
..hasRequiredFields = false;
Feature._() : super(); Feature._() : super();
factory Feature() => create(); factory Feature() => create();
factory Feature.fromBuffer($core.List<$core.int> i, factory Feature.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory Feature.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory Feature.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
Feature clone() => Feature()..mergeFromMessage(this); Feature clone() => Feature()..mergeFromMessage(this);
Feature copyWith(void Function(Feature) updates) => Feature copyWith(void Function(Feature) updates) => super.copyWith((message) => updates(message as Feature));
super.copyWith((message) => updates(message as Feature));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static Feature create() => Feature._(); static Feature create() => Feature._();
Feature createEmptyInstance() => create(); Feature createEmptyInstance() => create();
static $pb.PbList<Feature> createRepeated() => $pb.PbList<Feature>(); static $pb.PbList<Feature> createRepeated() => $pb.PbList<Feature>();
static Feature getDefault() => _defaultInstance ??= create()..freeze(); @$core.pragma('dart2js:noInline')
static Feature getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Feature>(create);
static Feature _defaultInstance; static Feature _defaultInstance;
$core.String get name => $_getS(0, ''); @$pb.TagNumber(1)
set name($core.String v) { $core.String get name => $_getSZ(0);
$_setString(0, v); @$pb.TagNumber(1)
} set name($core.String v) { $_setString(0, v); }
@$pb.TagNumber(1)
$core.bool hasName() => $_has(0); $core.bool hasName() => $_has(0);
@$pb.TagNumber(1)
void clearName() => clearField(1); void clearName() => clearField(1);
@$pb.TagNumber(2)
Point get location => $_getN(1); Point get location => $_getN(1);
set location(Point v) { @$pb.TagNumber(2)
setField(2, v); set location(Point v) { setField(2, v); }
} @$pb.TagNumber(2)
$core.bool hasLocation() => $_has(1); $core.bool hasLocation() => $_has(1);
@$pb.TagNumber(2)
void clearLocation() => clearField(2); void clearLocation() => clearField(2);
@$pb.TagNumber(2)
Point ensureLocation() => $_ensure(1);
} }
class RouteNote extends $pb.GeneratedMessage { class RouteNote extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = static final $pb.BuilderInfo _i = $pb.BuilderInfo('RouteNote', package: const $pb.PackageName('routeguide'), createEmptyInstance: create)
$pb.BuilderInfo('RouteNote', package: const $pb.PackageName('routeguide')) ..aOM<Point>(1, 'location', subBuilder: Point.create)
..a<Point>( ..aOS(2, 'message')
1, 'location', $pb.PbFieldType.OM, Point.getDefault, Point.create) ..hasRequiredFields = false
..aOS(2, 'message') ;
..hasRequiredFields = false;
RouteNote._() : super(); RouteNote._() : super();
factory RouteNote() => create(); factory RouteNote() => create();
factory RouteNote.fromBuffer($core.List<$core.int> i, factory RouteNote.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory RouteNote.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory RouteNote.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
RouteNote clone() => RouteNote()..mergeFromMessage(this); RouteNote clone() => RouteNote()..mergeFromMessage(this);
RouteNote copyWith(void Function(RouteNote) updates) => RouteNote copyWith(void Function(RouteNote) updates) => super.copyWith((message) => updates(message as RouteNote));
super.copyWith((message) => updates(message as RouteNote));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static RouteNote create() => RouteNote._(); static RouteNote create() => RouteNote._();
RouteNote createEmptyInstance() => create(); RouteNote createEmptyInstance() => create();
static $pb.PbList<RouteNote> createRepeated() => $pb.PbList<RouteNote>(); static $pb.PbList<RouteNote> createRepeated() => $pb.PbList<RouteNote>();
static RouteNote getDefault() => _defaultInstance ??= create()..freeze(); @$core.pragma('dart2js:noInline')
static RouteNote getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<RouteNote>(create);
static RouteNote _defaultInstance; static RouteNote _defaultInstance;
@$pb.TagNumber(1)
Point get location => $_getN(0); Point get location => $_getN(0);
set location(Point v) { @$pb.TagNumber(1)
setField(1, v); set location(Point v) { setField(1, v); }
} @$pb.TagNumber(1)
$core.bool hasLocation() => $_has(0); $core.bool hasLocation() => $_has(0);
@$pb.TagNumber(1)
void clearLocation() => clearField(1); void clearLocation() => clearField(1);
@$pb.TagNumber(1)
Point ensureLocation() => $_ensure(0);
$core.String get message => $_getS(1, ''); @$pb.TagNumber(2)
set message($core.String v) { $core.String get message => $_getSZ(1);
$_setString(1, v); @$pb.TagNumber(2)
} set message($core.String v) { $_setString(1, v); }
@$pb.TagNumber(2)
$core.bool hasMessage() => $_has(1); $core.bool hasMessage() => $_has(1);
@$pb.TagNumber(2)
void clearMessage() => clearField(2); void clearMessage() => clearField(2);
} }
class RouteSummary extends $pb.GeneratedMessage { class RouteSummary extends $pb.GeneratedMessage {
static final $pb.BuilderInfo _i = $pb.BuilderInfo('RouteSummary', static final $pb.BuilderInfo _i = $pb.BuilderInfo('RouteSummary', package: const $pb.PackageName('routeguide'), createEmptyInstance: create)
package: const $pb.PackageName('routeguide'))
..a<$core.int>(1, 'pointCount', $pb.PbFieldType.O3) ..a<$core.int>(1, 'pointCount', $pb.PbFieldType.O3)
..a<$core.int>(2, 'featureCount', $pb.PbFieldType.O3) ..a<$core.int>(2, 'featureCount', $pb.PbFieldType.O3)
..a<$core.int>(3, 'distance', $pb.PbFieldType.O3) ..a<$core.int>(3, 'distance', $pb.PbFieldType.O3)
..a<$core.int>(4, 'elapsedTime', $pb.PbFieldType.O3) ..a<$core.int>(4, 'elapsedTime', $pb.PbFieldType.O3)
..hasRequiredFields = false; ..hasRequiredFields = false
;
RouteSummary._() : super(); RouteSummary._() : super();
factory RouteSummary() => create(); factory RouteSummary() => create();
factory RouteSummary.fromBuffer($core.List<$core.int> i, factory RouteSummary.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => factory RouteSummary.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);
create()..mergeFromBuffer(i, r);
factory RouteSummary.fromJson($core.String i,
[$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(i, r);
RouteSummary clone() => RouteSummary()..mergeFromMessage(this); RouteSummary clone() => RouteSummary()..mergeFromMessage(this);
RouteSummary copyWith(void Function(RouteSummary) updates) => RouteSummary copyWith(void Function(RouteSummary) updates) => super.copyWith((message) => updates(message as RouteSummary));
super.copyWith((message) => updates(message as RouteSummary));
$pb.BuilderInfo get info_ => _i; $pb.BuilderInfo get info_ => _i;
@$core.pragma('dart2js:noInline') @$core.pragma('dart2js:noInline')
static RouteSummary create() => RouteSummary._(); static RouteSummary create() => RouteSummary._();
RouteSummary createEmptyInstance() => create(); RouteSummary createEmptyInstance() => create();
static $pb.PbList<RouteSummary> createRepeated() => static $pb.PbList<RouteSummary> createRepeated() => $pb.PbList<RouteSummary>();
$pb.PbList<RouteSummary>(); @$core.pragma('dart2js:noInline')
static RouteSummary getDefault() => _defaultInstance ??= create()..freeze(); static RouteSummary getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<RouteSummary>(create);
static RouteSummary _defaultInstance; static RouteSummary _defaultInstance;
$core.int get pointCount => $_get(0, 0); @$pb.TagNumber(1)
set pointCount($core.int v) { $core.int get pointCount => $_getIZ(0);
$_setSignedInt32(0, v); @$pb.TagNumber(1)
} set pointCount($core.int v) { $_setSignedInt32(0, v); }
@$pb.TagNumber(1)
$core.bool hasPointCount() => $_has(0); $core.bool hasPointCount() => $_has(0);
@$pb.TagNumber(1)
void clearPointCount() => clearField(1); void clearPointCount() => clearField(1);
$core.int get featureCount => $_get(1, 0); @$pb.TagNumber(2)
set featureCount($core.int v) { $core.int get featureCount => $_getIZ(1);
$_setSignedInt32(1, v); @$pb.TagNumber(2)
} set featureCount($core.int v) { $_setSignedInt32(1, v); }
@$pb.TagNumber(2)
$core.bool hasFeatureCount() => $_has(1); $core.bool hasFeatureCount() => $_has(1);
@$pb.TagNumber(2)
void clearFeatureCount() => clearField(2); void clearFeatureCount() => clearField(2);
$core.int get distance => $_get(2, 0); @$pb.TagNumber(3)
set distance($core.int v) { $core.int get distance => $_getIZ(2);
$_setSignedInt32(2, v); @$pb.TagNumber(3)
} set distance($core.int v) { $_setSignedInt32(2, v); }
@$pb.TagNumber(3)
$core.bool hasDistance() => $_has(2); $core.bool hasDistance() => $_has(2);
@$pb.TagNumber(3)
void clearDistance() => clearField(3); void clearDistance() => clearField(3);
$core.int get elapsedTime => $_get(3, 0); @$pb.TagNumber(4)
set elapsedTime($core.int v) { $core.int get elapsedTime => $_getIZ(3);
$_setSignedInt32(3, v); @$pb.TagNumber(4)
} set elapsedTime($core.int v) { $_setSignedInt32(3, v); }
@$pb.TagNumber(4)
$core.bool hasElapsedTime() => $_has(3); $core.bool hasElapsedTime() => $_has(3);
@$pb.TagNumber(4)
void clearElapsedTime() => clearField(4); void clearElapsedTime() => clearField(4);
} }

View File

@ -1,5 +1,7 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: route_guide.proto // source: route_guide.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type

View File

@ -1,12 +1,13 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: route_guide.proto // source: route_guide.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:async' as $async; import 'dart:async' as $async;
import 'dart:core' as $core show int, String, List; import 'dart:core' as $core;
import 'package:grpc/service_api.dart' as $grpc; import 'package:grpc/service_api.dart' as $grpc;
import 'route_guide.pb.dart' as $0; import 'route_guide.pb.dart' as $0;
@ -99,13 +100,13 @@ abstract class RouteGuideServiceBase extends $grpc.Service {
} }
$async.Future<$0.Feature> getFeature_Pre( $async.Future<$0.Feature> getFeature_Pre(
$grpc.ServiceCall call, $async.Future request) async { $grpc.ServiceCall call, $async.Future<$0.Point> request) async {
return getFeature(call, await request); return getFeature(call, await request);
} }
$async.Stream<$0.Feature> listFeatures_Pre( $async.Stream<$0.Feature> listFeatures_Pre(
$grpc.ServiceCall call, $async.Future request) async* { $grpc.ServiceCall call, $async.Future<$0.Rectangle> request) async* {
yield* listFeatures(call, (await request) as $0.Rectangle); yield* listFeatures(call, await request);
} }
$async.Future<$0.Feature> getFeature( $async.Future<$0.Feature> getFeature(

View File

@ -1,61 +1,49 @@
/// ///
// Generated code. Do not modify. // Generated code. Do not modify.
// source: route_guide.proto // source: route_guide.proto
/// //
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name // @dart = 2.3
// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
const Point$json = { const Point$json = const {
'1': 'Point', '1': 'Point',
'2': [ '2': const [
{'1': 'latitude', '3': 1, '4': 1, '5': 5, '10': 'latitude'}, const {'1': 'latitude', '3': 1, '4': 1, '5': 5, '10': 'latitude'},
{'1': 'longitude', '3': 2, '4': 1, '5': 5, '10': 'longitude'}, const {'1': 'longitude', '3': 2, '4': 1, '5': 5, '10': 'longitude'},
], ],
}; };
const Rectangle$json = { const Rectangle$json = const {
'1': 'Rectangle', '1': 'Rectangle',
'2': [ '2': const [
{'1': 'lo', '3': 1, '4': 1, '5': 11, '6': '.routeguide.Point', '10': 'lo'}, const {'1': 'lo', '3': 1, '4': 1, '5': 11, '6': '.routeguide.Point', '10': 'lo'},
{'1': 'hi', '3': 2, '4': 1, '5': 11, '6': '.routeguide.Point', '10': 'hi'}, const {'1': 'hi', '3': 2, '4': 1, '5': 11, '6': '.routeguide.Point', '10': 'hi'},
], ],
}; };
const Feature$json = { const Feature$json = const {
'1': 'Feature', '1': 'Feature',
'2': [ '2': const [
{'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'}, const {'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'},
{ const {'1': 'location', '3': 2, '4': 1, '5': 11, '6': '.routeguide.Point', '10': 'location'},
'1': 'location',
'3': 2,
'4': 1,
'5': 11,
'6': '.routeguide.Point',
'10': 'location'
},
], ],
}; };
const RouteNote$json = { const RouteNote$json = const {
'1': 'RouteNote', '1': 'RouteNote',
'2': [ '2': const [
{ const {'1': 'location', '3': 1, '4': 1, '5': 11, '6': '.routeguide.Point', '10': 'location'},
'1': 'location', const {'1': 'message', '3': 2, '4': 1, '5': 9, '10': 'message'},
'3': 1,
'4': 1,
'5': 11,
'6': '.routeguide.Point',
'10': 'location'
},
{'1': 'message', '3': 2, '4': 1, '5': 9, '10': 'message'},
], ],
}; };
const RouteSummary$json = { const RouteSummary$json = const {
'1': 'RouteSummary', '1': 'RouteSummary',
'2': [ '2': const [
{'1': 'point_count', '3': 1, '4': 1, '5': 5, '10': 'pointCount'}, const {'1': 'point_count', '3': 1, '4': 1, '5': 5, '10': 'pointCount'},
{'1': 'feature_count', '3': 2, '4': 1, '5': 5, '10': 'featureCount'}, const {'1': 'feature_count', '3': 2, '4': 1, '5': 5, '10': 'featureCount'},
{'1': 'distance', '3': 3, '4': 1, '5': 5, '10': 'distance'}, const {'1': 'distance', '3': 3, '4': 1, '5': 5, '10': 'distance'},
{'1': 'elapsed_time', '3': 4, '4': 1, '5': 5, '10': 'elapsedTime'}, const {'1': 'elapsed_time', '3': 4, '4': 1, '5': 5, '10': 'elapsedTime'},
], ],
}; };

View File

@ -13,7 +13,6 @@
// See the License for the specific language governing permissions and // See the License for the specific language governing permissions and
// limitations under the License. // limitations under the License.
import 'dart:async';
import 'dart:math' show atan2, cos, max, min, pi, sin, sqrt; import 'dart:math' show atan2, cos, max, min, pi, sin, sqrt;
import 'package:grpc/grpc.dart' as grpc; import 'package:grpc/grpc.dart' as grpc;

View File

@ -9,7 +9,4 @@ dependencies:
async: ^2.2.0 async: ^2.2.0
grpc: grpc:
path: ../../ path: ../../
protobuf: ^0.13.12 protobuf: ^1.0.1
dev_dependencies:
test: ^1.6.0