public ExitCode Login(string cmsname, string username, string password, string authType, bool toBIPlatform, bool toReportEngine) { //Login if (base.cancel) { return(ExitCode.CANCELED); } base.SetProgress(4); base.Log("Login to " + base.SessionURL); try{ EnterpriseCredential boEnterpriseCredential = new EnterpriseCredential(); boEnterpriseCredential.Domain = cmsname; boEnterpriseCredential.Login = username; boEnterpriseCredential.Password = password; boEnterpriseCredential.AuthType = authType; this.boSessionInfo = boSession.Login(boEnterpriseCredential); this.SessionId = this.boSessionInfo.SessionID; }catch (Exception ex) { // this.boSession.Dispose(); this.boSession = null; throw CustomException("Failed to Login", ex); } if (base.cancel) { return(ExitCode.CANCELED); } if (toBIPlatform) { base.SetProgress(9); //Get the BIPlatform service base.Log("Connect to BIPlatform service"); try{ foreach (WSResource ressource in boSessionInfo.WSResourceList) { if (ressource.WSType == "BIPlatform") { this.boConnection.URL = ressource.URL; this.boBIPlatform = new BIPlatform(boConnection, boSession.ConnectionState); break; } } if (this.boBIPlatform == null) { throw new Exception("Service not available ! "); } }catch (Exception ex) { this.Logout(); throw CustomException("Failed to access to the BIPlatform service : \r\n", ex); } } if (base.cancel) { return(ExitCode.CANCELED); } return(ExitCode.SUCCEED); }
public void Login(LoginData credentials) { boConnection = new Connection(credentials.Url); boSession = new Session_(boConnection); if (credentials.Proxy != null && !String.IsNullOrEmpty(credentials.Proxy.Host)) { boConnection.Proxy = credentials.Proxy.ToWebProxy(); } EnterpriseCredential boEnterpriseCredential = new EnterpriseCredential(); boEnterpriseCredential.Domain = credentials.Domain; boEnterpriseCredential.Login = credentials.Login; boEnterpriseCredential.Password = credentials.Password; boEnterpriseCredential.AuthType = credentials.AuthType; boSessionInfo = boSession.Login(boEnterpriseCredential); boSessionId = boSessionInfo.SessionID; }