CompServHubClient.cs 1.2 KB

1234567891011121314151617181920212223242526272829
  1. using static CompServ.CompServConst;
  2. namespace CompServ.ClientLibrary;
  3. public class CompServHubClient(string server) : CompServClient(server, ApiPathHubRootForCheckAlive, AliveMessageHub)
  4. {
  5. public async Task RegisterWorker(int port, int ratio)
  6. {
  7. var msg = ModelExtensionMethod.BuildWorkerRegisterRequestMessage(port, ratio);
  8. var httpResponseMessage = await new HttpClient() { BaseAddress = ServerUri }.SendAsync(msg);
  9. httpResponseMessage.EnsureSuccessStatusCode();
  10. }
  11. public async Task UnRegisterWorker(int port)
  12. {
  13. var msg = ModelExtensionMethod.BuildWorkerUnRegisterRequestMessage(port);
  14. var httpResponseMessage = await new HttpClient() { BaseAddress = ServerUri }.SendAsync(msg);
  15. httpResponseMessage.EnsureSuccessStatusCode();
  16. }
  17. public async Task<string> GetWorker()
  18. {
  19. var msg = ModelExtensionMethod.BuildClientGetWorkerRequest();
  20. var httpResponseMessage = await new HttpClient() { BaseAddress = ServerUri }.SendAsync(msg);
  21. httpResponseMessage.EnsureSuccessStatusCode();
  22. var workerUrl = await httpResponseMessage.Content.ReadAsStringAsync();
  23. return workerUrl;
  24. }
  25. }