public async ValueTask FindObjectByIdAsync( string domainId, Identity id, string?facet, ILookupReplyPrx reply, Current current, CancellationToken cancel) { if (domainId != _domainId) { return; // Ignore } if (await _registryServant.FindObjectAsync(id, facet, cancel).ConfigureAwait(false) is IObjectPrx proxy) { // Reply to the multicast request using the given proxy. try { await reply.FoundObjectByIdAsync(id, proxy, cancel : cancel).ConfigureAwait(false); } catch (Exception ex) { current.Communicator.Logger.Warning( $"IceDiscovery failed to send foundObjectById to `{reply}':\n{ex}"); } } }
public void FindObjectById(string domainId, Identity id, ILookupReplyPrx reply, Current current) { if (!domainId.Equals(_domainId)) { return; // Ignore } IObjectPrx proxy = _registry.FindObject(id); if (proxy != null) { // // Reply to the mulicast request using the given proxy. // try { reply.FoundObjectByIdAsync(id, proxy); } catch (LocalException) { // Ignore. } } }