public ServerConnectionAdapter(IOStream ios, ServerNetworkTableEntryStore sntes, IncomingEntryReceiver ier, ServerAdapterManager sam, NetworkTableEntryTypeManager ntetm, NTThreadManager nttm)
 {
   base.\u002Ector();
   ServerConnectionAdapter connectionAdapter = this;
   this.__\u003C\u003Econnection = new NetworkTableConnection(ios, ntetm);
   this.entryStore = sntes;
   this.transactionReceiver = ier;
   this.adapterListener = sam;
   this.gotoState(ServerConnectionState.__\u003C\u003EGOT_CONNECTION_FROM_CLIENT);
   this.readThread = nttm.newBlockingPeriodicThread((PeriodicRunnable) new ConnectionMonitorThread((ConnectionAdapter) this, this.__\u003C\u003Econnection), "Server Connection Reader Thread");
 }
 public ServerIncomingStreamMonitor(IOStreamProvider iosp, ServerNetworkTableEntryStore sntes, ServerIncomingConnectionListener sicl, ServerAdapterManager sam, NetworkTableEntryTypeManager ntetm, NTThreadManager nttm)
 {
   base.\u002Ector();
   ServerIncomingStreamMonitor incomingStreamMonitor = this;
   this.streamProvider = iosp;
   this.entryStore = sntes;
   this.incomingListener = sicl;
   this.adapterListener = sam;
   this.typeManager = ntetm;
   this.threadManager = nttm;
 }
 public NetworkTableServer(IOStreamProvider iosp, NetworkTableEntryTypeManager ntetm, NTThreadManager nttm)
 {
   NetworkTableServer networkTableServer = this;
   ServerNetworkTableEntryStore sntes;
   this.init((AbstractNetworkTableEntryStore) (sntes = new ServerNetworkTableEntryStore((AbstractNetworkTableEntryStore.TableListenerManager) this)));
   this.streamProvider = iosp;
   this.connectionList = new ServerConnectionList();
   this.writeManager = new WriteManager((FlushableOutgoingEntryReceiver) this.connectionList, nttm, this.getEntryStore(), long.MaxValue);
   this.incomingStreamMonitor = new ServerIncomingStreamMonitor(iosp, sntes, (ServerIncomingConnectionListener) this, (ServerAdapterManager) this.connectionList, ntetm, nttm);
   this.getEntryStore().setIncomingReceiver((OutgoingEntryReceiver) new TransactionDirtier((OutgoingEntryReceiver) this.writeManager));
   this.getEntryStore().setOutgoingReceiver((OutgoingEntryReceiver) new TransactionDirtier((OutgoingEntryReceiver) this.writeManager));
   this.incomingStreamMonitor.start();
   this.writeManager.start();
 }