Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
df7701d4
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dbeaver
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
df7701d4
编写于
9月 30, 2020
作者:
N
Nikita Akilov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#9540 add warning message and intoduce DataTransferNode validation
上级
a50f4821
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
15 addition
and
22 deletion
+15
-22
plugins/org.jkiss.dbeaver.data.transfer.ui/src/org/jkiss/dbeaver/tools/transfer/ui/internal/DTUIMessages.java
...kiss/dbeaver/tools/transfer/ui/internal/DTUIMessages.java
+1
-0
plugins/org.jkiss.dbeaver.data.transfer.ui/src/org/jkiss/dbeaver/tools/transfer/ui/internal/DTUIMessages.properties
...beaver/tools/transfer/ui/internal/DTUIMessages.properties
+1
-0
plugins/org.jkiss.dbeaver.data.transfer.ui/src/org/jkiss/dbeaver/tools/transfer/ui/pages/stream/StreamProducerPageSettings.java
.../transfer/ui/pages/stream/StreamProducerPageSettings.java
+13
-22
未找到文件。
plugins/org.jkiss.dbeaver.data.transfer.ui/src/org/jkiss/dbeaver/tools/transfer/ui/internal/DTUIMessages.java
浏览文件 @
df7701d4
...
...
@@ -102,6 +102,7 @@ public class DTUIMessages extends NLS {
public
static
String
stream_consumer_page_settings_title
;
public
static
String
stream_consumer_page_settings_description
;
public
static
String
stream_consumer_page_settings_item_text_none
;
public
static
String
stream_consumer_page_warning_not_enough_sources_chosen
;
public
static
String
data_transfer_task_configurator_group_label_export_tables
;
public
static
String
data_transfer_task_configurator_group_label_import_into
;
...
...
plugins/org.jkiss.dbeaver.data.transfer.ui/src/org/jkiss/dbeaver/tools/transfer/ui/internal/DTUIMessages.properties
浏览文件 @
df7701d4
...
...
@@ -73,6 +73,7 @@ stream_consumer_page_output_tooltip_process_command_line = Process command line
stream_consumer_page_settings_title
=
Format settings
stream_consumer_page_settings_description
=
File format settings
stream_consumer_page_settings_item_text_none
=
<none>
stream_consumer_page_warning_not_enough_sources_chosen
=
Not enough source files chosen
data_transfer_task_configurator_group_label_export_tables
=
Export tables
data_transfer_task_configurator_group_label_import_into
=
Import into
data_transfer_task_configurator_table_column_text_object
=
Object
...
...
plugins/org.jkiss.dbeaver.data.transfer.ui/src/org/jkiss/dbeaver/tools/transfer/ui/pages/stream/StreamProducerPageSettings.java
浏览文件 @
df7701d4
...
...
@@ -16,6 +16,7 @@
*/
package
org.jkiss.dbeaver.tools.transfer.ui.pages.stream
;
import
org.eclipse.jface.dialogs.IMessageProvider
;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.custom.SashForm
;
import
org.eclipse.swt.events.SelectionAdapter
;
...
...
@@ -36,10 +37,7 @@ import org.jkiss.dbeaver.model.struct.DBSDataManipulator;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.runtime.DBWorkbench
;
import
org.jkiss.dbeaver.runtime.properties.PropertySourceCustom
;
import
org.jkiss.dbeaver.tools.transfer.DataTransferPipe
;
import
org.jkiss.dbeaver.tools.transfer.DataTransferSettings
;
import
org.jkiss.dbeaver.tools.transfer.IDataTransferConsumer
;
import
org.jkiss.dbeaver.tools.transfer.IDataTransferSettings
;
import
org.jkiss.dbeaver.tools.transfer.*
;
import
org.jkiss.dbeaver.tools.transfer.database.DatabaseConsumerSettings
;
import
org.jkiss.dbeaver.tools.transfer.database.DatabaseMappingContainer
;
import
org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferConsumer
;
...
...
@@ -184,7 +182,7 @@ public class StreamProducerPageSettings extends ActiveWizardPage<DataTransferWiz
private
void
updateMultiConsumers
(
DBRProgressMonitor
monitor
,
DataTransferPipe
pipe
,
File
[]
files
)
{
final
StreamProducerSettings
producerSettings
=
getWizard
().
getPageSettings
(
this
,
StreamProducerSettings
.
class
);
IDataTransferConsumer
originalConsumer
=
pipe
.
getConsumer
();
IDataTransferConsumer
<?,
?>
originalConsumer
=
pipe
.
getConsumer
();
DataTransferSettings
dtSettings
=
getWizard
().
getSettings
();
List
<
DataTransferPipe
>
newPipes
=
new
ArrayList
<>(
dtSettings
.
getDataPipes
());
...
...
@@ -192,7 +190,7 @@ public class StreamProducerPageSettings extends ActiveWizardPage<DataTransferWiz
for
(
File
file
:
files
)
{
StreamTransferProducer
producer
=
new
StreamTransferProducer
(
new
StreamEntityMapping
(
file
));
IDataTransferConsumer
consumer
=
new
DatabaseTransferConsumer
();
IDataTransferConsumer
<?,
?>
consumer
=
new
DatabaseTransferConsumer
();
DataTransferPipe
singlePipe
=
new
DataTransferPipe
(
producer
,
consumer
);
try
{
...
...
@@ -230,14 +228,14 @@ public class StreamProducerPageSettings extends ActiveWizardPage<DataTransferWiz
}
private
void
updateItemData
(
TableItem
item
,
DataTransferPipe
pipe
)
{
if
(
pipe
.
getProducer
()
==
null
||
pipe
.
getProducer
().
getObjectName
()
==
null
)
{
if
(
isInvalidDataTransferNode
(
pipe
.
getProducer
())
)
{
item
.
setImage
(
0
,
null
);
item
.
setText
(
0
,
DTUIMessages
.
stream_consumer_page_settings_item_text_none
);
}
else
{
item
.
setImage
(
0
,
DBeaverIcons
.
getImage
(
getProducerProcessor
().
getIcon
()));
item
.
setText
(
0
,
String
.
valueOf
(
pipe
.
getProducer
().
getObjectName
()));
}
if
(
pipe
.
getConsumer
()
==
null
)
{
if
(
isInvalidDataTransferNode
(
pipe
.
getConsumer
())
)
{
item
.
setImage
(
1
,
null
);
item
.
setText
(
1
,
DTUIMessages
.
stream_consumer_page_settings_item_text_none
);
}
else
{
...
...
@@ -246,6 +244,10 @@ public class StreamProducerPageSettings extends ActiveWizardPage<DataTransferWiz
}
}
private
boolean
isInvalidDataTransferNode
(
final
IDataTransferNode
<?>
node
)
{
return
node
==
null
||
node
.
getObjectName
()
==
null
;
}
@Override
public
void
activatePage
()
{
// Initialize property editor
...
...
@@ -313,25 +315,14 @@ public class StreamProducerPageSettings extends ActiveWizardPage<DataTransferWiz
@Override
protected
boolean
determinePageCompletion
()
{
int
producerCount
=
0
;
int
consumerCount
=
0
;
for
(
int
i
=
0
;
i
<
filesTable
.
getItemCount
();
i
++)
{
final
DataTransferPipe
pipe
=
(
DataTransferPipe
)
filesTable
.
getItem
(
i
).
getData
();
if
(
pipe
.
getProducer
()
!=
null
&&
pipe
.
getProducer
().
getObjectName
()
!=
null
)
{
producerCount
++;
}
if
(
pipe
.
getConsumer
()
!=
null
)
{
consumerCount
++;
}
}
if
(
producerCount
!=
consumerCount
)
{
return
false
;
}
for
(
DataTransferPipe
pipe
:
getWizard
().
getSettings
().
getDataPipes
())
{
if
(
pipe
.
getConsumer
()
==
null
||
pipe
.
getProducer
()
==
null
)
{
if
(
isInvalidDataTransferNode
(
pipe
.
getConsumer
())
||
isInvalidDataTransferNode
(
pipe
.
getProducer
()))
{
setMessage
(
DTUIMessages
.
stream_consumer_page_warning_not_enough_sources_chosen
,
IMessageProvider
.
WARNING
);
return
false
;
}
}
setMessage
(
null
);
return
true
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录