public DataSourceArray connectToLoginSite(string sitecode) { DataSourceArray result = new DataSourceArray(); if (String.IsNullOrEmpty(sitecode)) { result.fault = new FaultTO(NO_SITECODE); } else if (mySession.SiteTable == null) { result.fault = new FaultTO(NO_SITE_TABLE); } else if (mySession.SiteTable.getSite(sitecode) == null) { result.fault = new FaultTO(SITE_NOT_IN_SITE_TABLE); } else if (mySession.ConnectionSet != null && mySession.ConnectionSet.Count > 0 && mySession.ConnectionSet.HasConnection(sitecode)) { result.fault = new FaultTO(ALREADY_CONNECTED_TO_SITE); } if (result.fault != null) { return(result); } try { Site site = mySession.SiteTable.getSite(sitecode); DataSource src = site.getDataSourceByModality("HIS"); AbstractDaoFactory factory = AbstractDaoFactory.getDaoFactory(AbstractDaoFactory.getConstant(src.Protocol)); AbstractConnection c = factory.getConnection(src); c.connect(); result = new DataSourceArray(src); result.items[0].welcomeMessage = c.getWelcomeMessage(); mySession.ConnectionSet.Add(c); } catch (Exception e) { result.fault = new FaultTO(e.Message); } return(result); }
protected void TestVistaSettingsClick(object sender, EventArgs e) { int port = 0; if (String.IsNullOrEmpty(textboxVistaIp.Text) || String.IsNullOrEmpty(textboxVistaPort.Text) || !Int32.TryParse(textboxVistaPort.Text, out port)) { labelMessage.Text = "Invalid Vista connection parameters. Please be sure to enter a valid IP address and port number"; return; } DataSource testSrc = new DataSource(); testSrc.Provider = textboxVistaIp.Text; testSrc.Modality = "HIS"; testSrc.Port = port; testSrc.Protocol = "VISTA"; testSrc.SiteId = new SiteId("900", "Test"); // this site id doesn't matter - it's just there because a site ID is expected by the code below string welcomeMsg = ""; try { AbstractDaoFactory factory = AbstractDaoFactory.getDaoFactory(AbstractDaoFactory.getConstant(testSrc.Protocol)); AbstractConnection cxn = factory.getConnection(testSrc); cxn.connect(); welcomeMsg = cxn.getWelcomeMessage(); cxn.disconnect(); } catch (Exception exc) { labelMessage.Text = "Unable to connect to that datasource. Please check your test system and try again." + "This might help figure out why:</p><p>" + exc.ToString() + "</p>"; return; } labelMessage.Text = "<p>You rock. Connection successfully established. You should put this site in your VhaSites.xml " + "file is you'd like it to be available later on via MDWS.</p><p>" + welcomeMsg + "</p>"; }
public DataSourceTO connectSite(string sitecode) { DataSourceTO result = new DataSourceTO(); if (String.IsNullOrEmpty(sitecode)) { result.fault = new FaultTO(NO_SITECODE); } else if (mySession.SiteTable == null || mySession.SiteTable.getSite(sitecode) == null) { result.fault = new FaultTO(NO_SITE_TABLE); } else if (mySession.ConnectionSet != null && mySession.ConnectionSet.Count > 0 && mySession.ConnectionSet.HasConnection(sitecode)) { result.fault = new FaultTO(ALREADY_CONNECTED_TO_SITE); } if (result.fault != null) { return(result); } try { Site site = (Site)mySession.SiteTable.Sites[sitecode]; DataSource dataSource = site.getDataSourceByModality("HIS"); AbstractDaoFactory factory = AbstractDaoFactory.getDaoFactory(AbstractDaoFactory.getConstant(dataSource.Protocol)); AbstractConnection c = factory.getConnection(dataSource); c.connect(); result = new DataSourceTO(dataSource); result.welcomeMessage = c.getWelcomeMessage(); mySession.ConnectionSet.Add(c); } catch (Exception e) { result.fault = new FaultTO(e.Message); } return(result); }