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);
}
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;
}
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();
}
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);
}
}
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;
}
Aggregations