public static void ListenForReleaseProxyResourceRequests(Context context) { const string listeningAddress = "tcp://*:5556"; using (Socket proxyReleaser = context.Socket(SocketType.REP)) { //string requestType = "GET_PROXY_RESOURCE"; //proxyRequester.StringToIdentity(requestType, Encoding.Unicode); proxyReleaser.Bind(listeningAddress); while (!_interrupted) { var jsonRequest = proxyReleaser.Recv(Encoding.Unicode); //jsonRequest = proxyRequester.Recv(Encoding.Unicode); //Console.WriteLine("Releaseing {0}.", jsonRequest); var request = JsonSerializer.DeserializeFromString <ReleaseProxyResourceRequest>(jsonRequest); var response = new ReleaseProxyResourceResponse(request); var jsonResponse = JsonSerializer.SerializeToString(response); proxyReleaser.Send(jsonResponse, Encoding.Unicode); } } }
public ReleaseProxyResourceResponse ReleaseProxyResource(ReleaseProxyResourceRequest request) { var jsonRequest = JsonSerializer.SerializeToString(request); var response = new ReleaseProxyResourceResponse(request); using (Socket proxyResourceService = _zMqContext.Socket(SocketType.REQ)) { proxyResourceService.Connect(ProxyStoreReleaseResourceAddress); //proxyResourceService.SendMore("GET_PROXY_RESOURCE", Encoding.Unicode); proxyResourceService.Send(jsonRequest, Encoding.Unicode); string jsonResponse = proxyResourceService.Recv(Encoding.Unicode); response = JsonSerializer.DeserializeFromString <ReleaseProxyResourceResponse>(jsonResponse); } return(response); }