virtual public void Serve() { while (true) { ITransport transport = transportFactory.Accept(); Protocol.BaseProcessor processor = processorFactory.Create(transport); serveClient(processor); } }