Search in sources :

Example 71 with CubridServer

use of com.cubrid.common.ui.spi.model.CubridServer in project cubrid-manager by CUBRID.

the class LoginQueryEditorDialog method buttonPressed.

/**
	 * @see org.eclipse.jface.dialogs.Dialog#buttonPressed(int)
	 * @param buttonId the id of the button that was pressed (see
	 *        <code>IDialogConstants.*_ID</code> constants)
	 */
protected void buttonPressed(int buttonId) {
    if (buttonId == TEST_CONNECT_ID || buttonId == IDialogConstants.OK_ID) {
        String dbName = connectionComp.getDatabaseText().getText();
        String brokerIp = connectionComp.getBrokerIpText().getText();
        String brokerPort = connectionComp.getBrokerPortText().getText();
        String userName = connectionComp.getUserNameText().getText();
        String password = connectionComp.getPasswordText().getText();
        String charset = connectionComp.getCharsetCombo().getText();
        String jdbcDriver = connectionComp.getJdbcCombo().getText();
        String jdbcAttrs = connectionComp.getAttrText().getText().trim();
        boolean isShard = connectionComp.getBtnShard().getSelection();
        int currentShardId = connectionComp.getCurShardId();
        ServerInfo serverInfo = new ServerInfo();
        serverInfo.setServerName(DatabaseNavigatorMenu.SELF_DATABASE_ID);
        serverInfo.setHostAddress(brokerIp);
        serverInfo.setHostMonPort(Integer.parseInt(brokerPort));
        serverInfo.setHostJSPort(Integer.parseInt(brokerPort) + 1);
        serverInfo.setJdbcDriverVersion(jdbcDriver);
        DatabaseInfo dbInfo = new DatabaseInfo(dbName, serverInfo);
        dbInfo.setBrokerIP(brokerIp);
        dbInfo.setBrokerPort(brokerPort);
        dbInfo.setCharSet(charset);
        dbInfo.setJdbcAttrs(jdbcAttrs);
        dbInfo.setShard(isShard);
        dbInfo.setCurrentShardId(currentShardId);
        DbUserInfo userInfo = new DbUserInfo();
        userInfo.setDbName(dbName);
        userInfo.setName(userName);
        userInfo.setNoEncryptPassword(password);
        dbInfo.setAuthLoginedDbUserInfo(userInfo);
        TaskExecutor taskExcutor = new ConnectDatabaseExecutor(dbInfo);
        new ExecTaskWithProgress(taskExcutor).exec();
        if (!taskExcutor.isSuccess()) {
            return;
        }
        if (buttonId == TEST_CONNECT_ID) {
            CommonUITool.openInformationBox(com.cubrid.cubridquery.ui.connection.Messages.titleSuccess, com.cubrid.cubridquery.ui.connection.Messages.msgTestConnSuccess);
            return;
        }
        // check whether dba authorization
        IsDBAUserTask checkTask = new IsDBAUserTask(dbInfo);
        checkTask.execute();
        userInfo.setDbaAuthority(checkTask.isDBAUser());
        dbInfo.setLogined(true);
        dbInfo.setRunningType(DbRunningType.CS);
        dbInfo.getServerInfo().setConnected(true);
        dbInfo.setLogined(true);
        CubridServer server = new CubridServer(DatabaseNavigatorMenu.SELF_DATABASE_ID, DatabaseNavigatorMenu.SELF_DATABASE_SELECTED_LABEL, null, null);
        server.setServerInfo(serverInfo);
        server.setType(NodeType.SERVER);
        DatabaseNavigatorMenu.SELF_DATABASE.setDatabaseInfo(dbInfo);
        DatabaseNavigatorMenu.SELF_DATABASE.setServer(server);
        DatabaseNavigatorMenu.SELF_DATABASE.setStartAndLoginIconPath("icons/navigator/database_start_connected.png");
        DatabaseNavigatorMenu.SELF_DATABASE.setStartAndLogoutIconPath("icons/navigator/database_start_disconnected.png");
        DatabaseNavigatorMenu.SELF_DATABASE.setLoader(new CQBDbConnectionLoader());
    }
    super.buttonPressed(buttonId);
}
Also used : DbUserInfo(com.cubrid.cubridmanager.core.cubrid.user.model.DbUserInfo) TaskExecutor(com.cubrid.common.ui.spi.progress.TaskExecutor) DatabaseInfo(com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo) ServerInfo(com.cubrid.cubridmanager.core.common.model.ServerInfo) CQBDbConnectionLoader(com.cubrid.cubridmanager.ui.spi.model.loader.CQBDbConnectionLoader) ExecTaskWithProgress(com.cubrid.common.ui.spi.progress.ExecTaskWithProgress) IsDBAUserTask(com.cubrid.cubridmanager.core.cubrid.user.task.IsDBAUserTask) ConnectDatabaseExecutor(com.cubrid.common.ui.spi.util.ConnectDatabaseExecutor) CubridServer(com.cubrid.common.ui.spi.model.CubridServer)

