提交 78c554f5 编写于 作者: S serge-rider

Merge remote-tracking branch 'origin/devel' into devel


Former-commit-id: 7669b3cb
......@@ -74,7 +74,7 @@ public class DatabaseConsumerPageMapping extends ActiveWizardPage<DataTransferWi
private TreeViewer mappingViewer;
private Button autoAssignButton;
private ObjectContainerSelectorPanel containerPanel;
private boolean autoAssignedOnFirstActivation = false;
private boolean firstInit = true;
private static abstract class MappingLabelProvider extends CellLabelProvider {
@Override
......@@ -698,6 +698,8 @@ public class DatabaseConsumerPageMapping extends ActiveWizardPage<DataTransferWi
}
private void autoAssignMappings() {
getWizard().getSettings().sortDataPipes();
loadAndUpdateColumnsModel();
for (TreeItem item : mappingViewer.getTree().getItems()) {
Object element = item.getData();
if (element instanceof DatabaseMappingContainer) {
......@@ -711,8 +713,6 @@ public class DatabaseConsumerPageMapping extends ActiveWizardPage<DataTransferWi
}
}
}
getWizard().getSettings().sortDataPipes();
loadAndUpdateColumnsModel();
updateMappingsAndButtons();
updatePageCompletion();
}
......@@ -976,9 +976,15 @@ public class DatabaseConsumerPageMapping extends ActiveWizardPage<DataTransferWi
}
}
loadAndUpdateColumnsModel();
if (!autoAssignedOnFirstActivation) {
autoAssignedOnFirstActivation = true;
if (firstInit) {
firstInit = false;
autoAssignMappings();
Tree table = mappingViewer.getTree();
int totalWidth = table.getClientArea().width;
TreeColumn[] columns = table.getColumns();
columns[0].setWidth(totalWidth * 40 / 100);
columns[1].setWidth(totalWidth * 40 / 100);
columns[2].setWidth(totalWidth * 20 / 100);
}
updatePageCompletion();
}
......@@ -1024,13 +1030,6 @@ public class DatabaseConsumerPageMapping extends ActiveWizardPage<DataTransferWi
// Select first element
mappingViewer.setSelection(new StructuredSelection(model.get(0)));
}
Tree table = mappingViewer.getTree();
int totalWidth = table.getClientArea().width;
TreeColumn[] columns = table.getColumns();
columns[0].setWidth(totalWidth * 40 / 100);
columns[1].setWidth(totalWidth * 40 / 100);
columns[2].setWidth(totalWidth * 20 / 100);
}
@Override
......
......@@ -1195,4 +1195,21 @@ public final class SQLUtils {
}
return true;
}
public static String removeQueryDelimiter(SQLDialect sqlDialect, String query) {
String delimiter = sqlDialect.getScriptDelimiter();
if (!delimiter.isEmpty() && query.contains(delimiter)) {
String queryWithoutDelimiter = query.substring(0, query.lastIndexOf(delimiter));
if (Character.isLetterOrDigit(delimiter.charAt(0))) {
if (query.toUpperCase().endsWith(delimiter.toUpperCase())) {
if (!Character.isLetterOrDigit(query.charAt(query.length() - delimiter.length() - 1))) {
return queryWithoutDelimiter;
}
}
} else if (query.endsWith(delimiter)) {
return queryWithoutDelimiter;
}
}
return query;
}
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册