public Server(ServerUserInterface.callbackTable_ _serverUserInterfaceCallbackTable) { serverUserInterfaceCallbackTable = _serverUserInterfaceCallbackTable; clientManager = new ClientManager(); accountsManager = new AccountsManager(@"accounts.xml"); accountsManager.loadAccounts(); //REVISIT: some hard-coded stuff here needs cleanup when file operations are in place serverRingsInfo = new ServerRingInfo[Constants.NUM_RINGS]; AccountsManager ringAccountsManager; for(int index = 0; index < serverRingsInfo.Length; index ++) { ringAccountsManager = new AccountsManager(@"accounts.xml"); ringAccountsManager.loadAccounts(); serverRingsInfo[index] = new ServerRingInfo(Constants.DEFAULT_RINGS[index], new ClientManager(), ringAccountsManager, new PeerManager(), new ServerPolicyManager()); } nextTokenID = 1; }
private static void Main(string[] argv) { try { serverUserInterfaceInstance = new ServerUserInterface(); Server server = new Server(serverUserInterfaceInstance.callbackTable); //Start the server in the background serverThread = new Thread(new ThreadStart(server.start)); serverThread.IsBackground = true; serverThread.Name = "Background Server(process requests)"; serverThread.Start(); Application.ApplicationExit += new EventHandler(server.exitHandler); Application.Run(serverUserInterfaceInstance); } catch (Exception e) { MessageBox.Show(e.ToString()); } }