Search in sources :

Example 1 with MultiDatabaseLoginFailedDialog

use of com.cubrid.cubridquery.ui.connection.dialog.MultiDatabaseLoginFailedDialog in project cubrid-manager by CUBRID.

the class OpenQueryConnAction method run.

/**
	 * Open the query connection
	 */
public void run() {
    // TODO remove later
    CQBGroupNodePersistManager.getInstance().fix();
    Object[] obj = this.getSelectedObj();
    if (!isSupported(obj[0])) {
        setEnabled(false);
        return;
    }
    ISelectionProvider provider = getSelectionProvider();
    if (!(provider instanceof TreeViewer)) {
        return;
    }
    CubridDatabase[] cubridDatabases = handleSelectionObj(obj);
    if (cubridDatabases.length > 1) {
        List<MultiDatabaseloginFailedInfo> failedDatabaseList = new ArrayList<MultiDatabaseloginFailedInfo>();
        for (CubridDatabase object : cubridDatabases) {
            CubridDatabase database = (CubridDatabase) object;
            String errMsg = null;
            if (database.isAutoSavePassword()) {
                errMsg = CubridWorkbenchContrItem.connectDatabaseWithErrMsg(database.getDatabaseInfo());
            } else {
                errMsg = "Incorrect or missing password.";
            }
            if (errMsg == null) {
                database.getLoader().setLoaded(false);
                database.setLogined(true);
                CubridNavigatorView view = CubridNavigatorView.getNavigatorView(CubridQueryNavigatorView.ID);
                TreeViewer treeViewer = view.getViewer();
                treeViewer.refresh(database, true);
                treeViewer.expandToLevel(database, 1);
                ActionManager.getInstance().fireSelectionChanged(treeViewer.getSelection());
                LayoutManager.getInstance().fireSelectionChanged(treeViewer.getSelection());
                CubridNodeManager.getInstance().fireCubridNodeChanged(new CubridNodeChangedEvent(database, CubridNodeChangedEventType.DATABASE_LOGIN));
            } else {
                failedDatabaseList.add(new MultiDatabaseloginFailedInfo(database, errMsg));
            }
        }
        if (failedDatabaseList.size() > 0) {
            MultiDatabaseLoginFailedDialog dialog = new MultiDatabaseLoginFailedDialog(getShell(), failedDatabaseList);
            dialog.open();
        }
        return;
    }
    CubridDatabase database = cubridDatabases[0];
    if (!database.isLogined() && database.isAutoSavePassword()) {
        DatabaseEditorConfig editorConfig = QueryOptions.getEditorConfig(database, false);
        if (EditorConstance.isNeedSetBackground(editorConfig)) {
            new ShortSetEditorConfigAction(database).run();
        }
    }
    if (database.isAutoSavePassword() && CubridWorkbenchContrItem.connectDatabase(database.getDatabaseInfo())) {
        database.getLoader().setLoaded(false);
        CubridNavigatorView view = CubridNavigatorView.getNavigatorView(CubridQueryNavigatorView.ID);
        TreeViewer treeViewer = view.getViewer();
        treeViewer.refresh(database, true);
        treeViewer.expandToLevel(database, 1);
        ActionManager.getInstance().fireSelectionChanged(treeViewer.getSelection());
        LayoutManager.getInstance().fireSelectionChanged(treeViewer.getSelection());
        CubridNodeManager.getInstance().fireCubridNodeChanged(new CubridNodeChangedEvent(database, CubridNodeChangedEventType.DATABASE_LOGIN));
    } else {
        ActionManager.getInstance().getAction(EditQueryConnAction.ID).run();
    }
}
Also used : TreeViewer(org.eclipse.jface.viewers.TreeViewer) ArrayList(java.util.ArrayList) MultiDatabaseloginFailedInfo(com.cubrid.cubridquery.ui.connection.dialog.MultiDatabaseloginFailedInfo) CubridNodeChangedEvent(com.cubrid.common.ui.spi.event.CubridNodeChangedEvent) CubridNavigatorView(com.cubrid.common.ui.common.navigator.CubridNavigatorView) ISelectionProvider(org.eclipse.jface.viewers.ISelectionProvider) ShortSetEditorConfigAction(com.cubrid.cubridquery.ui.common.action.ShortSetEditorConfigAction) MultiDatabaseLoginFailedDialog(com.cubrid.cubridquery.ui.connection.dialog.MultiDatabaseLoginFailedDialog) CubridDatabase(com.cubrid.common.ui.spi.model.CubridDatabase) DatabaseEditorConfig(com.cubrid.common.ui.spi.model.DatabaseEditorConfig)

Aggregations

CubridNavigatorView (com.cubrid.common.ui.common.navigator.CubridNavigatorView)1 CubridNodeChangedEvent (com.cubrid.common.ui.spi.event.CubridNodeChangedEvent)1 CubridDatabase (com.cubrid.common.ui.spi.model.CubridDatabase)1 DatabaseEditorConfig (com.cubrid.common.ui.spi.model.DatabaseEditorConfig)1 ShortSetEditorConfigAction (com.cubrid.cubridquery.ui.common.action.ShortSetEditorConfigAction)1 MultiDatabaseLoginFailedDialog (com.cubrid.cubridquery.ui.connection.dialog.MultiDatabaseLoginFailedDialog)1 MultiDatabaseloginFailedInfo (com.cubrid.cubridquery.ui.connection.dialog.MultiDatabaseloginFailedInfo)1 ArrayList (java.util.ArrayList)1 ISelectionProvider (org.eclipse.jface.viewers.ISelectionProvider)1 TreeViewer (org.eclipse.jface.viewers.TreeViewer)1