public ACSServer(HostComm hostComm, L3.Cargo.Communications.Common.Logger log, string localCaseListPath, out CaseList caseList) { string uri = (String)ConfigurationManager.AppSettings["ConnectionUri"]; string AllowedIPList = (String)ConfigurationManager.AppSettings["AllowedIPList"]; string path = localCaseListPath; string caseListSource = (path == null ? (String)ConfigurationManager.AppSettings["CaseListSource"] : "File System" ); string Alias = (String)ConfigurationManager.AppSettings["ServerName"]; m_ProfilesFolder = ConfigurationManager.AppSettings["UserProfiles"]; bool isReference; if (ConfigurationManager.AppSettings["ACSMode"].Equals("Archive")) { isReference = false; if (path == null) path = ConfigurationManager.AppSettings["CaseListFileSystemPath"]; } else { isReference = true; if (path == null) path = ConfigurationManager.AppSettings["ReferenceFileSystemPath"]; } if (caseListSource == "File System") caseList = new FSCaseList(log, path, isReference); else caseList = new DBCaseList(log, path, isReference); caseList.configFullSync(); base.Subscribe(caseList); base.caseList = caseList; bool loginRequired = Boolean.Parse(ConfigurationManager.AppSettings["LoginRequired"]); acsCommHost = new NetworkHost(this, new Uri(uri), Alias, AllowedIPList, loginRequired); acsCommHost.SendTimeoutMin = int.Parse(ConfigurationManager.AppSettings["WcfTcpBindingSendTimeoutMin"]); acsCommHost.ReceiveTimeoutMin = int.Parse(ConfigurationManager.AppSettings["WcfTcpBindingReceiveTimeoutMin"]); EnableArchiveDecision = Boolean.Parse(ConfigurationManager.AppSettings["EnableArchiveDecision"]); caseList.List.CaseListTable.CaseListTableRowChanged += new CaseListDataSet.CaseListTableRowChangeEventHandler(CaseListTable_RowChanged); caseList.List.CaseListTable.CaseListTableRowDeleting += new CaseListDataSet.CaseListTableRowChangeEventHandler(CaseListTable_RowChanged); m_HostComm = hostComm; m_HostComm.ConnectedToHostEvent += new HostComm.ConnectedToHostHandler(hostComm_ConnectedToHostEvent); m_WSCallbacks = new Dictionary<String, ICaseRequestManagerCallback>(); m_WSLastPing = new Dictionary<String, DateTime>(); ClientConnThread = new Thread(new ThreadStart(ClientConnState)); }
public ACSServer(HostComm hostComm, L3.Cargo.Communications.Common.Logger log, string localCaseListPath, out CaseList caseList) { string uri = (String)ConfigurationManager.AppSettings["ConnectionUri"]; string AllowedIPList = (String)ConfigurationManager.AppSettings["AllowedIPList"]; string path = localCaseListPath; string caseListSource = (path == null ? (String)ConfigurationManager.AppSettings["CaseListSource"] : "File System" ); string Alias = (String)ConfigurationManager.AppSettings["ServerName"]; m_ProfilesFolder = ConfigurationManager.AppSettings["UserProfiles"]; bool isReference; if (ConfigurationManager.AppSettings["ACSMode"].Equals("Archive")) { isReference = false; if (path == null) { path = ConfigurationManager.AppSettings["CaseListFileSystemPath"]; } } else { isReference = true; if (path == null) { path = ConfigurationManager.AppSettings["ReferenceFileSystemPath"]; } } if (caseListSource == "File System") { caseList = new FSCaseList(log, path, isReference); } else { caseList = new DBCaseList(log, path, isReference); } caseList.configFullSync(); base.Subscribe(caseList); base.caseList = caseList; bool loginRequired = Boolean.Parse(ConfigurationManager.AppSettings["LoginRequired"]); acsCommHost = new NetworkHost(this, new Uri(uri), Alias, AllowedIPList, loginRequired); acsCommHost.SendTimeoutMin = int.Parse(ConfigurationManager.AppSettings["WcfTcpBindingSendTimeoutMin"]); acsCommHost.ReceiveTimeoutMin = int.Parse(ConfigurationManager.AppSettings["WcfTcpBindingReceiveTimeoutMin"]); EnableArchiveDecision = Boolean.Parse(ConfigurationManager.AppSettings["EnableArchiveDecision"]); caseList.List.CaseListTable.CaseListTableRowChanged += new CaseListDataSet.CaseListTableRowChangeEventHandler(CaseListTable_RowChanged); caseList.List.CaseListTable.CaseListTableRowDeleting += new CaseListDataSet.CaseListTableRowChangeEventHandler(CaseListTable_RowChanged); m_HostComm = hostComm; m_HostComm.ConnectedToHostEvent += new HostComm.ConnectedToHostHandler(hostComm_ConnectedToHostEvent); m_WSCallbacks = new Dictionary <String, ICaseRequestManagerCallback>(); m_WSLastPing = new Dictionary <String, DateTime>(); ClientConnThread = new Thread(new ThreadStart(ClientConnState)); }