Search in sources :

Example 1 with LoginQueryEditorDialog

use of com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog in project cubrid-manager by CUBRID.

the class QueryNewAction method openQueryEditor.

/**
	 * Open new query editor.
	 *
	 * @param database of query editor.
	 * @throws PartInitException when open editor error.
	 */
private void openQueryEditor(CubridDatabase database) throws PartInitException {
    IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    if (window == null || window.getActivePage() == null) {
        return;
    }
    if (database == null) {
        window.getActivePage().openEditor(new QueryUnit(), QueryEditorPart.ID);
        return;
    }
    CubridDatabase cdb = database;
    if (database == null || !database.isLogined()) {
        LoginQueryEditorDialog dialog = new LoginQueryEditorDialog(getShell());
        dialog.setSelectedConnName(getInitConnectionName(database));
        if (dialog.open() != IDialogConstants.OK_ID) {
            return;
        }
        cdb = DatabaseNavigatorMenu.SELF_DATABASE;
    }
    // [TOOLS-2425]Support shard broker
    boolean isShrd = false;
    int shardId = 0;
    int shardVal = 0;
    int shardQueryType = DatabaseInfo.SHARD_QUERY_TYPE_ID;
    if (cdb != null) {
        DatabaseInfo dbInfo = cdb.getDatabaseInfo();
        if (dbInfo != null && dbInfo.isShard()) {
            isShrd = true;
            ShardIdSelectionDialog dialog = new ShardIdSelectionDialog(getShell());
            dialog.setDatabaseInfo(dbInfo);
            dialog.setShardId(0);
            dialog.setShardVal(0);
            dialog.setShardQueryType(shardQueryType);
            if (dialog.open() == IDialogConstants.OK_ID) {
                shardId = dialog.getShardId();
                shardVal = dialog.getShardVal();
                shardQueryType = dialog.getShardQueryType();
            }
        }
    }
    QueryUnit input = new QueryUnit();
    input.setDatabase(cdb);
    IEditorPart editor = window.getActivePage().openEditor(input, QueryEditorPart.ID);
    if (editor != null) {
        QueryEditorPart editorPart = (QueryEditorPart) editor;
        editorPart.connect(cdb);
        // [TOOLS-2425]Support shard broker
        if (isShrd) {
            editorPart.setShardId(shardId);
            editorPart.setShardVal(shardVal);
            editorPart.setShardQueryType(shardQueryType);
            editorPart.changeQueryEditorPartNameWithShard();
        }
    }
}
Also used : IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) QueryEditorPart(com.cubrid.common.ui.query.editor.QueryEditorPart) QueryUnit(com.cubrid.common.ui.query.editor.QueryUnit) LoginQueryEditorDialog(com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog) DatabaseInfo(com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo) ShardIdSelectionDialog(com.cubrid.common.ui.common.dialog.ShardIdSelectionDialog) IEditorPart(org.eclipse.ui.IEditorPart) CubridDatabase(com.cubrid.common.ui.spi.model.CubridDatabase)

Example 2 with LoginQueryEditorDialog

use of com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog in project cubrid-manager by CUBRID.

the class QueryNewCustomAction method openQueryEditor.

/**
	 * Open new query editor.
	 * 
	 * @param database of query editor.
	 * @throws PartInitException when open editor error.
	 */
private void openQueryEditor(CubridDatabase database) throws PartInitException {
    IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    if (window == null || window.getActivePage() == null) {
        return;
    }
    CubridDatabase cdb = DatabaseNavigatorMenu.NULL_DATABASE;
    LoginQueryEditorDialog loginDialog = new LoginQueryEditorDialog(getShell());
    loginDialog.setSelectedConnName(getInitConnectionName(database));
    if (loginDialog.open() == IDialogConstants.OK_ID) {
        cdb = DatabaseNavigatorMenu.SELF_DATABASE;
    } else {
        return;
    }
    // [TOOLS-2425]Support shard broker
    if (cdb != null) {
        DatabaseInfo dbInfo = cdb.getDatabaseInfo();
        if (dbInfo != null && dbInfo.isShard()) {
            ShardIdSelectionDialog dialog = new ShardIdSelectionDialog(getShell());
            dialog.setDatabaseInfo(dbInfo);
            dialog.setShardId(0);
            dialog.setShardVal(0);
            dialog.setShardQueryType(dbInfo.getShardQueryType());
            if (dialog.open() == IDialogConstants.OK_ID) {
                dbInfo.setCurrentShardId(dialog.getShardId());
            }
        }
    }
    QueryUnit input = new QueryUnit();
    input.setDatabase(cdb);
    IEditorPart editor = window.getActivePage().openEditor(input, QueryEditorPart.ID);
    if (editor != null) {
        ((QueryEditorPart) editor).connect(cdb);
    }
}
Also used : IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) QueryEditorPart(com.cubrid.common.ui.query.editor.QueryEditorPart) QueryUnit(com.cubrid.common.ui.query.editor.QueryUnit) LoginQueryEditorDialog(com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog) DatabaseInfo(com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo) ShardIdSelectionDialog(com.cubrid.common.ui.common.dialog.ShardIdSelectionDialog) IEditorPart(org.eclipse.ui.IEditorPart) CubridDatabase(com.cubrid.common.ui.spi.model.CubridDatabase)

Example 3 with LoginQueryEditorDialog

use of com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog in project cubrid-manager by CUBRID.

the class CQDatabaseNavigatorMenu method handleWithSelfConn.

/**
	 * 
	 * When click self-connection menu item, handle with this event
	 * 
	 * @param dbItem DatabaseMenuItem
	 * @return boolean
	 */
public boolean handleWithSelfConn(DatabaseMenuItem dbItem) {
    LoginQueryEditorDialog dialog = new LoginQueryEditorDialog(parent.getShell());
    dialog.setSelectedConnName(DatabaseNavigatorMenu.SELF_DATABASE_SELECTED_LABEL);
    if (dialog.open() == IDialogConstants.OK_ID) {
        return true;
    } else {
        dbItem.setSelection(false);
        return false;
    }
}
Also used : LoginQueryEditorDialog(com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog)

Aggregations

LoginQueryEditorDialog (com.cubrid.cubridquery.ui.common.dialog.LoginQueryEditorDialog)3 ShardIdSelectionDialog (com.cubrid.common.ui.common.dialog.ShardIdSelectionDialog)2 QueryEditorPart (com.cubrid.common.ui.query.editor.QueryEditorPart)2 QueryUnit (com.cubrid.common.ui.query.editor.QueryUnit)2 CubridDatabase (com.cubrid.common.ui.spi.model.CubridDatabase)2 DatabaseInfo (com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo)2 IEditorPart (org.eclipse.ui.IEditorPart)2 IWorkbenchWindow (org.eclipse.ui.IWorkbenchWindow)2