public string AdvertiseService(string service, string argumentType, ServiceCallHandler serviceCallHandler) { string id = generateId(); serviceProviders.Add(id, new ServiceProvider(service, argumentType, serviceCallHandler)); sendOperation(new ServiceAdvertisement(id, service, argumentType)); return(id); }
public string AdvertiseService <Tin, Tout>(string service, ServiceCallHandler <Tin, Tout> serviceCallHandler) where Tin : Message where Tout : Message { string id = service; if (ServiceProviders.ContainsKey(id)) { UnadvertiseService(id); } ServiceAdvertisement serviceAdvertisement; ServiceProviders.Add(id, new ServiceProvider <Tin, Tout>(service, serviceCallHandler, out serviceAdvertisement)); Send(serviceAdvertisement); return(id); }
internal ServiceProvider(string service, string argumentType, ServiceCallHandler serviceCallHandler) { Service = service; ArgumentType = argumentType; ServiceCallHandler = serviceCallHandler; }