Example 72 with CubridServer

use of com.cubrid.common.ui.spi.model.CubridServer in project cubrid-manager by CUBRID.

the class TableLabelProvider method parseURL.

/**
	 * Parse the databases from the url
	 *
	 * @return
	 */
private CubridDatabase parseURL(String url) {
    // FIXME extract
    CubridDatabase database = null;
    String mainParams = null;
    String otherParams = null;
    /*Split the parameter by ?*/
    int questionIndex = url.indexOf("?");
    if (questionIndex > 0) {
        mainParams = url.substring(0, questionIndex);
        if (questionIndex + 1 < url.length()) {
            otherParams = url.substring(questionIndex + 1);
        }
    } else {
        mainParams = url;
    }
    String[] colonParams = mainParams.split(":");
    if (colonParams.length >= 5) {
        String host = colonParams[2];
        String port = colonParams[3];
        String dbName = colonParams[4];
        String dbUser = "", dbPassword = "";
        if (colonParams.length >= 6) {
            dbUser = colonParams[5];
        }
        if (colonParams.length >= 7) {
            dbPassword = colonParams[6];
        }
        String charset = null;
        StringBuilder jdbcAttrSB = new StringBuilder();
        /*Parse the connection parameters*/
        if (otherParams != null) {
            /*find the charset parameter*/
            String[] propertyArray = otherParams.split("&");
            for (int i = 0; i < propertyArray.length; i++) {
                String str = propertyArray[i];
                if (str.toLowerCase().indexOf("charset") >= 0) {
                    int index = str.indexOf("=");
                    if (index >= 0 && index + 1 < str.length()) {
                        charset = str.substring(index + 1);
                        propertyArray[i] = null;
                    }
                }
            }
            /*find other parameters*/
            for (int i = 0; i < propertyArray.length; i++) {
                if (propertyArray[i] != null) {
                    jdbcAttrSB.append(propertyArray[i]);
                }
                if (i + 1 < propertyArray.length && propertyArray[i + 1] != null) {
                    jdbcAttrSB.append("&");
                }
            }
        }
        String connenctionName = host + ":" + port + ":" + dbName + ":" + dbUser;
        ServerInfo serverInfo = new ServerInfo();
        serverInfo.setServerName(connenctionName);
        serverInfo.setHostAddress(host);
        serverInfo.setHostMonPort(Integer.parseInt(port));
        serverInfo.setHostJSPort(Integer.parseInt(port) + 1);
        serverInfo.setUserName(dbName + "@" + host);
        DatabaseInfo dbInfo = new DatabaseInfo(dbName, serverInfo);
        dbInfo.setBrokerIP(host);
        dbInfo.setBrokerPort(port);
        if (charset != null) {
            dbInfo.setCharSet(charset);
        }
        dbInfo.setJdbcAttrs(jdbcAttrSB.toString());
        DbUserInfo userInfo = new DbUserInfo();
        userInfo.setDbName(dbName);
        userInfo.setName(dbUser);
        userInfo.setNoEncryptPassword(dbPassword);
        dbInfo.setAuthLoginedDbUserInfo(userInfo);
        CubridServer server = new CubridServer(connenctionName, connenctionName, null, null);
        server.setServerInfo(serverInfo);
        server.setType(NodeType.SERVER);
        String dbId = connenctionName + ICubridNodeLoader.NODE_SEPARATOR + connenctionName;
        database = new CubridDatabase(dbId, dbName);
        database.setDatabaseInfo(dbInfo);
        database.setServer(server);
        database.setStartAndLoginIconPath("icons/navigator/database_start_connected.png");
        database.setStartAndLogoutIconPath("icons/navigator/database_start_disconnected.png");
        database.setAutoSavePassword(true);
        database.setLabel(connenctionName);
        CubridNodeLoader loader = new CQBDbConnectionLoader();
        loader.setLevel(ICubridNodeLoader.FIRST_LEVEL);
        database.setLoader(loader);
    }
    return database;
}
Also used : DbUserInfo(com.cubrid.cubridmanager.core.cubrid.user.model.DbUserInfo) DatabaseInfo(com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo) ServerInfo(com.cubrid.cubridmanager.core.common.model.ServerInfo) CQBDbConnectionLoader(com.cubrid.cubridmanager.ui.spi.model.loader.CQBDbConnectionLoader) ICubridNodeLoader(com.cubrid.common.ui.spi.model.ICubridNodeLoader) CubridNodeLoader(com.cubrid.common.ui.spi.model.CubridNodeLoader) CubridDatabase(com.cubrid.common.ui.spi.model.CubridDatabase) CubridServer(com.cubrid.common.ui.spi.model.CubridServer)

