use of com.cubrid.common.ui.spi.model.DatabaseEditorConfig in project cubrid-manager by CUBRID.
the class ShortSettingEditorConfigDialog method okPressed.
protected void okPressed() {
RGB selectedColor = colorCombo.getSelectedColor();
if (editorConfig == null) {
editorConfig = new DatabaseEditorConfig();
}
editorConfig.setBackGround(selectedColor);
super.okPressed();
}
use of com.cubrid.common.ui.spi.model.DatabaseEditorConfig in project cubrid-manager by CUBRID.
the class LoginDatabaseAction method doRun.
public void doRun(CubridDatabase[] databaseArray) {
if (databaseArray == null || databaseArray.length == 0) {
return;
}
CubridNavigatorView navigationView = CubridNavigatorView.findNavigationView();
if (navigationView != null && databaseArray.length > 0) {
final TreeViewer treeViewer = navigationView.getViewer();
if (databaseArray.length > 1) {
List<MultiDatabaseloginFailedInfo> failedDatabaseList = new ArrayList<MultiDatabaseloginFailedInfo>();
for (CubridDatabase object : databaseArray) {
CubridDatabase database = (CubridDatabase) object;
String errMsg = null;
if (database.isAutoSavePassword()) {
errMsg = CubridWorkbenchContrItem.connectDatabaseWithErrMsg(database.getDatabaseInfo(), false);
} else {
errMsg = "Incorrect or missing password.";
}
if (errMsg == null) {
database.getLoader().setLoaded(false);
database.setLogined(true);
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));
// open database dashboard
if (GeneralPreference.isUseDatabaseDashboard()) {
LayoutManager.getInstance().getWorkbenchContrItem().openEditorOrView(database);
}
} else {
failedDatabaseList.add(new MultiDatabaseloginFailedInfo(database, errMsg));
}
}
if (failedDatabaseList.size() > 0) {
MultiDatabaseLoginFailedDialog dialog = new MultiDatabaseLoginFailedDialog(getShell(), failedDatabaseList);
dialog.open();
}
return;
} else {
CubridDatabase database = databaseArray[0];
if (DbRunningType.STANDALONE.equals(database.getRunningType()) && ActionSupportUtil.hasAdminPermissionOnStopState(database)) {
if (CommonUITool.openConfirmBox(Messages.bind(Messages.msgWhetherStartDB, database.getName()))) {
StartDatabaseAction startDatabaseAction = (StartDatabaseAction) ActionManager.getInstance().getAction(StartDatabaseAction.ID);
startDatabaseAction.doRun(new CubridDatabase[] { database });
}
}
if (!database.isLogined() && database.isAutoSavePassword()) {
DatabaseEditorConfig editorConfig = QueryOptions.getEditorConfig(database, true);
if (EditorConstance.isNeedSetBackground(editorConfig)) {
new ShortSetEditorConfigAction(database).run();
}
}
if (!database.isLogined() && database.isAutoSavePassword() && CubridWorkbenchContrItem.connectDatabase(database.getDatabaseInfo(), true)) {
database.getLoader().setLoaded(false);
database.setLogined(true);
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));
// open database dashboard
if (GeneralPreference.isUseDatabaseDashboard()) {
LayoutManager.getInstance().getWorkbenchContrItem().openEditorOrView(database);
}
} else if (!database.isLogined()) {
EditDatabaseLoginAction editDatabaseLoginAction = (EditDatabaseLoginAction) ActionManager.getInstance().getAction(EditDatabaseLoginAction.ID);
editDatabaseLoginAction.doRun(databaseArray);
}
}
}
}
use of com.cubrid.common.ui.spi.model.DatabaseEditorConfig in project cubrid-manager by CUBRID.
the class LoginDatabaseDialog method createDialogArea.
protected Control createDialogArea(Composite parent) {
Composite parentComp = (Composite) super.createDialogArea(parent);
final Composite composite = new Composite(parentComp, SWT.NONE);
composite.setLayoutData(new GridData(GridData.FILL_BOTH));
GridLayout layout = new GridLayout();
layout.numColumns = 5;
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);
Label userNameLabel = new Label(composite, SWT.LEFT);
userNameLabel.setText(Messages.lblDbUserName);
userNameLabel.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
userNameText = new Text(composite, SWT.LEFT | SWT.BORDER);
if (database != null && database.getUserName() != null) {
userNameText.setText(database.getUserName());
}
userNameText.addModifyListener(this);
userNameText.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 4, 1, 100, -1));
userNameText.setFocus();
Label passwordLabel = new Label(composite, SWT.LEFT);
passwordLabel.setText(Messages.lblDbPassword);
passwordLabel.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
passwordText = new Text(composite, SWT.LEFT | SWT.PASSWORD | SWT.BORDER);
passwordText.setTextLimit(ValidateUtil.MAX_PASSWORD_LENGTH);
passwordText.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 4, 1, 100, -1));
if (database != null && database.getPassword() != null && database.isAutoSavePassword()) {
passwordText.setText(database.getPassword());
}
if (database != null && database.getUserName() != null) {
passwordText.selectAll();
passwordText.setFocus();
}
new Composite(composite, SWT.NONE).setLayoutData(CommonUITool.createGridData(1, 1, 0, 0));
Button btnSavePassword = new Button(composite, SWT.CHECK);
btnSavePassword.setLayoutData(CommonUITool.createGridData(GridData.HORIZONTAL_ALIGN_FILL, 1, 1, -1, -1));
btnSavePassword.setText(Messages.btnSavePassword);
if (database == null) {
btnSavePassword.setSelection(true);
isSavePassword = true;
} else {
btnSavePassword.setSelection(database.isAutoSavePassword());
isSavePassword = database.isAutoSavePassword();
}
btnSavePassword.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
isSavePassword = !isSavePassword;
}
});
Label backgroundLabel = new Label(composite, SWT.None);
backgroundLabel.setText(Messages.lblBackground);
backgroundLabel.setLayoutData(CommonUITool.createGridData(GridData.HORIZONTAL_ALIGN_END | GridData.FILL_HORIZONTAL, 1, 1, -1, -1));
DatabaseEditorConfig editorConfig = QueryOptions.getEditorConfig(database, true);
RGB selectedColor = null;
if (editorConfig != null) {
selectedColor = editorConfig.getBackGround();
} else {
selectedColor = EditorConstance.getDefaultBackground();
}
selectColorCombo = new SelectColorCombo(composite, SWT.BORDER, selectedColor);
selectColorCombo.setLayoutData(CommonUITool.createGridData(GridData.HORIZONTAL_ALIGN_END, 2, 1, 110, -1));
Label commentLabel = new Label(composite, SWT.None);
commentLabel.setText(Messages.lblComment);
commentLabel.setLayoutData(CommonUITool.createGridData(GridData.HORIZONTAL_ALIGN_BEGINNING, 1, 1, -1, -1));
commentText = new Text(composite, SWT.BORDER);
commentText.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 4, 1, -1, -1));
commentText.setTextLimit(64);
if (editorConfig != null) {
commentText.setText(StringUtil.nvl(editorConfig.getDatabaseComment()));
}
new Label(composite, SWT.None);
Label commentDescLabel = new Label(composite, SWT.None);
commentDescLabel.setText(Messages.lblDescComment);
commentDescLabel.setLayoutData(CommonUITool.createGridData(GridData.HORIZONTAL_ALIGN_BEGINNING, 4, 1, -1, -1));
final Group brokerGroup = new Group(composite, SWT.NONE);
{
brokerGroup.setText(com.cubrid.common.ui.query.Messages.brokerGrp);
brokerGroup.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 5, 1, -1, -1));
GridLayout brokerLayout = new GridLayout();
brokerLayout.numColumns = 3;
brokerLayout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
brokerLayout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
brokerLayout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
brokerLayout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
brokerGroup.setLayout(brokerLayout);
final Label labelBrokerIp = new Label(brokerGroup, SWT.NONE);
labelBrokerIp.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
labelBrokerIp.setText(com.cubrid.common.ui.query.Messages.brokerIP);
brokerIpText = new Text(brokerGroup, SWT.BORDER);
brokerIpText.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 2, 1, -1, -1));
final Label labelBrokerPort = new Label(brokerGroup, SWT.NONE);
labelBrokerPort.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
labelBrokerPort.setText(com.cubrid.common.ui.query.Messages.brokerPort);
brokerPortCombo = new Combo(brokerGroup, SWT.NONE);
brokerPortCombo.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 2, 1, -1, -1));
BrokerInfos brokerInfos = database.getServer().getServerInfo().getBrokerInfos();
BrokerInfoList bis = brokerInfos == null ? null : brokerInfos.getBorkerInfoList();
if (bis != null) {
List<BrokerInfo> brokerInfoList = bis.getBrokerInfoList();
for (BrokerInfo brokerInfo : brokerInfoList) {
if (StringUtil.isEmpty(brokerInfo.getPort())) {
continue;
}
String status = "";
if (!StringUtil.isEqualIgnoreCase(brokerInfos.getBrokerstatus(), "ON")) {
status = "OFF";
} else {
status = !StringUtil.isEqualIgnoreCase(brokerInfo.getState(), "ON") ? "OFF" : "ON";
}
String text = brokerInfo.getName() + "[" + brokerInfo.getPort() + "/" + status + "]";
brokerPortCombo.add(text);
brokerPortCombo.setData(brokerInfo.getPort(), text);
brokerPortCombo.setData(text, brokerInfo);
}
}
Label charSetLbl = new Label(brokerGroup, SWT.CHECK);
charSetLbl.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
charSetLbl.setText(com.cubrid.common.ui.query.Messages.lblCharSet);
charsetCombo = new Combo(brokerGroup, SWT.BORDER);
charsetCombo.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 1, 1, -1, -1));
Button testConnectionButton = new Button(brokerGroup, SWT.None);
testConnectionButton.setText(com.cubrid.common.ui.query.Messages.btnTestConnection);
testConnectionButton.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
testConnectionButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
widgetDefaultSelected(e);
}
public void widgetDefaultSelected(SelectionEvent e) {
final String dbUser = userNameText.getText();
final String dbPassword = passwordText.getText();
final DatabaseInfo dbInfo = database.getDatabaseInfo();
final String brokerIP = brokerIpText.getText();
final String brokerPort = getBrokerPort();
final String dbName = dbInfo.getDbName();
final ServerInfo serverInfo = dbInfo.getServerInfo();
final String charset = dbInfo.getCharSet();
final String driverVersion = serverInfo.getJdbcDriverVersion();
// advanced jdbc settings
final String jdbcAttrs = attrText.getText();
final boolean isShard = dbInfo.isShard();
TaskExecutor taskExcutor = new ConnectDatabaseExecutor(brokerIP, brokerPort, dbName, dbUser, dbPassword, charset, jdbcAttrs, driverVersion, false, isShard);
new ExecTaskWithProgress(taskExcutor).exec();
if (taskExcutor.isSuccess()) {
CommonUITool.openInformationBox(Messages.titleSuccess, Messages.msgTestConnSuccess);
}
}
});
}
Group advancedOptionGroup = new Group(composite, SWT.NONE);
{
advancedOptionGroup.setText(Messages.grpAdvancedJDBC);
advancedOptionGroup.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 5, 1, -1, -1));
GridLayout brokerInfoGroupLayout = new GridLayout();
brokerInfoGroupLayout.numColumns = 3;
advancedOptionGroup.setLayout(brokerInfoGroupLayout);
// JDBC attributes
Label attrLabel = new Label(advancedOptionGroup, SWT.LEFT);
attrLabel.setText(com.cubrid.common.ui.common.Messages.lblJdbcAttr);
attrLabel.setLayoutData(CommonUITool.createGridData(1, 1, -1, -1));
attrText = new Text(advancedOptionGroup, SWT.LEFT | SWT.BORDER);
attrText.setEditable(false);
attrText.setLayoutData(CommonUITool.createGridData(GridData.FILL_HORIZONTAL, 1, 1, -1, -1));
Button btnAttr = new Button(advancedOptionGroup, SWT.NONE);
{
btnAttr.setText(com.cubrid.common.ui.common.Messages.btnJdbcAttr);
btnAttr.setLayoutData(CommonUITool.createGridData(1, 1, 80, -1));
btnAttr.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
JdbcOptionDialog dialog = new JdbcOptionDialog(getShell(), attrText.getText());
if (IDialogConstants.OK_ID == dialog.open()) {
String jdbcOptions = dialog.getJdbcOptions();
attrText.setText(StringUtil.nvl(jdbcOptions));
}
}
});
}
}
if (database != null && database.getDatabaseInfo() != null) {
String jdbcAttrs = database.getDatabaseInfo().getJdbcAttrs();
attrText.setText(StringUtil.nvl(jdbcAttrs));
String brokerIp = QueryOptions.getBrokerIp(database.getDatabaseInfo());
if (StringUtil.isEmpty(brokerIp)) {
brokerIp = database.getServer().getHostAddress();
}
if (brokerIp != null) {
brokerIpText.setText(brokerIp);
}
String brokerPort = QueryOptions.getBrokerPort(database.getDatabaseInfo());
brokerPort = (String) brokerPortCombo.getData(brokerPort);
if (brokerPort != null) {
brokerPortCombo.setText(brokerPort);
}
String charset = QueryOptions.getCharset(database.getDatabaseInfo());
charsetCombo.setItems(QueryOptions.getAllCharset(charset));
if (charset != null && charset.trim().length() > 0) {
charsetCombo.setText(charset);
} else {
charsetCombo.select(0);
}
}
setTitle(Messages.titleLoginDbDialog);
setMessage(Messages.msgLoginDbDialog);
return parentComp;
}
use of com.cubrid.common.ui.spi.model.DatabaseEditorConfig in project cubrid-manager by CUBRID.
the class LoginDatabaseDialog method save.
private boolean save() {
if (database == null) {
return false;
}
database.setAutoSavePassword(isSavePassword);
final String dbUser = userNameText.getText();
final String dbPassword = passwordText.getText();
if (database.getDatabaseInfo() != null) {
database.getDatabaseInfo().setJdbcAttrs(attrText.getText());
DbUserInfo info = database.getDatabaseInfo().getAuthLoginedDbUserInfo();
if (info != null) {
info.setName(dbUser);
info.setNoEncryptPassword(dbPassword);
}
CMDBNodePersistManager.getInstance().updateDbPassword(database.getServer().getHostAddress(), database.getServer().getMonPort(), database.getDatabaseInfo().getDbName(), dbUser, dbPassword, isSavePassword);
CMDBNodePersistManager.getInstance().setJdbcAttrs(database, attrText.getText());
DatabaseEditorConfig editorConfig = QueryOptions.getEditorConfig(database, true);
if (editorConfig == null) {
editorConfig = new DatabaseEditorConfig();
}
RGB selectedColor = selectColorCombo.getSelectedColor();
editorConfig.setBackGround(selectedColor);
editorConfig.setDatabaseComment(commentText.getText());
QueryOptions.putEditorConfig(database, editorConfig, true);
/* TOOLS-1222Edit database dialog can't save password */
CMDBNodePersistManager.getInstance().addDatabase(database, editorConfig);
saveBrokerInfo();
boolean userChanged = !dbUser.equals(oldLoginUserName);
return oldDatabaseIsLogin && userChanged;
}
return false;
}
use of com.cubrid.common.ui.spi.model.DatabaseEditorConfig in project cubrid-manager by CUBRID.
the class ShortSettingEditorConfigDialog method okPressed.
protected void okPressed() {
RGB selectedColor = colorCombo.getSelectedColor();
if (editorConfig == null) {
editorConfig = new DatabaseEditorConfig();
}
editorConfig.setBackGround(selectedColor);
super.okPressed();
}
Aggregations