protected virtual void OkClicked(object sender, EventArgs e) { if (context.IsTemporary) { try { //make it a real connection context and fill in the database IConnectionPool pool = DbFactoryService.CreateConnectionPool(DatabaseConnection); pool.Initialize(); ISchemaProvider provider = DbFactoryService.CreateSchemaProvider(DatabaseConnection, pool); DatabaseSchema db = provider.CreateDatabaseSchema(settingsWidget.ConnectionSettings.Database); OnBeforeDatabaseCreation(db); ((AbstractEditSchemaProvider)provider).CreateDatabase(db); context.ConnectionSettings.Database = settingsWidget.ConnectionSettings.Database; context.ConnectionSettings.Name = settingsWidget.ConnectionSettings.Name; context.IsTemporary = false; MessageService.ShowMessage(AddinCatalog.GetString("Database has been created.")); ConnectionContextService.AddDatabaseConnectionContext(context); } catch (Exception ex) { QueryService.RaiseException(ex); Respond(ResponseType.Close); return; } } Respond(ResponseType.Ok); }
public virtual bool ValidateFields() { bool ok = false; if (checkCustom.Active) { ok = textConnectionString.Buffer.Text.Length > 0; } else { bool alreadyExists = ConnectionContextService.DatabaseConnectionContextExist(ConnectionSettings); TreeIter iter; ok = entryName.Text.Length > 0 && (entryServer.Text.Length > 0 || !enableServerEntry) && (entryUsername.Text.Length > 0 || !enableUsernameEntry) && (comboDatabase.Entry.Text.Length > 0) && (!alreadyExists || (isEditMode && ConnectionSettings.Name == entryName.Text)); if (alreadyExists && !isEditMode) { labelMessage.Markup = string.Concat("<i>", AddinCatalog.GetString("Connection Name Already used, choose another."), "</i>"); } else { labelMessage.Markup = ""; } } return(ok); }
protected void OnAddConnection() { DatabaseConnectionSettingsDialog dlg = new DatabaseConnectionSettingsDialog(); if (dlg.Run() == (int)ResponseType.Ok) { ConnectionContextService.AddDatabaseConnectionContext(dlg.ConnectionSettings); } dlg.Destroy(); }
protected void OnRemoveConnection() { DatabaseConnectionContext context = (DatabaseConnectionContext)CurrentNode.DataItem; if (MessageService.Confirm( AddinCatalog.GetString("Are you sure you want to remove connection '{0}'?", context.ConnectionSettings.Name), AlertButton.Remove)) { ConnectionContextService.RemoveDatabaseConnectionContext(context); } }
protected virtual void OnOkClicked(object sender, System.EventArgs e) { if (!isEditMode) { ConnectionContextService.AddDatabaseConnectionContext(ConnectionSettings); } settings = settingsWidget.ConnectionSettings; Respond(ResponseType.Ok); Hide(); }
protected void OnEditConnection() { DatabaseConnectionContext context = (DatabaseConnectionContext)CurrentNode.DataItem; DatabaseConnectionSettings newSettings; if (context.DbFactory.GuiProvider.ShowEditConnectionDialog(context.DbFactory, context.ConnectionSettings, out newSettings)) { DatabaseConnectionContext newContext = new DatabaseConnectionContext(newSettings); ConnectionContextService.RemoveDatabaseConnectionContext(context); ConnectionContextService.AddDatabaseConnectionContext(newContext); newContext.Refresh(); } }
private void OnCreateDatabaseThreaded(object state) { DatabaseConnectionContext context = state as DatabaseConnectionContext; ISchemaProvider schemaProvider = context.SchemaProvider; DatabaseSchema db = new DatabaseSchema(schemaProvider); db.Name = context.ConnectionSettings.Database; schemaProvider.CreateDatabase(db); DispatchService.GuiDispatch(delegate() { WaitDialog.HideDialog(); ConnectionContextService.AddDatabaseConnectionContext(context); }); }
private void OnDropDatabaseThreaded(object state) { DatabaseConnectionContext context = (DatabaseConnectionContext)CurrentNode.DataItem; try { context.ConnectionPool.Initialize(); ISchemaProvider provider = context.SchemaProvider; DatabaseSchema db = provider.CreateDatabaseSchema(context.ConnectionSettings.Database); IEditSchemaProvider schemaProvider = (IEditSchemaProvider)context.SchemaProvider; schemaProvider.DropDatabase(db); ConnectionContextService.RemoveDatabaseConnectionContext(context); } catch (Exception ex) { DispatchService.GuiDispatch(delegate { MessageService.ShowException(ex); }); } }
protected virtual void OnButtonEditClicked(object sender, System.EventArgs e) { DatabaseConnectionSettings settings = null; DatabaseConnectionContext ctx; if (comboConnection.DatabaseConnection != null) { ctx = comboConnection.DatabaseConnection; if (ctx.DbFactory.GuiProvider.ShowEditConnectionDialog(comboConnection.DatabaseConnection.DbFactory, comboConnection.DatabaseConnection.ConnectionSettings, out settings)) { DatabaseConnectionContext newContext = new DatabaseConnectionContext(settings); ConnectionContextService.RemoveDatabaseConnectionContext(ctx); ConnectionContextService.AddDatabaseConnectionContext(newContext); } } }