Example 73 with CubridServer

use of com.cubrid.common.ui.spi.model.CubridServer in project cubrid-manager by CUBRID.

the class ConnectionUrlExportAction method run.

public void run() {
    Object[] objs = this.getSelectedObj();
    if (objs == null || objs.length == 0) {
        CommonUITool.openErrorBox(Messages.errNoDatabaseSelected);
        return;
    }
    List<ICubridNode> selections = new ArrayList<ICubridNode>();
    Set<CubridDatabase> addedDatabaseSet = new HashSet<CubridDatabase>();
    for (Object obj : objs) {
        if (obj instanceof CubridServer) {
            CubridServer server = (CubridServer) obj;
            selections.add(server);
            List<ICubridNode> children = server.getChildren();
            if (children != null) {
                for (ICubridNode child : children) {
                    if (child instanceof DefaultCubridNode) {
                        List<ICubridNode> dbChildren = ((DefaultCubridNode) child).getChildren();
                        for (ICubridNode dbChild : dbChildren) {
                            if (dbChild instanceof CubridDatabase) {
                                addedDatabaseSet.add((CubridDatabase) dbChild);
                            }
                        }
                    }
                }
            }
        }
    }
    for (Object obj : objs) {
        if (obj instanceof CubridDatabase) {
            if (!addedDatabaseSet.contains(obj)) {
                selections.add((ICubridNode) obj);
            }
        }
    }
    /*Process export*/
    ExportConnectionDialog dialog = new ExportConnectionDialog(this.getShell(), selections);
    dialog.open();
}
Also used : DefaultCubridNode(com.cubrid.common.ui.spi.model.DefaultCubridNode) ArrayList(java.util.ArrayList) ICubridNode(com.cubrid.common.ui.spi.model.ICubridNode) CubridDatabase(com.cubrid.common.ui.spi.model.CubridDatabase) CubridServer(com.cubrid.common.ui.spi.model.CubridServer) ExportConnectionDialog(com.cubrid.common.ui.common.dialog.ExportConnectionDialog) HashSet(java.util.HashSet)

Example 74 with CubridServer

use of com.cubrid.common.ui.spi.model.CubridServer in project cubrid-manager by CUBRID.

the class ConnectionKeepAliveHandler method nodeChanged.

