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;
 }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 5
0
        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));
        }