Skip to content

Commit f1afd63

Browse files
authored
Merge pull request #1207 from SanojPunchihewa/datasource-ui-windows-issue
Fix issues related to Datasource and DSS views
2 parents 891210c + 9656070 commit f1afd63

File tree

4 files changed

+57
-284
lines changed

4 files changed

+57
-284
lines changed

components/dss-tools/plugins/org.wso2.integrationstudio.artifact.dataservice/src/org/wso2/integrationstudio/artifact/dataservice/model/DataServiceModel.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ public Object getModelPropertyValue(String key) {
119119
} else {
120120
modelPropertyValue = container;
121121
}
122+
setGenerateDataService(false);
122123
} else if (key.equals(DataServiceArtifactConstants.WIZARD_OPTION_DATASOURCE)) {
123124
setGenerateDataService(true);
124125
modelPropertyValue = null;

components/dss-tools/plugins/org.wso2.integrationstudio.artifact.dataservice/src/org/wso2/integrationstudio/artifact/dataservice/ui/wizard/GenerateDataServicesWizardPage.java

Lines changed: 1 addition & 229 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@
5353
import org.eclipse.swt.events.ModifyListener;
5454
import org.eclipse.swt.events.SelectionAdapter;
5555
import org.eclipse.swt.events.SelectionEvent;
56-
import org.eclipse.swt.events.SelectionListener;
5756
import org.eclipse.swt.graphics.Rectangle;
5857
import org.eclipse.swt.layout.FormAttachment;
5958
import org.eclipse.swt.layout.FormData;
@@ -97,16 +96,8 @@ public class GenerateDataServicesWizardPage extends WizardPage {
9796
private Map<String, Boolean> allAvailableTables = new HashMap<String, Boolean>();
9897
private Map<String, Document> avalableDatasources = new HashMap<String, Document>();
9998
private String selectedDatasource;
100-
private String driverClassName;
10199
private Map<Button, String[]> buttonMap = new HashMap<Button, String[]>();
102100
private Map<String, List<Button>> buttonTableMap = new HashMap<String, List<Button>>();
103-
private String mysqlVersionArr[] = new String[] { "Select Version", "8.0.15", "5.1.47" };
104-
private String mssqlVersionArr[] = new String[] { "Select Version", "6.4.0.jre8", "7.2.0.jre8" };
105-
private String postgresSqlVersionArr[] = new String[] { "Select Version", "42.2.5" };
106-
private String derbySqlVersionArr[] = new String[] { "Select Version", "10.15.1.3" };
107-
private String hsqlSqlVersionArr[] = new String[] { "Select Version", "2.5.0" };
108-
private String db2SqlVersionArr[] = new String[] { "Select Version", "db2jcc4" };
109-
private String informixSqlVersionArr[] = new String[] { "Select Version", "4.50.1" };
110101
private Text jarLocationText;
111102
private String jarLocation;
112103
private static IIntegrationStudioLog log = Logger.getLog(Activator.PLUGIN_ID);
@@ -125,10 +116,6 @@ public void createControl(Composite parent) {
125116
container.setLayout(new FormLayout());
126117
FormData data;
127118
Table tblDataTables;
128-
Button serverRadioButton;
129-
Button browseFileRadioButton;
130-
Combo versionComboBox;
131-
Label versionLabel;
132119
Label browseLabel;
133120
Button browseButton;
134121
Button fetchTablesButton;
@@ -198,67 +185,6 @@ public void createControl(Composite parent) {
198185
selectDriverGroup.setText("Select driver to fetch tables");
199186
selectDriverGroup.setLayoutData(groupData);
200187
selectDriverGroup.setVisible(false);
201-
202-
serverRadioButton = new Button(selectDriverGroup, SWT.RADIO);
203-
{
204-
FormData layoutData = new FormData();
205-
layoutData.top = new FormAttachment(selectDriverGroup, 10);
206-
layoutData.left = new FormAttachment(3);
207-
208-
serverRadioButton.setText("Use an existing driver");
209-
serverRadioButton.setSelection(true);
210-
serverRadioButton.setLayoutData(layoutData);
211-
212-
}
213-
browseFileRadioButton = new Button(selectDriverGroup, SWT.RADIO);
214-
{
215-
216-
FormData layoutData = new FormData();
217-
layoutData.top = new FormAttachment(selectDriverGroup, 10);
218-
layoutData.left = new FormAttachment(50);
219-
layoutData.right = new FormAttachment(95);
220-
browseFileRadioButton.setSelection(false);
221-
browseFileRadioButton.setText("Use a driver in your local machine");
222-
browseFileRadioButton.setLayoutData(layoutData);
223-
}
224-
225-
}
226-
227-
Composite serverComposite = new Composite(selectDriverGroup, SWT.NONE);
228-
{
229-
230-
FormLayout groupLayout = new FormLayout();
231-
serverComposite.setLayout(groupLayout);
232-
233-
FormData groupData = new FormData();
234-
groupData.top = new FormAttachment(selectDriverGroup, 10);
235-
groupData.left = new FormAttachment(0);
236-
groupData.right = new FormAttachment(100);
237-
238-
serverComposite.setLayoutData(groupData);
239-
240-
versionLabel = new Label(serverComposite, SWT.NONE);
241-
{
242-
versionLabel.setText("Version");
243-
244-
FormData layoutData = new FormData();
245-
layoutData.top = new FormAttachment(selectDriverGroup, 40);
246-
layoutData.left = new FormAttachment(4);
247-
layoutData.right = new FormAttachment(20);
248-
versionLabel.setLayoutData(layoutData);
249-
}
250-
251-
versionComboBox = new Combo(serverComposite, SWT.READ_ONLY);
252-
{
253-
versionComboBox.setItems(new String[] { "Select Version" });
254-
255-
FormData layoutData = new FormData();
256-
layoutData.top = new FormAttachment(selectDriverGroup, 40);
257-
layoutData.left = new FormAttachment(versionLabel, 10);
258-
layoutData.right = new FormAttachment(99);
259-
versionComboBox.setLayoutData(layoutData);
260-
}
261-
262188
}
263189

264190
Composite browseLocalComposite = new Composite(selectDriverGroup, SWT.NONE);
@@ -311,49 +237,15 @@ public void createControl(Composite parent) {
311237
{
312238

313239
FormData layoutData = new FormData();
314-
layoutData.top = new FormAttachment(serverComposite, 10);
240+
layoutData.top = new FormAttachment(browseLocalComposite, 10);
315241
layoutData.right = new FormAttachment(99);
316242
layoutData.width = 150;
317243

318244
fetchTablesButton.setText("Fetch Tables");
319245
fetchTablesButton.setLayoutData(layoutData);
320246
fetchTablesButton.setEnabled(false);
321247
}
322-
323-
serverRadioButton.addSelectionListener(new SelectionAdapter() {
324-
@Override
325-
public void widgetSelected(SelectionEvent e) {
326-
Button source = (Button) e.getSource();
327-
if (source.getSelection()) {
328-
serverComposite.setVisible(true);
329-
browseLocalComposite.setVisible(false);
330-
331-
versionComboBox.select(0);
332-
jarLocationText.setText("");
333-
jarLocation = "";
334-
335-
}
336-
}
337-
});
338248

339-
browseFileRadioButton.addSelectionListener(new SelectionAdapter() {
340-
@Override
341-
public void widgetSelected(SelectionEvent e) {
342-
Button source = (Button) e.getSource();
343-
if (source.getSelection()) {
344-
browseLocalComposite.setVisible(true);
345-
serverComposite.setVisible(false);
346-
serverRadioButton.setEnabled(true);
347-
348-
jarLocationText.setEnabled(true);
349-
jarLocationText.setText("");
350-
jarLocation = "";
351-
browseButton.setEnabled(true);
352-
versionComboBox.select(0);
353-
}
354-
}
355-
});
356-
357249
// input type table group
358250
Group tableListGroup = new Group(container, SWT.NONE);
359251
{
@@ -562,8 +454,6 @@ public void widgetSelected(SelectionEvent e) {
562454
buttonMap = new HashMap<Button, String[]>();
563455
buttonTableMap = new HashMap<String, List<Button>>();
564456
allAvailableTables = new HashMap<String, Boolean>();
565-
driverClassName = null;
566-
serverComposite.setVisible(false);
567457
tableListGroup.setVisible(false);
568458
serviceModeGroup.setVisible(false);
569459
fetchTablesButton.setEnabled(false);
@@ -579,29 +469,8 @@ public void widgetSelected(SelectionEvent e) {
579469
} else {
580470
selectedDatasource = (String)avalableDatasources.keySet().toArray()[comboAvalableDatasources.getSelectionIndex()];
581471
Document datasourceConfig = avalableDatasources.get(selectedDatasource);
582-
driverClassName = getElementValue(datasourceConfig, "driverClassName");
583-
boolean isDriverAvailable = populateExisitngDriver(driverClassName, versionComboBox);
584-
if (!isDriverAvailable) {
585-
browseFileRadioButton.setSelection(true);
586-
serverRadioButton.setSelection(false);
587-
serverRadioButton.setEnabled(false);
588-
serverComposite.setVisible(false);
589-
browseLocalComposite.setVisible(true);
590-
versionComboBox.setEnabled(false);
591-
} else {
592-
versionComboBox.setEnabled(true);
593-
}
594-
595472
dataModel.setDatasource(getElementValue(datasourceConfig, "name"));
596-
597473
selectDriverGroup.setVisible(true);
598-
serverComposite.setVisible(true);
599-
serverRadioButton.setSelection(true);
600-
serverRadioButton.setEnabled(true);
601-
browseFileRadioButton.setEnabled(true);
602-
browseFileRadioButton.setSelection(false);
603-
serverComposite.setVisible(true);
604-
browseLocalComposite.setVisible(false);
605474
}
606475
updatePageStatus();
607476
}
@@ -641,39 +510,6 @@ public void handleEvent(org.eclipse.swt.widgets.Event event) {
641510
updatePageStatus();
642511
}
643512
});
644-
645-
versionComboBox.addSelectionListener(new SelectionListener() {
646-
@Override
647-
public void widgetSelected(SelectionEvent event) {
648-
jarLocationText.setText("");
649-
jarLocation = "";
650-
if (versionComboBox.getText() != null || !versionComboBox.getText().isEmpty()) {
651-
String jarName = getDBDriverJarName(driverClassName) + "-" +
652-
versionComboBox.getText() + ".jar";
653-
String driverUrl = "";
654-
try {
655-
driverUrl = DataServicesWizardConstants.DBUrlParams.DB_DRIVER_URL_BASE + getLibDirPath() +
656-
DataServicesWizardConstants.DBUrlParams.DB_DRIVER_JAR_BASE + jarName +
657-
DataServicesWizardConstants.DBUrlParams.DB_URL_JDBC_SUFFIX;
658-
} catch (URISyntaxException | IOException e) {
659-
showMessageBox("Error while loading driver jar", e.getMessage(), SWT.ICON_ERROR);
660-
}
661-
jarLocationText.setText(driverUrl);
662-
jarLocation = driverUrl;
663-
fetchTablesButton.setEnabled(true);
664-
}
665-
666-
if (versionComboBox.getText().equals("Select Version")) {
667-
fetchTablesButton.setEnabled(false);
668-
}
669-
}
670-
671-
@Override
672-
public void widgetDefaultSelected(SelectionEvent e) {
673-
fetchTablesButton.setEnabled(false);
674-
}
675-
676-
});
677513

678514
browseButton.addListener(SWT.Selection, new Listener() {
679515
@Override
@@ -891,47 +727,7 @@ private void showMessage(String msg) {
891727
dia.open();
892728

893729
}
894-
895-
private boolean populateExisitngDriver(String driverClassName, Combo versionComboBox) {
896-
boolean isAvaialble = true;
897-
switch (driverClassName) {
898-
899-
case DataServicesWizardConstants.DBDrivers.MYSQL_DRIVER:
900-
versionComboBox.setItems(mysqlVersionArr);
901-
break;
902-
903-
case DataServicesWizardConstants.DBDrivers.MS_SQL_DRIVER:
904-
versionComboBox.setItems(mssqlVersionArr);
905-
break;
906-
907-
case DataServicesWizardConstants.DBDrivers.POSTGRESQL_DRIVER:
908-
versionComboBox.setItems(postgresSqlVersionArr);
909-
break;
910-
911-
case DataServicesWizardConstants.DBDrivers.DERBY_CLIENT_DRIVER:
912-
versionComboBox.setItems(derbySqlVersionArr);
913-
break;
914-
915-
case DataServicesWizardConstants.DBDrivers.HSQL_DRIVER:
916-
versionComboBox.setItems(hsqlSqlVersionArr);
917-
break;
918-
919-
case DataServicesWizardConstants.DBDrivers.DB2_DRIVER:
920-
versionComboBox.setItems(db2SqlVersionArr);
921-
break;
922730

923-
case DataServicesWizardConstants.DBDrivers.INFORMIX_DRIVER:
924-
versionComboBox.setItems(informixSqlVersionArr);
925-
break;
926-
927-
default:
928-
isAvaialble = false;
929-
930-
}
931-
versionComboBox.select(0);
932-
return isAvaialble;
933-
}
934-
935731
/**
936732
* Validate the wizard page field data and update the page when the validate is
937733
* failed.
@@ -1095,31 +891,7 @@ private String getElementValue(Document doc, String element) {
1095891
}
1096892
return elementNode.getNodeValue();
1097893
}
1098-
1099-
private String getDBDriverJarName(String className) {
1100-
String jarName = "";
1101-
1102-
switch (className) {
1103-
case DataServicesWizardConstants.DBDrivers.MYSQL_DRIVER:
1104-
jarName = DataServicesWizardConstants.DBConnectionParams.MYSQL_JAR;
1105-
break;
1106-
case DataServicesWizardConstants.DBDrivers.MS_SQL_DRIVER:
1107-
jarName = DataServicesWizardConstants.DBConnectionParams.MSSQL_JAR;
1108-
break;
1109-
case DataServicesWizardConstants.DBDrivers.POSTGRESQL_DRIVER:
1110-
jarName = DataServicesWizardConstants.DBConnectionParams.POSTGRESSQL_JAR;
1111-
break;
1112-
case DataServicesWizardConstants.DBDrivers.DERBY_CLIENT_DRIVER:
1113-
jarName = DataServicesWizardConstants.DBConnectionParams.DERBY_JAR;
1114-
break;
1115-
case DataServicesWizardConstants.DBDrivers.H2_DRIVER:
1116-
jarName = DataServicesWizardConstants.DBConnectionParams.H2_JAR;
1117-
break;
1118-
}
1119894

1120-
return jarName;
1121-
}
1122-
1123895
public String getLibDirPath() throws URISyntaxException, IOException {
1124896
URL libURL = DsEditorPlugin.getPlugin().getBundle().getEntry("lib");
1125897
URL resolvedFolderURL = FileLocator.toFileURL(libURL);

0 commit comments

Comments
 (0)