@Override
public void nodeChanged(CubridNodeChangedEvent event) {
    ICubridNode cubridNode = event.getCubridNode();
    CubridNodeChangedEventType eventType = event.getType();
    if (cubridNode == null || eventType == null) {
        return;
    }
    if (!(cubridNode instanceof CubridServer)) {
        return;
    }
    CubridServer server = (CubridServer) cubridNode;
    ServerInfo serverInfo = server.getServerInfo();
    if (CubridNodeChangedEventType.SERVER_CONNECTED.equals(eventType)) {
        addServer(serverInfo);
    } else if (CubridNodeChangedEventType.SERVER_DISCONNECTED.equals(eventType)) {
        delServer(serverInfo);
    }
}
Also used : CubridNodeChangedEventType(com.cubrid.common.ui.spi.event.CubridNodeChangedEventType) ServerInfo(com.cubrid.cubridmanager.core.common.model.ServerInfo) ICubridNode(com.cubrid.common.ui.spi.model.ICubridNode) CubridServer(com.cubrid.common.ui.spi.model.CubridServer)

Example 75 with CubridServer

use of com.cubrid.common.ui.spi.model.CubridServer in project cubrid-manager by CUBRID.

the class ExportConnectionUtil method createDialogArea.

/**
	 * Create dialog area content
	 *
	 * @param parent the parent composite
	 * @return the control
	 */
@SuppressWarnings("deprecation")
protected Control createDialogArea(Composite parent) {
    Composite parentComp = (Composite) super.createDialogArea(parent);
    Composite composite = new Composite(parentComp, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
    layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
    layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
    layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
    composite.setLayout(layout);
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));
    tableViewer = new CheckboxTreeViewer(composite, SWT.V_SCROLL | SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.FULL_SELECTION);
    tableViewer.getTree().setLinesVisible(true);
    tableViewer.getTree().setHeaderVisible(true);
    tableViewer.getTree().setLayoutData(CommonUITool.createGridData(GridData.FILL_BOTH, 1, 1, -1, -1));
    /* Name */
    final TreeColumn nameColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    nameColumn.setText(Messages.nameColumn);
    nameColumn.setWidth(120);
    nameColumn.setImage(CommonUIPlugin.getImage("icons/checked_green.png"));
    nameColumn.addListener(SWT.Selection, new Listener() {

        public void handleEvent(Event event) {
            selectAll = !selectAll;
            tableViewer.setAllChecked(selectAll);
            Image image = selectAll ? CommonUIPlugin.getImage("icons/checked_green.png") : CommonUIPlugin.getImage("icons/unchecked.gif");
            nameColumn.setImage(image);
            tableViewer.refresh();
            updateWidgetStatus();
        }
    });
    /* IP */
    TreeColumn ipColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    ipColumn.setText(Messages.iPColumn);
    ipColumn.setWidth(100);
    /* Port */
    TreeColumn portColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    portColumn.setText(Messages.portColumn);
    portColumn.setWidth(80);
    /* DB user */
    TreeColumn userColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    userColumn.setText(Messages.userColumn);
    userColumn.setWidth(100);
    /* Comment */
    TreeColumn commentColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    commentColumn.setText(Messages.commentColumn);
    commentColumn.setWidth(120);
    /* Java Url */
    TreeColumn javaUrlColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    javaUrlColumn.setText(Messages.javaUrlColumn);
    javaUrlColumn.setWidth(300);
    TreeColumn phpUrlColumn = new TreeColumn(tableViewer.getTree(), SWT.LEFT);
    phpUrlColumn.setText(Messages.phpUrlColumn);
    phpUrlColumn.setWidth(300);
    tableViewer.setContentProvider(new TreeViewerContentProvider());
    tableViewer.setLabelProvider(new TreeViewerLabelProvider());
    tableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked()) {
                CheckboxTreeViewer viewer = (CheckboxTreeViewer) event.getSource();
                /* Select the sub node */
                if (event.getElement() instanceof CubridServer) {
                    viewer.setSubtreeChecked(event.getElement(), true);
                } else if (event.getElement() instanceof CubridDatabase) {
                    CubridDatabase database = (CubridDatabase) event.getElement();
                    viewer.setChecked(database.getServer(), true);
                }
            } else {
                CheckboxTreeViewer viewer = (CheckboxTreeViewer) event.getSource();
                ICubridNode element = (ICubridNode) event.getElement();
                viewer.setSubtreeChecked(element, false);
                if (element instanceof CubridDatabase) {
                    CubridDatabase database = (CubridDatabase) element;
                    /* Check the parent state */
                    ICubridNode parent = database.getParent();
                    if (parent != null) {
                        List<ICubridNode> children = parent.getChildren();
                        boolean isSelected = false;
                        for (ICubridNode child : children) {
                            DefaultSchemaNode childNode = (DefaultSchemaNode) child;
                            if (viewer.getChecked(childNode.getDatabase())) {
                                isSelected = true;
                                break;
                            }
                        }
                        viewer.setChecked(database.getServer(), isSelected);
                    }
                }
            }
            updateWidgetStatus();
        }
    });
    tableViewer.setInput(selections);
    tableViewer.expandAll();
    tableViewer.setAllChecked(true);
    setTitle(Messages.titleExportConnection);
    setMessage(Messages.msgExportConnection);
    return parentComp;
}
Also used : ILabelProviderListener(org.eclipse.jface.viewers.ILabelProviderListener) ICheckStateListener(org.eclipse.jface.viewers.ICheckStateListener) Listener(org.eclipse.swt.widgets.Listener) Composite(org.eclipse.swt.widgets.Composite) ICheckStateListener(org.eclipse.jface.viewers.ICheckStateListener) ICubridNode(com.cubrid.common.ui.spi.model.ICubridNode) Image(org.eclipse.swt.graphics.Image) CubridServer(com.cubrid.common.ui.spi.model.CubridServer) DefaultSchemaNode(com.cubrid.common.ui.spi.model.DefaultSchemaNode) CheckboxTreeViewer(org.eclipse.jface.viewers.CheckboxTreeViewer) GridLayout(org.eclipse.swt.layout.GridLayout) TreeColumn(org.eclipse.swt.widgets.TreeColumn) GridData(org.eclipse.swt.layout.GridData) CheckStateChangedEvent(org.eclipse.jface.viewers.CheckStateChangedEvent) Event(org.eclipse.swt.widgets.Event) List(java.util.List) ArrayList(java.util.ArrayList) CheckStateChangedEvent(org.eclipse.jface.viewers.CheckStateChangedEvent) CubridDatabase(com.cubrid.common.ui.spi.model.CubridDatabase)

