use of net.sourceforge.sqlexplorer.dbproduct.Alias in project tdq-studio-se by Talend.
the class SqlexplorerService method updateConnetionAliasByName.
/*
* (non-Javadoc)
*
* @see
* org.talend.dataprofiler.service.ISqlexplorerService#updateConnetionAliasByName(org.talend.core.model.metadata.
* builder.connection.Connection, java.lang.String)
*/
@Override
public void updateConnetionAliasByName(Connection connection, String aliasName) {
if (connection == null || aliasName == null) {
return;
}
SQLExplorerPlugin sqlPlugin = SQLExplorerPlugin.getDefault();
// if the ctabItem is open,close it.
DatabaseStructureView view = sqlPlugin.findDatabaseStructureView();
if (view != null) {
view.closeCurrentCabItem(aliasName);
}
AliasManager aliasManager = sqlPlugin.getAliasManager();
Alias alias = aliasManager.getAlias(aliasName);
if (alias != null) {
try {
aliasManager.removeAlias(aliasName);
addConnetionAliasToSQLPlugin(connection);
} catch (Exception e) {
log.error(e, e);
}
}
}
use of net.sourceforge.sqlexplorer.dbproduct.Alias in project tdq-studio-se by Talend.
the class SQLEditorSessionSwitcher method setSessionOptions.
private void setSessionOptions() {
if (_sessionCombo.isDisposed()) {
return;
}
_sessionCombo.removeAll();
_sessionCombo.add("");
int index = 0;
User currentUser = null;
if (_editor.getSession() != null) {
currentUser = _editor.getSession().getUser();
}
for (Alias alias : SQLExplorerPlugin.getDefault().getAliasManager().getAliases()) {
for (User user : alias.getUsers()) {
_sessionCombo.add(user.getDescription());
sessionIndexes.put(new Integer(index++), user);
// MOD msjian TDQ-5927 2013-5-24: set the item identify by the username, url and connection name
if (currentUser != null) {
boolean isMatched = currentUser.getUserName().equals(user.getUserName()) && currentUser.getAlias().getUrl().equals(alias.getUrl());
if (currentUser.getDatabaseConnection() != null) {
isMatched = isMatched && currentUser.getDatabaseConnection().getName().equals(alias.getName());
}
if (isMatched) {
_sessionCombo.select(_sessionCombo.getItemCount() - 1);
}
}
}
}
}
use of net.sourceforge.sqlexplorer.dbproduct.Alias in project tdq-studio-se by Talend.
the class ConnectionTreeContentProvider method getChildren.
/**
* Return all the children
*
* @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
*/
public Object[] getChildren(Object parentElement) {
if (parentElement instanceof AliasManager) {
AliasManager aliases = (AliasManager) parentElement;
Object[] children = aliases.getAliases().toArray();
return children;
} else if (parentElement instanceof Alias) {
Alias alias = (Alias) parentElement;
Object[] children = alias.getUsers().toArray();
return children;
} else if (parentElement instanceof User) {
User user = (User) parentElement;
return user.getConnections().toArray();
}
return null;
}
use of net.sourceforge.sqlexplorer.dbproduct.Alias in project tdq-studio-se by Talend.
the class ConnectionsView method createPartControl.
/**
* @see org.eclipse.ui.IWorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
*/
@Override
public void createPartControl(Composite parent) {
// $NON-NLS-1$
PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, SQLExplorerPlugin.PLUGIN_ID + ".AliasView");
SQLExplorerPlugin.getDefault().getAliasManager().addListener(this);
// create outline
_treeViewer = new TreeViewer(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.MULTI);
getSite().setSelectionProvider(_treeViewer);
// create action bar
IToolBarManager toolBarMgr = getViewSite().getActionBars().getToolBarManager();
// PTODO qzhang delete the Context meun in the Connections View for feature 3519.
// toolBarMgr.add(new NewAliasAction());
// toolBarMgr.add(new NewEditorAction());
// toolBarMgr.add(new NewDatabaseStructureViewAction());
// toolBarMgr.add(new CloseAllConnectionsAction());
// toolBarMgr.add(new CloseConnectionAction());
// use hash lookup to improve performance
_treeViewer.setUseHashlookup(true);
// add content and label provider
_treeViewer.setContentProvider(new ConnectionTreeContentProvider());
_treeViewer.setLabelProvider(new ConnectionTreeLabelProvider());
// Add yyi 2010-09-15 14549: hide connections in SQL Explorer when a connection is moved to the trash bin
_treeViewer.addFilter(new ViewerFilter() {
@Override
public boolean select(Viewer viewer, Object parentElement, Object element) {
try {
IFile file = SQLExplorerPlugin.getDefault().getPropertyFile().get(element);
if (null != file && file.exists()) {
// $NON-NLS-1$
return !FileUtils.readFileToString(file.getLocation().toFile()).contains("deleted=\"true\"");
}
} catch (Exception e) {
e.printStackTrace();
}
return true;
}
});
// ~
// set input session
_treeViewer.setInput(SQLExplorerPlugin.getDefault().getAliasManager());
// doubleclick on alias opens session
_treeViewer.addDoubleClickListener(new IDoubleClickListener() {
public void doubleClick(DoubleClickEvent event) {
IStructuredSelection selection = (IStructuredSelection) event.getSelection();
if (selection != null) {
User user = null;
Object selected = selection.getFirstElement();
if (selected instanceof Alias) {
Alias alias = (Alias) selection.getFirstElement();
user = alias.getDefaultUser();
} else if (selected instanceof User) {
user = (User) selected;
} else if (selected instanceof SQLConnection) {
user = ((SQLConnection) selected).getUser();
}
if (user != null) {
openNewEditor(user);
}
}
}
});
_treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
refreshToolbar();
}
});
// add context menu
final ConnectionTreeActionGroup actionGroup = new ConnectionTreeActionGroup();
// $NON-NLS-1$
MenuManager menuManager = new MenuManager("ConnectionTreeContextMenu");
menuManager.setRemoveAllWhenShown(true);
Menu contextMenu = menuManager.createContextMenu(_treeViewer.getTree());
_treeViewer.getTree().setMenu(contextMenu);
menuManager.addMenuListener(new IMenuListener() {
public void menuAboutToShow(IMenuManager manager) {
actionGroup.fillContextMenu(manager);
}
});
_treeViewer.expandToLevel(2);
parent.layout();
SQLExplorerPlugin.getDefault().startDefaultConnections(this);
}
use of net.sourceforge.sqlexplorer.dbproduct.Alias in project tdq-studio-se by Talend.
the class ConnectionsView method getSelectedUsers.
/**
* Returns a list of selected Users; if recurse is true, indirectly selected users are included also (eg a session's
* user)
*
* @param recurse
* @return Set of Users, never returns null
*/
public Set<User> getSelectedUsers(boolean recurse) {
IStructuredSelection selection = (IStructuredSelection) _treeViewer.getSelection();
if (selection == null) {
return EMPTY_USERS;
}
LinkedHashSet<User> result = new LinkedHashSet<User>();
Iterator iter = selection.iterator();
while (iter.hasNext()) {
Object obj = iter.next();
if (obj instanceof User) {
result.add((User) obj);
} else if (recurse) {
if (obj instanceof Alias) {
Alias alias = (Alias) obj;
result.addAll(alias.getUsers());
} else if (obj instanceof SQLConnection) {
SQLConnection connection = (SQLConnection) obj;
result.add(connection.getUser());
}
}
}
return result;
}
Aggregations