[services] Backup - Reactor base classes
Summary:
This lets us avoid adding boilerplate code for handling the bidirectional communication. All we have to do is define a class that contains a method named handleRequest, takes a request, and returns a response. In a case when we want to end the connection, we just have to throw EndConnectionError. This isn't really an error, just information that we'd like to disconnect.
Depends on D3245
Test Plan:
cd services yarn run-backup-service
Reviewers: palys-swm, geekbrother, varun, jimpo, atul, ashoat
Reviewed By: palys-swm, varun, atul
Subscribers: benschac, ashoat, palys-swm, Adrian, atul
Differential Revision: https://phabricator.ashoat.com/D3246