grpc-dart/example/metadata
Slava Egorov 9a0b4642ef
Allow 4.0.0 version for protobuf dependency and prepare to release 4.0.3 (#774)
Fixes https://github.com/grpc/grpc-dart/issues/768
2025-03-31 15:42:24 +02:00
..
bin Enable and fix pedantic v1.9 lints (#445) 2021-02-01 09:12:26 +01:00
lib/src Regenerate protobuf types with new protobuf version (#658) 2023-08-16 05:33:31 -07:00
protos Custom metadata and call cancellation. (#22) 2017-07-07 14:31:36 +02:00
tool Cleanup: update to and use latest pkg:lints with associated fixes (#587) 2022-10-31 11:47:31 -07:00
README.md Migrate examples to Dart null safety (#536) 2022-01-04 10:05:22 +10:00
analysis_options.yaml Migrate examples to Dart null safety (#536) 2022-01-04 10:05:22 +10:00
pubspec.yaml Allow 4.0.0 version for protobuf dependency and prepare to release 4.0.3 (#774) 2025-03-31 15:42:24 +02:00

README.md

Description

The metadata server and client demonstrate how to handle custom metadata, cancellation, and timeouts in Dart gRPC.

See the definition of the metadata service in protos/metadata.proto.

Run the sample code

To compile and run the example, assuming you are in the root of the metadata folder, i.e., .../example/metadata/, first get the dependencies by running:

$ dart pub get

Then, to run the server:

$ dart bin/server.dart

Likewise, to run the client:

$ 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.9 or higher on your PATH.

To install protoc with Dart support, take these steps:

  1. Install the protoc matching your development operating system from the Protocol Buffers releases page (e.g. protoc-3.5.1-osx-x86_64.zip for macOS).

  2. Get the Dart protoc plugin by running

    $ dart pub global activate protoc_plugin
    
  3. Add ~/.pub-cache/bin to your PATH, if you haven't already done so.

You can now regenerate the Dart files by running

$ protoc --dart_out=grpc:lib/src/generated -Iprotos protos/metadata.proto