Aggregations

CubridServer (com.cubrid.common.ui.spi.model.CubridServer)136 ICubridNode (com.cubrid.common.ui.spi.model.ICubridNode)41 ServerInfo (com.cubrid.cubridmanager.core.common.model.ServerInfo)39 CubridDatabase (com.cubrid.common.ui.spi.model.CubridDatabase)22 ArrayList (java.util.ArrayList)20 ServerUserInfo (com.cubrid.cubridmanager.core.common.model.ServerUserInfo)19 CubridGroupNode (com.cubrid.common.ui.spi.model.CubridGroupNode)15 CubridNavigatorView (com.cubrid.common.ui.common.navigator.CubridNavigatorView)13 DatabaseInfo (com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo)12 TreeViewer (org.eclipse.jface.viewers.TreeViewer)11 DbUserInfo (com.cubrid.cubridmanager.core.cubrid.user.model.DbUserInfo)10 IWorkbenchWindow (org.eclipse.ui.IWorkbenchWindow)10 CubridNodeChangedEvent (com.cubrid.common.ui.spi.event.CubridNodeChangedEvent)9 List (java.util.List)9 IXMLMemento (com.cubrid.cubridmanager.core.common.xml.IXMLMemento)8 DefaultCubridNode (com.cubrid.common.ui.spi.model.DefaultCubridNode)7 CubridServerLoader (com.cubrid.cubridmanager.ui.spi.model.loader.CubridServerLoader)7 ICubridNodeLoader (com.cubrid.common.ui.spi.model.ICubridNodeLoader)6 ExecTaskWithProgress (com.cubrid.common.ui.spi.progress.ExecTaskWithProgress)6 TaskExecutor (com.cubrid.common.ui.spi.progress.TaskExecutor)6