public WorkerRegistrationFinalization FinalizeRegistration([FromBody] GatewayRegistrationCallback registrationCallback) { if (registrationCallback == null) { throw new ArgumentNullException(nameof(registrationCallback)); } bool success = false; Exception exception = null; try { success = WorkerConfiguration.AcceptNewDatabaseConnection(registrationCallback); } catch (Exception e) { exception = e; } return(new WorkerRegistrationFinalization { HasSuccessfullyConnectedToDatabase = success, ConnectionException = exception }); }
public bool AcceptNewDatabaseConnection(GatewayRegistrationCallback registrationCallback) { if (registrationCallback == null) throw new ArgumentNullException(nameof(registrationCallback)); Configuration = _connectionBuilder.BuildConnectionString(registrationCallback); var result = _connectionTester.CanConnectToDatabase(Configuration); if (!result) Configuration = null; //TODO: Flush hubs return result; }
public bool AcceptNewDatabaseConnection(GatewayRegistrationCallback registrationCallback) { if (registrationCallback == null) { throw new ArgumentNullException(nameof(registrationCallback)); } Configuration = _connectionBuilder.BuildConnectionString(registrationCallback); var result = _connectionTester.CanConnectToDatabase(Configuration); if (!result) { Configuration = null; } //TODO: Flush hubs return(result); }
public IDatabaseConfiguration BuildConnectionString(GatewayRegistrationCallback registrationCallback) { string connectionString = new System.Data.EntityClient.EntityConnectionStringBuilder { Metadata = "res://*", Provider = "System.Data.SqlClient", ProviderConnectionString = new System.Data.SqlClient.SqlConnectionStringBuilder { DataSource = registrationCallback.DatabaseAddress.AbsoluteUri, InitialCatalog = registrationCallback.InitialCatalog, IntegratedSecurity = false, UserID = registrationCallback.Username, Password = registrationCallback.Password }.ConnectionString }.ConnectionString; return new DatabaseConfiguration(connectionString); }
public IDatabaseConfiguration BuildConnectionString(GatewayRegistrationCallback registrationCallback) { string connectionString = new System.Data.EntityClient.EntityConnectionStringBuilder { Metadata = "res://*", Provider = "System.Data.SqlClient", ProviderConnectionString = new System.Data.SqlClient.SqlConnectionStringBuilder { DataSource = registrationCallback.DatabaseAddress.AbsoluteUri, InitialCatalog = registrationCallback.InitialCatalog, IntegratedSecurity = false, UserID = registrationCallback.Username, Password = registrationCallback.Password }.ConnectionString }.ConnectionString; return(new DatabaseConfiguration(connectionString)); }