Skip to content
This repository has been archived by the owner on Aug 25, 2021. It is now read-only.

Control API gRPC callbacks for Member (#61) #63

Merged
merged 71 commits into from
Dec 16, 2019

Conversation

evdokimovs
Copy link
Contributor

@evdokimovs evdokimovs commented Nov 5, 2019

Resolves #61

Part of #27

Synopsis

In 0001-control-api RFC exists callback mechanism but currently it doesn't implemented. In this PR will be implemented only on_join and on_leave gRPC callbacks.

Solution

  • Add protobuf spec for callback service in medea-control-api-proto
  • Extend medea-control-api-mock with gRPC callback server mock
  • Add basic structure for the Control API callbacks
  • Add on_join and on_leave callbacks sending
  • E2E tests for Control API callbacks
  • Add callbacks to e2e-demo's Control API UI

Checklist

  • Created PR:
    • In draft mode
    • Name contains WIP: prefix
    • Name contains issue reference
    • Has k:: labels applied
    • Has assignee
  • Documentation is updated (if required)
  • Tests are updated (if required)
  • Changes conform code style
  • CHANGELOG entry is added (if required)
  • FCM (final commit message) is posted
    • and approved
  • Review is completed and changes are approved
  • Before merge:
    • Milestone is set
    • PR's name and description are correct and up-to-date
    • WIP: prefix is removed
    • All temporary labels are removed

@evdokimovs
Copy link
Contributor Author

evdokimovs commented Dec 3, 2019

FCM

'on_join' and 'on_leave' gRPC Control API callbacks (#63, #61)

- add Protobuf spec for Callback service into 'medea-control-api-proto' crate
- extend 'medea-control-api-mock' with gRPC callback server mock
- impl 'on_join' and 'on_leave' callbacks sending
- add callbacks to e2e-demo's Control API UI
- add E2E tests for Control API callbacks

Additionally:
- delete 'gen_insert_str_macro!' from tests
- delete temporary gRPC Control API client binary
- 'build.rs' of 'medea-control-api-proto' now generates source code for all Protobuf files from 'grpc' module
- upgrade Firefox to 71.0 version for E2E tests

@evdokimovs evdokimovs marked this pull request as ready for review December 3, 2019 11:13
@evdokimovs evdokimovs requested a review from alexlapa December 3, 2019 11:22
@alexlapa alexlapa requested a review from tyranron December 6, 2019 21:22
Copy link
Member

@tyranron tyranron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The overall implementation feels quite raw and unpolished. You should spend more time on polishing and self-reviewing this.

proto/control-api/src/grpc/callback.proto Show resolved Hide resolved
proto/control-api/src/grpc/callback.proto Outdated Show resolved Hide resolved
proto/control-api/build.rs Outdated Show resolved Hide resolved
proto/control-api/build.rs Outdated Show resolved Hide resolved
src/api/client/rpc_connection.rs Outdated Show resolved Hide resolved
src/api/control/callback/clients/mod.rs Outdated Show resolved Hide resolved
@evdokimovs evdokimovs requested a review from alexlapa December 9, 2019 13:02
@alexlapa alexlapa requested a review from tyranron December 10, 2019 04:37
Copy link
Member

@tyranron tyranron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not without corrections, but majorly good 👍

@tyranron tyranron changed the title WIP: Control API gRPC callbacks for Member (#61) Control API gRPC callbacks for Member (#61) Dec 16, 2019
@evdokimovs evdokimovs merged commit 676ce1e into master Dec 16, 2019
@evdokimovs evdokimovs deleted the 61-control-api-callbacks branch December 16, 2019 10:58
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature New feature or request k::api Related to API (application interface) k::design Related to overall design and/or architecture
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Control API gRPC callbacks for Member
3 participants