public AsyncUICommand <Tuple <int, string> > CreateExecuteWPRCommand(string wprArgs) { return(new AsyncUICommand <Tuple <int, string> >(() => { SelfHostedService service = new SelfHostedService(Model.TraceServiceUrl); return service.UseService <Tuple <int, string> >(webservice => webservice.ExecuteWPRCommand(wprArgs)); }, Model, Scheduler) { Starting = String.Format("Execute on host {0}: wpr.exe {1}", Model.Host, wprArgs), Started = "WPR completed on host" + Model.Host, StartingError = "WPR command could not be executed on host " + Model.Host, }); }
AsyncUICommand <string[]> CreateGetTraceSessions() { return(new AsyncUICommand <string[]>(() => { SelfHostedService service = new SelfHostedService(Model.TraceServiceUrl); return service.UseService <string[]>(webservice => webservice.GetTraceSessions()); }, Model, Scheduler) { Starting = "Fetching active trace sessions from server", Started = "Fetched Trace Sessions", Completed = sessions => Model.ServerTraceSessions = sessions }); }
public void HostServiceAndConnect() { SelfHostedService server = new SelfHostedService(WCFServerUri); using (var host = server.HostService(WCFServerUri)) { var sw = Stopwatch.StartNew(); for (int i = 0; i < 1000; i++) { server.UseService((service) => service.DummyMethod()); } sw.Stop(); Console.WriteLine("1000 calls did take {0:F2}s", sw.Elapsed.TotalSeconds); } }
AsyncUICommand CreateService() { return(new AsyncUICommand(() => { var service = new SelfHostedService(Model.TraceServiceUrl); try { Host = service.HostService(Model.LocalTraceServiceUrl); } catch (AddressAlreadyInUseException) { // Server already running inside another instance } }, Model, Scheduler) { StartingError = "Could not start TraceControlerService service. Error: ", Starting = "Starting TraceControlerService" + Model.LocalTraceServiceUrl, Started = "Started TraceContolerService at " + Model.LocalTraceServiceUrl }); }
public void Server_Does_Disconnect() { SelfHostedService server = new SelfHostedService(WCFServerUri); var host = server.HostService(WCFServerUri); for (int i = 0; i < 1000; i++) { if (i == 500) { host.Close(); Assert.Throws <EndpointNotFoundException>(() => { server.UseService((service) => service.DummyMethod()); } ); break; } server.UseService((service) => service.DummyMethod()); } }