use of net.sourceforge.sqlexplorer.plugin.actions.OpenPasswordConnectDialogAction in project tdq-studio-se by Talend.
the class ConnectAliasAction method run.
public void run() {
Set<User> users = getView().getSelectedUsers(true);
for (User user : users) {
OpenPasswordConnectDialogAction openDlgAction = new OpenPasswordConnectDialogAction(user.getAlias(), user, false);
openDlgAction.run();
}
getView().refresh();
}
use of net.sourceforge.sqlexplorer.plugin.actions.OpenPasswordConnectDialogAction in project tdq-studio-se by Talend.
the class NewConnection method run.
public void run() {
OpenPasswordConnectDialogAction openDlgAction = new OpenPasswordConnectDialogAction(user.getAlias(), user, false);
openDlgAction.run();
}
use of net.sourceforge.sqlexplorer.plugin.actions.OpenPasswordConnectDialogAction in project tdq-studio-se by Talend.
the class SqlexplorerService method findSqlExplorerTableNode.
/*
* (non-Javadoc)
*
* @see
* org.talend.dataprofiler.service.ISqlexplorerService#findSqlExplorerTableNode(org.talend.core.model.metadata.builder
* .connection.Connection, orgomg.cwm.objectmodel.core.Package, java.lang.String, java.lang.String)
*/
@Override
public void findSqlExplorerTableNode(Connection providerConnection, Package parentPackageElement, String tableName, String activeTabName) {
// Open data explore perspective.
if (GlobalServiceRegister.getDefault().isServiceRegistered(ITDQRepositoryService.class)) {
ITDQRepositoryService service = (ITDQRepositoryService) GlobalServiceRegister.getDefault().getService(ITDQRepositoryService.class);
if (service != null) {
service.changePerspectiveAction(SQLExplorerPluginPerspective.class.getName());
} else {
return;
}
}
Collection<Alias> aliases = SQLExplorerPlugin.getDefault().getAliasManager().getAliases();
String url = JavaSqlFactory.getURL(providerConnection);
User currentUser = null;
for (Alias alias : aliases) {
if (alias.getUrl().equals(url)) {
currentUser = alias.getDefaultUser();
OpenPasswordConnectDialogAction openDlgAction = new OpenPasswordConnectDialogAction(alias, alias.getDefaultUser(), false);
openDlgAction.run();
break;
}
}
// MOD qiongli bug 13093,2010-7-2,show the warning dialog when the table can't be found
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
if (currentUser == null) {
// $NON-NLS-1$
MessageDialog.openWarning(// $NON-NLS-1$
shell, // $NON-NLS-1$
Messages.getString("SqlExplorerBridge.Warning"), // $NON-NLS-1$
Messages.getString("SqlExplorerBridge.MissTable") + tableName);
return;
}
DatabaseNode root = currentUser.getMetaDataSession().getRoot();
root.load();
List<INode> catalogs = root.getCatalogs();
List<INode> schemas = root.getSchemas();
Catalog catalog = SwitchHelpers.CATALOG_SWITCH.doSwitch(parentPackageElement);
Schema schema = SwitchHelpers.SCHEMA_SWITCH.doSwitch(parentPackageElement);
INode catalogOrSchemaNode = null;
// TDQ-12005: fix Exasol/hive(TDQ-11887: hdp20 at least) database can view index/keys well
String findCatalogNodeName = isExasol(url) ? "EXA_DB" : (isHive(url) ? "NoCatalog" : "");
if (!findCatalogNodeName.equals("") && !catalogs.isEmpty()) {
for (INode catalogNode : catalogs) {
if (findCatalogNodeName.equalsIgnoreCase(catalogNode.getName())) {
catalogOrSchemaNode = catalogNode;
break;
}
}
} else {
if (catalog != null) {
// MOD klliu bug 14662 2010-08-05
if (!catalogs.isEmpty()) {
for (INode catalogNode : catalogs) {
if (parentPackageElement.getName().equalsIgnoreCase(catalogNode.getName())) {
catalogOrSchemaNode = catalogNode;
break;
}
}
} else {
catalogOrSchemaNode = root;
}
} else {
// MOD by zshen for 20517
if (schemas.isEmpty()) {
// the case for mssql/postgrel(which have catalog and schema structor) schema analysis.
Catalog shcmeaOfCatalogNode = CatalogHelper.getParentCatalog(parentPackageElement);
for (INode catalogNode : catalogs) {
if (shcmeaOfCatalogNode != null && shcmeaOfCatalogNode.getName().equalsIgnoreCase(catalogNode.getName())) {
catalogOrSchemaNode = catalogNode;
break;
}
}
}
for (INode schemaNode : schemas) {
if (parentPackageElement.getName().equalsIgnoreCase(schemaNode.getName())) {
catalogOrSchemaNode = schemaNode;
break;
}
}
}
}
// find the table folder node.
if (catalogOrSchemaNode == null) {
// $NON-NLS-1$
throw new NullPointerException(Messages.getString("SqlExplorerBridge.CATORSCHMISNULL"));
}
// catalog node.
if (schema != null) {
if (catalogOrSchemaNode.getSchemaName() == null) {
catalogOrSchemaNode.setSchemaName(schema.getName());
} else if (!StringUtils.equals(catalogOrSchemaNode.getSchemaName(), schema.getName())) {
// if this catalog already loaded its children of some schema, should reload for this schema.
if (catalogOrSchemaNode.isChildrenLoaded()) {
SQLExplorerPlugin.getDefault().getDatabaseStructureView().refreshSessionTrees(currentUser.getMetaDataSession());
List<INode> catalogs2 = currentUser.getMetaDataSession().getRoot().getCatalogs();
if (catalogs2.size() != 0) {
for (INode catalogNode : catalogs2) {
if (catalogOrSchemaNode.getName().equalsIgnoreCase(catalogNode.getName())) {
catalogOrSchemaNode = catalogNode;
catalogOrSchemaNode.setSchemaName(schema.getName());
break;
}
}
}
}
}
}
// ~
INode[] childNodes = catalogOrSchemaNode.getChildNodes();
// need to find the schema and load the table nodes
if (isNetezza(url)) {
SchemaNode sNode = getNetezzaSchema(childNodes, JavaSqlFactory.getUsername(providerConnection));
if (sNode != null) {
childNodes = sNode.getChildNodes();
}
}
TableFolderNode tableFolderNode = null;
for (INode node : childNodes) {
if ("TABLE".equals(node.getQualifiedName())) {
// $NON-NLS-1$
tableFolderNode = (TableFolderNode) node;
break;
}
}
if (tableFolderNode == null) {
// $NON-NLS-1$
log.fatal(Messages.getString("SqlExplorerBridge.TABLE_FOLDER_NULL0"));
} else {
INode[] tableNodes = tableFolderNode.getChildNodes();
for (INode node : tableNodes) {
if (tableName.equalsIgnoreCase(node.getName())) {
DetailTabManager.setActiveTabName(activeTabName);
DatabaseStructureView dsView = SQLExplorerPlugin.getDefault().getDatabaseStructureView();
dsView.setSessionSelectionNode(currentUser.getMetaDataSession(), new StructuredSelection(node));
// MOD qiongli bug 13093,2010-7-2
SQLExplorerPlugin.getDefault().getConnectionsView().getTreeViewer().setSelection(new StructuredSelection(currentUser));
return;
}
}
}
// $NON-NLS-1$
MessageDialog.openWarning(// $NON-NLS-1$
shell, // $NON-NLS-1$
Messages.getString("SqlExplorerBridge.Warning"), // $NON-NLS-1$
Messages.getString("SqlExplorerBridge.MissTable") + tableName);
}
use of net.sourceforge.sqlexplorer.plugin.actions.OpenPasswordConnectDialogAction in project tdq-studio-se by Talend.
the class OpenInEditorAction method run.
public void run() {
try {
TableItem[] ti = _table.getSelection();
if (ti == null || ti.length == 0) {
return;
}
String queryDelimiter = SQLExplorerPlugin.getDefault().getPluginPreferences().getString(IConstants.SQL_QRY_DELIMITER);
StringBuffer copiedText = new StringBuffer();
for (int i = 0; i < ti.length; i++) {
SQLHistoryElement el = (SQLHistoryElement) ti[i].getData();
copiedText.append(el.getRawSQLString());
if (ti.length > 0) {
copiedText.append(queryDelimiter);
copiedText.append("\n");
}
}
SQLHistoryElement sqlHistoryElement = (SQLHistoryElement) ti[0].getData();
User user = sqlHistoryElement.getUser();
Alias alias;
if (user != null)
alias = user.getAlias();
else {
alias = sqlHistoryElement.getAlias();
if (alias != null)
user = alias.getDefaultUser();
if (user == null) {
ConnectionsView view = SQLExplorerPlugin.getDefault().getConnectionsView();
if (view != null)
user = view.getDefaultUser();
}
}
if (user != null && !user.hasAuthenticated()) {
boolean okToOpen = MessageDialog.openConfirm(_table.getShell(), Messages.getString("SQLHistoryView.OpenInEditor.Confirm.Title"), Messages.getString("SQLHistoryView.OpenInEditor.Confirm.Message.Prefix") + " " + user.getDescription() + Messages.getString("SQLHistoryView.OpenInEditor.Confirm.Message.Postfix"));
if (okToOpen) {
OpenPasswordConnectDialogAction openDlgAction = new OpenPasswordConnectDialogAction(alias, user, false);
openDlgAction.run();
}
}
SQLEditorInput input = new SQLEditorInput("SQL Editor (" + SQLExplorerPlugin.getDefault().getEditorSerialNo() + ").sql");
input.setUser(user);
IWorkbenchPage page = SQLExplorerPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage();
if (page == null)
return;
SQLEditor editorPart = (SQLEditor) page.openEditor(input, SQLEditor.class.getName());
editorPart.setText(copiedText.toString());
} catch (Throwable e) {
SQLExplorerPlugin.error("Error creating sql editor", e);
}
}
Aggregations