Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
060fdab3
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,发现更多精彩内容 >>
提交
060fdab3
编写于
12月 21, 2019
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#7444 PG restore + script execute tasks
Former-commit-id:
de68125f
上级
192100f9
变更
14
显示空白变更内容
内联
并排
Showing
14 changed file
with
185 addition
and
47 deletion
+185
-47
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreBackupWizard.java
...iss/dbeaver/ext/postgresql/tools/PostgreBackupWizard.java
+4
-4
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreBackupWizardPageSettings.java
...ext/postgresql/tools/PostgreBackupWizardPageSettings.java
+3
-3
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreRestoreWizard.java
...ss/dbeaver/ext/postgresql/tools/PostgreRestoreWizard.java
+5
-5
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreRestoreWizardPageSettings.java
...xt/postgresql/tools/PostgreRestoreWizardPageSettings.java
+6
-6
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreScriptExecuteWizard.java
...aver/ext/postgresql/tools/PostgreScriptExecuteWizard.java
+8
-3
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreScriptExecuteWizardPageSettings.java
...tgresql/tools/PostgreScriptExecuteWizardPageSettings.java
+7
-2
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreDatabaseBackupHandler.java
...er/ext/postgresql/tasks/PostgreDatabaseBackupHandler.java
+8
-8
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreDatabaseBackupSettings.java
...r/ext/postgresql/tasks/PostgreDatabaseBackupSettings.java
+2
-2
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreDatabaseRestoreHandler.java
...r/ext/postgresql/tasks/PostgreDatabaseRestoreHandler.java
+8
-8
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreDatabaseRestoreSettings.java
.../ext/postgresql/tasks/PostgreDatabaseRestoreSettings.java
+2
-2
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreNativeToolHandler.java
...beaver/ext/postgresql/tasks/PostgreNativeToolHandler.java
+2
-1
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreScriptExecuteHandler.java
...ver/ext/postgresql/tasks/PostgreScriptExecuteHandler.java
+77
-0
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreScriptExecuteSettings.java
...er/ext/postgresql/tasks/PostgreScriptExecuteSettings.java
+52
-1
plugins/org.jkiss.dbeaver.tasks.native.ui/src/org/jkiss/dbeaver/tasks/ui/nativetool/AbstractScriptExecuteWizard.java
...aver/tasks/ui/nativetool/AbstractScriptExecuteWizard.java
+1
-2
未找到文件。
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreBackupWizard.java
浏览文件 @
060fdab3
...
...
@@ -25,8 +25,8 @@ import org.eclipse.ui.IWorkbench;
import
org.jkiss.dbeaver.ext.postgresql.PostgreMessages
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreSchema
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreTableBase
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreBackupSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreDatabaseBackupInfo
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreDatabaseBackupSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreSQLTasks
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
...
...
@@ -45,7 +45,7 @@ import java.util.Iterator;
import
java.util.List
;
import
java.util.Map
;
class
PostgreBackupWizard
extends
PostgreBackupRestoreWizard
<
PostgreBackupSettings
,
PostgreDatabaseBackupInfo
>
implements
IExportWizard
{
class
PostgreBackupWizard
extends
PostgreBackupRestoreWizard
<
Postgre
Database
BackupSettings
,
PostgreDatabaseBackupInfo
>
implements
IExportWizard
{
private
PostgreBackupWizardPageObjects
objectsPage
;
private
PostgreBackupWizardPageSettings
settingsPage
;
...
...
@@ -175,8 +175,8 @@ class PostgreBackupWizard extends PostgreBackupRestoreWizard<PostgreBackupSettin
}
@Override
protected
PostgreBackupSettings
createSettings
()
{
return
new
PostgreBackupSettings
();
protected
Postgre
Database
BackupSettings
createSettings
()
{
return
new
Postgre
Database
BackupSettings
();
}
@Override
...
...
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreBackupWizardPageSettings.java
浏览文件 @
060fdab3
...
...
@@ -25,7 +25,7 @@ import org.eclipse.swt.events.SelectionListener;
import
org.eclipse.swt.layout.GridData
;
import
org.eclipse.swt.widgets.*
;
import
org.jkiss.dbeaver.ext.postgresql.PostgreMessages
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreBackupSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.Postgre
Database
BackupSettings
;
import
org.jkiss.dbeaver.tasks.ui.nativetool.AbstractImportExportWizard
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.ui.dialogs.DialogUtils
;
...
...
@@ -74,7 +74,7 @@ class PostgreBackupWizardPageSettings extends PostgreWizardPageSettings<PostgreB
Group
formatGroup
=
UIUtils
.
createControlGroup
(
composite
,
PostgreMessages
.
wizard_backup_page_setting_group_setting
,
2
,
GridData
.
FILL_HORIZONTAL
,
0
);
formatCombo
=
UIUtils
.
createLabelCombo
(
formatGroup
,
PostgreMessages
.
wizard_backup_page_setting_label_format
,
SWT
.
DROP_DOWN
|
SWT
.
READ_ONLY
);
formatCombo
.
setLayoutData
(
new
GridData
(
GridData
.
HORIZONTAL_ALIGN_BEGINNING
));
for
(
Postgre
BackupSettings
.
ExportFormat
format
:
Postgr
eBackupSettings
.
ExportFormat
.
values
())
{
for
(
Postgre
DatabaseBackupSettings
.
ExportFormat
format
:
PostgreDatabas
eBackupSettings
.
ExportFormat
.
values
())
{
formatCombo
.
add
(
format
.
getTitle
());
}
formatCombo
.
select
(
wizard
.
getSettings
().
getFormat
().
ordinal
());
...
...
@@ -170,7 +170,7 @@ class PostgreBackupWizardPageSettings extends PostgreWizardPageSettings<PostgreB
wizard
.
setOutputFolder
(
CommonUtils
.
isEmpty
(
fileName
)
?
null
:
new
File
(
fileName
));
wizard
.
getSettings
().
setOutputFilePattern
(
outputFileText
.
getText
());
wizard
.
getSettings
().
setFormat
(
PostgreBackupSettings
.
ExportFormat
.
values
()[
formatCombo
.
getSelectionIndex
()]);
wizard
.
getSettings
().
setFormat
(
Postgre
Database
BackupSettings
.
ExportFormat
.
values
()[
formatCombo
.
getSelectionIndex
()]);
wizard
.
getSettings
().
setCompression
(
compressCombo
.
getText
());
wizard
.
getSettings
().
setEncoding
(
encodingCombo
.
getText
());
wizard
.
getSettings
().
setUseInserts
(
useInsertsCheck
.
getSelection
());
...
...
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreRestoreWizard.java
浏览文件 @
060fdab3
...
...
@@ -25,7 +25,7 @@ import org.jkiss.dbeaver.ext.postgresql.PostgreMessages;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreDatabase
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreBackupRestoreSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreDatabaseRestoreInfo
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreRestoreSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.Postgre
Database
RestoreSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreSQLTasks
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
...
...
@@ -40,7 +40,7 @@ import java.util.Collections;
import
java.util.List
;
import
java.util.Map
;
class
PostgreRestoreWizard
extends
PostgreBackupRestoreWizard
<
PostgreRestoreSettings
,
PostgreDatabaseRestoreInfo
>
implements
IExportWizard
{
class
PostgreRestoreWizard
extends
PostgreBackupRestoreWizard
<
Postgre
Database
RestoreSettings
,
PostgreDatabaseRestoreInfo
>
implements
IExportWizard
{
private
PostgreRestoreWizardPageSettings
settingsPage
;
...
...
@@ -119,7 +119,7 @@ class PostgreRestoreWizard extends PostgreBackupRestoreWizard<PostgreRestoreSett
@Override
protected
List
<
String
>
getCommandLine
(
PostgreDatabaseRestoreInfo
arg
)
throws
IOException
{
List
<
String
>
cmd
=
super
.
getCommandLine
(
arg
);
PostgreRestoreSettings
settings
=
getSettings
();
Postgre
Database
RestoreSettings
settings
=
getSettings
();
if
(
settings
.
getFormat
()
!=
PostgreBackupRestoreSettings
.
ExportFormat
.
PLAIN
)
{
cmd
.
add
(
"--format="
+
settings
.
getFormat
().
getId
());
}
...
...
@@ -132,8 +132,8 @@ class PostgreRestoreWizard extends PostgreBackupRestoreWizard<PostgreRestoreSett
}
@Override
protected
PostgreRestoreSettings
createSettings
()
{
return
new
PostgreRestoreSettings
();
protected
Postgre
Database
RestoreSettings
createSettings
()
{
return
new
Postgre
Database
RestoreSettings
();
}
@Override
...
...
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreRestoreWizardPageSettings.java
浏览文件 @
060fdab3
...
...
@@ -20,8 +20,8 @@ import org.eclipse.swt.SWT;
import
org.eclipse.swt.layout.GridData
;
import
org.eclipse.swt.widgets.*
;
import
org.jkiss.dbeaver.ext.postgresql.PostgreMessages
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreBackupSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreRestoreSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.Postgre
Database
BackupSettings
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.Postgre
Database
RestoreSettings
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.ui.controls.TextWithOpenFile
;
import
org.jkiss.utils.CommonUtils
;
...
...
@@ -56,7 +56,7 @@ class PostgreRestoreWizardPageSettings extends PostgreWizardPageSettings<Postgre
Group
formatGroup
=
UIUtils
.
createControlGroup
(
composite
,
PostgreMessages
.
wizard_restore_page_setting_label_setting
,
2
,
GridData
.
FILL_HORIZONTAL
,
0
);
formatCombo
=
UIUtils
.
createLabelCombo
(
formatGroup
,
PostgreMessages
.
wizard_restore_page_setting_label_format
,
SWT
.
DROP_DOWN
|
SWT
.
READ_ONLY
);
formatCombo
.
setLayoutData
(
new
GridData
(
GridData
.
HORIZONTAL_ALIGN_BEGINNING
));
for
(
Postgre
BackupSettings
.
ExportFormat
format
:
Postgr
eBackupSettings
.
ExportFormat
.
values
())
{
for
(
Postgre
DatabaseBackupSettings
.
ExportFormat
format
:
PostgreDatabas
eBackupSettings
.
ExportFormat
.
values
())
{
formatCombo
.
add
(
format
.
getTitle
());
}
formatCombo
.
select
(
wizard
.
getSettings
().
getFormat
().
ordinal
());
...
...
@@ -88,8 +88,8 @@ class PostgreRestoreWizardPageSettings extends PostgreWizardPageSettings<Postgre
@Override
public
void
saveState
()
{
PostgreRestoreSettings
settings
=
wizard
.
getSettings
();
settings
.
setFormat
(
PostgreBackupSettings
.
ExportFormat
.
values
()[
formatCombo
.
getSelectionIndex
()]);
Postgre
Database
RestoreSettings
settings
=
wizard
.
getSettings
();
settings
.
setFormat
(
Postgre
Database
BackupSettings
.
ExportFormat
.
values
()[
formatCombo
.
getSelectionIndex
()]);
settings
.
setInputFile
(
inputFileText
.
getText
());
settings
.
setCleanFirst
(
cleanFirstButton
.
getSelection
());
}
...
...
@@ -98,7 +98,7 @@ class PostgreRestoreWizardPageSettings extends PostgreWizardPageSettings<Postgre
protected
void
updateState
()
{
saveState
();
inputFileText
.
setOpenFolder
(
wizard
.
getSettings
().
getFormat
()
==
PostgreBackupSettings
.
ExportFormat
.
DIRECTORY
);
inputFileText
.
setOpenFolder
(
wizard
.
getSettings
().
getFormat
()
==
Postgre
Database
BackupSettings
.
ExportFormat
.
DIRECTORY
);
getContainer
().
updateButtons
();
}
...
...
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreScriptExecuteWizard.java
浏览文件 @
060fdab3
...
...
@@ -27,7 +27,9 @@ import org.jkiss.dbeaver.ext.postgresql.model.PostgreDatabase;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreSQLTasks
;
import
org.jkiss.dbeaver.ext.postgresql.tasks.PostgreScriptExecuteSettings
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.model.task.DBTTask
;
import
org.jkiss.dbeaver.registry.task.TaskPreferenceStore
;
import
org.jkiss.dbeaver.tasks.ui.nativetool.AbstractScriptExecuteWizard
;
import
org.jkiss.dbeaver.utils.RuntimeUtils
;
import
org.jkiss.utils.CommonUtils
;
...
...
@@ -38,7 +40,7 @@ import java.util.Collections;
import
java.util.List
;
import
java.util.Map
;
class
PostgreScriptExecuteWizard
extends
AbstractScriptExecuteWizard
<
PostgreScriptExecuteSettings
,
PostgreDatabase
,
PostgreDatabase
>
{
class
PostgreScriptExecuteWizard
extends
AbstractScriptExecuteWizard
<
PostgreScriptExecuteSettings
,
DBSObject
,
PostgreDatabase
>
{
private
PostgreScriptExecuteWizardPageSettings
mainPage
;
...
...
@@ -49,6 +51,7 @@ class PostgreScriptExecuteWizard extends AbstractScriptExecuteWizard<PostgreScri
PostgreScriptExecuteWizard
(
PostgreDatabase
catalog
)
{
super
(
Collections
.
singleton
(
catalog
),
PostgreMessages
.
wizard_script_title_execute_script
);
getSettings
().
setDatabase
(
catalog
);
}
@Override
...
...
@@ -70,7 +73,9 @@ class PostgreScriptExecuteWizard extends AbstractScriptExecuteWizard<PostgreScri
@Override
public
void
saveTaskState
(
DBRRunnableContext
runnableContext
,
Map
<
String
,
Object
>
state
)
{
// TODO: implement
mainPage
.
saveState
();
getSettings
().
saveSettings
(
runnableContext
,
new
TaskPreferenceStore
(
state
));
}
@Override
...
...
@@ -111,7 +116,7 @@ class PostgreScriptExecuteWizard extends AbstractScriptExecuteWizard<PostgreScri
@Override
public
Collection
<
PostgreDatabase
>
getRunInfo
()
{
return
getDatabaseObjects
(
);
return
Collections
.
singletonList
(
getSettings
().
getDatabase
()
);
}
@Override
...
...
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/PostgreScriptExecuteWizardPageSettings.java
浏览文件 @
060fdab3
...
...
@@ -74,7 +74,7 @@ public class PostgreScriptExecuteWizardPageSettings extends PostgreWizardPageSet
});
if
(
wizard
.
getInputFile
()
!=
null
)
{
inputFileText
.
setText
(
wizard
.
getInputFile
().
get
Name
());
inputFileText
.
setText
(
wizard
.
getInputFile
().
get
AbsolutePath
());
}
Composite
extraGroup
=
UIUtils
.
createComposite
(
composite
,
2
);
...
...
@@ -93,10 +93,15 @@ public class PostgreScriptExecuteWizardPageSettings extends PostgreWizardPageSet
}
@Override
p
rotected
void
updat
eState
()
{
p
ublic
void
sav
eState
()
{
String
fileName
=
inputFileText
.
getText
();
wizard
.
setInputFile
(
CommonUtils
.
isEmpty
(
fileName
)
?
null
:
new
File
(
fileName
));
}
@Override
protected
void
updateState
()
{
saveState
();
getContainer
().
updateButtons
();
}
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreDatabaseBackupHandler.java
浏览文件 @
060fdab3
...
...
@@ -19,22 +19,22 @@ import java.util.Collection;
import
java.util.Iterator
;
import
java.util.List
;
public
class
PostgreDatabaseBackupHandler
extends
PostgreNativeToolHandler
<
PostgreBackupSettings
,
DBSObject
,
PostgreDatabaseBackupInfo
>
{
public
class
PostgreDatabaseBackupHandler
extends
PostgreNativeToolHandler
<
Postgre
Database
BackupSettings
,
DBSObject
,
PostgreDatabaseBackupInfo
>
{
@Override
public
Collection
<
PostgreDatabaseBackupInfo
>
getRunInfo
(
PostgreBackupSettings
settings
)
{
public
Collection
<
PostgreDatabaseBackupInfo
>
getRunInfo
(
Postgre
Database
BackupSettings
settings
)
{
return
settings
.
getExportObjects
();
}
@Override
protected
PostgreBackupSettings
createTaskSettings
(
DBRRunnableContext
context
,
DBTTask
task
)
{
Postgre
BackupSettings
settings
=
new
Postgr
eBackupSettings
();
protected
Postgre
Database
BackupSettings
createTaskSettings
(
DBRRunnableContext
context
,
DBTTask
task
)
{
Postgre
DatabaseBackupSettings
settings
=
new
PostgreDatabas
eBackupSettings
();
settings
.
loadSettings
(
context
,
new
TaskPreferenceStore
(
task
));
return
settings
;
}
@Override
protected
boolean
validateTaskParameters
(
DBTTask
task
,
PostgreBackupSettings
settings
,
Log
log
)
{
protected
boolean
validateTaskParameters
(
DBTTask
task
,
Postgre
Database
BackupSettings
settings
,
Log
log
)
{
if
(
task
.
getType
().
getId
().
equals
(
PostgreSQLTasks
.
TASK_DATABASE_BACKUP
))
{
final
File
dir
=
settings
.
getOutputFolder
();
if
(!
dir
.
exists
())
{
...
...
@@ -68,7 +68,7 @@ public class PostgreDatabaseBackupHandler extends PostgreNativeToolHandler<Postg
}
@Override
public
void
fillProcessParameters
(
PostgreBackupSettings
settings
,
PostgreDatabaseBackupInfo
arg
,
List
<
String
>
cmd
)
throws
IOException
{
public
void
fillProcessParameters
(
Postgre
Database
BackupSettings
settings
,
PostgreDatabaseBackupInfo
arg
,
List
<
String
>
cmd
)
throws
IOException
{
super
.
fillProcessParameters
(
settings
,
arg
,
cmd
);
cmd
.
add
(
"--format="
+
settings
.
getFormat
().
getId
());
...
...
@@ -112,7 +112,7 @@ public class PostgreDatabaseBackupHandler extends PostgreNativeToolHandler<Postg
}
@Override
protected
List
<
String
>
getCommandLine
(
PostgreBackupSettings
settings
,
PostgreDatabaseBackupInfo
arg
)
throws
IOException
{
protected
List
<
String
>
getCommandLine
(
Postgre
Database
BackupSettings
settings
,
PostgreDatabaseBackupInfo
arg
)
throws
IOException
{
List
<
String
>
cmd
=
new
ArrayList
<>();
fillProcessParameters
(
settings
,
arg
,
cmd
);
cmd
.
add
(
arg
.
getDatabase
().
getName
());
...
...
@@ -121,7 +121,7 @@ public class PostgreDatabaseBackupHandler extends PostgreNativeToolHandler<Postg
}
@Override
protected
void
startProcessHandler
(
DBRProgressMonitor
monitor
,
DBTTask
task
,
PostgreBackupSettings
settings
,
PostgreDatabaseBackupInfo
arg
,
ProcessBuilder
processBuilder
,
Process
process
,
Log
log
)
throws
IOException
{
protected
void
startProcessHandler
(
DBRProgressMonitor
monitor
,
DBTTask
task
,
Postgre
Database
BackupSettings
settings
,
PostgreDatabaseBackupInfo
arg
,
ProcessBuilder
processBuilder
,
Process
process
,
Log
log
)
throws
IOException
{
super
.
startProcessHandler
(
monitor
,
task
,
settings
,
arg
,
processBuilder
,
process
,
log
);
String
outFileName
=
GeneralUtils
.
replaceVariables
(
settings
.
getOutputFilePattern
(),
name
->
{
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreBackupSettings.java
→
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/Postgre
Database
BackupSettings.java
浏览文件 @
060fdab3
...
...
@@ -35,9 +35,9 @@ import java.util.LinkedHashMap;
import
java.util.List
;
import
java.util.Map
;
public
class
PostgreBackupSettings
extends
PostgreBackupRestoreSettings
{
public
class
Postgre
Database
BackupSettings
extends
PostgreBackupRestoreSettings
{
private
static
final
Log
log
=
Log
.
getLog
(
PostgreBackupSettings
.
class
);
private
static
final
Log
log
=
Log
.
getLog
(
Postgre
Database
BackupSettings
.
class
);
private
List
<
PostgreDatabaseBackupInfo
>
exportObjects
=
new
ArrayList
<>();
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreDatabaseRestoreHandler.java
浏览文件 @
060fdab3
...
...
@@ -14,22 +14,22 @@ import java.util.Collection;
import
java.util.Collections
;
import
java.util.List
;
public
class
PostgreDatabaseRestoreHandler
extends
PostgreNativeToolHandler
<
PostgreRestoreSettings
,
DBSObject
,
PostgreDatabaseRestoreInfo
>
{
public
class
PostgreDatabaseRestoreHandler
extends
PostgreNativeToolHandler
<
Postgre
Database
RestoreSettings
,
DBSObject
,
PostgreDatabaseRestoreInfo
>
{
@Override
public
Collection
<
PostgreDatabaseRestoreInfo
>
getRunInfo
(
PostgreRestoreSettings
settings
)
{
public
Collection
<
PostgreDatabaseRestoreInfo
>
getRunInfo
(
Postgre
Database
RestoreSettings
settings
)
{
return
Collections
.
singletonList
(
settings
.
getRestoreInfo
());
}
@Override
protected
PostgreRestoreSettings
createTaskSettings
(
DBRRunnableContext
context
,
DBTTask
task
)
{
Postgre
RestoreSettings
settings
=
new
Postgr
eRestoreSettings
();
protected
Postgre
Database
RestoreSettings
createTaskSettings
(
DBRRunnableContext
context
,
DBTTask
task
)
{
Postgre
DatabaseRestoreSettings
settings
=
new
PostgreDatabas
eRestoreSettings
();
settings
.
loadSettings
(
context
,
new
TaskPreferenceStore
(
task
));
return
settings
;
}
@Override
protected
boolean
validateTaskParameters
(
DBTTask
task
,
PostgreRestoreSettings
settings
,
Log
log
)
{
protected
boolean
validateTaskParameters
(
DBTTask
task
,
Postgre
Database
RestoreSettings
settings
,
Log
log
)
{
if
(
task
.
getType
().
getId
().
equals
(
PostgreSQLTasks
.
TASK_DATABASE_BACKUP
))
{
final
File
dir
=
settings
.
getOutputFolder
();
if
(!
dir
.
exists
())
{
...
...
@@ -53,7 +53,7 @@ public class PostgreDatabaseRestoreHandler extends PostgreNativeToolHandler<Post
}
@Override
public
void
fillProcessParameters
(
PostgreRestoreSettings
settings
,
PostgreDatabaseRestoreInfo
arg
,
List
<
String
>
cmd
)
throws
IOException
{
public
void
fillProcessParameters
(
Postgre
Database
RestoreSettings
settings
,
PostgreDatabaseRestoreInfo
arg
,
List
<
String
>
cmd
)
throws
IOException
{
super
.
fillProcessParameters
(
settings
,
arg
,
cmd
);
if
(
settings
.
isCleanFirst
())
{
...
...
@@ -67,7 +67,7 @@ public class PostgreDatabaseRestoreHandler extends PostgreNativeToolHandler<Post
}
@Override
protected
List
<
String
>
getCommandLine
(
PostgreRestoreSettings
settings
,
PostgreDatabaseRestoreInfo
arg
)
throws
IOException
{
protected
List
<
String
>
getCommandLine
(
Postgre
Database
RestoreSettings
settings
,
PostgreDatabaseRestoreInfo
arg
)
throws
IOException
{
List
<
String
>
cmd
=
new
ArrayList
<>();
fillProcessParameters
(
settings
,
arg
,
cmd
);
...
...
@@ -88,7 +88,7 @@ public class PostgreDatabaseRestoreHandler extends PostgreNativeToolHandler<Post
}
@Override
protected
void
startProcessHandler
(
DBRProgressMonitor
monitor
,
DBTTask
task
,
PostgreRestoreSettings
settings
,
PostgreDatabaseRestoreInfo
arg
,
ProcessBuilder
processBuilder
,
Process
process
,
Log
log
)
throws
IOException
{
protected
void
startProcessHandler
(
DBRProgressMonitor
monitor
,
DBTTask
task
,
Postgre
Database
RestoreSettings
settings
,
PostgreDatabaseRestoreInfo
arg
,
ProcessBuilder
processBuilder
,
Process
process
,
Log
log
)
throws
IOException
{
super
.
startProcessHandler
(
monitor
,
task
,
settings
,
arg
,
processBuilder
,
process
,
log
);
if
(
settings
.
getFormat
()
!=
PostgreBackupRestoreSettings
.
ExportFormat
.
DIRECTORY
)
{
new
BinaryFileTransformerJob
(
monitor
,
task
,
new
File
(
settings
.
getInputFile
()),
process
.
getOutputStream
(),
log
).
start
();
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreRestoreSettings.java
→
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/Postgre
Database
RestoreSettings.java
浏览文件 @
060fdab3
...
...
@@ -27,9 +27,9 @@ import org.jkiss.utils.CommonUtils;
import
java.lang.reflect.InvocationTargetException
;
public
class
PostgreRestoreSettings
extends
PostgreBackupRestoreSettings
{
public
class
Postgre
Database
RestoreSettings
extends
PostgreBackupRestoreSettings
{
private
static
final
Log
log
=
Log
.
getLog
(
PostgreRestoreSettings
.
class
);
private
static
final
Log
log
=
Log
.
getLog
(
Postgre
Database
RestoreSettings
.
class
);
private
String
inputFile
;
private
boolean
cleanFirst
;
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreNativeToolHandler.java
浏览文件 @
060fdab3
...
...
@@ -29,7 +29,8 @@ public abstract class PostgreNativeToolHandler<SETTINGS extends AbstractNativeTo
@Override
public
void
fillProcessParameters
(
SETTINGS
settings
,
PROCESS_ARG
process_arg
,
List
<
String
>
cmd
)
throws
IOException
{
File
dumpBinary
=
RuntimeUtils
.
getNativeClientBinary
(
settings
.
getClientHome
(),
PostgreConstants
.
BIN_FOLDER
,
isExportWizard
()
?
"pg_dump"
:
"pg_restore"
);
//$NON-NLS-1$
this
instanceof
PostgreDatabaseBackupHandler
?
"pg_dump"
:
this
instanceof
PostgreDatabaseRestoreHandler
?
"pg_restore"
:
"psql"
);
//$NON-NLS-1$
String
dumpPath
=
dumpBinary
.
getAbsolutePath
();
cmd
.
add
(
dumpPath
);
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreScriptExecuteHandler.java
0 → 100644
浏览文件 @
060fdab3
package
org.jkiss.dbeaver.ext.postgresql.tasks
;
import
org.jkiss.dbeaver.Log
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreDatabase
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.model.task.DBTTask
;
import
org.jkiss.dbeaver.registry.task.TaskPreferenceStore
;
import
java.io.File
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collections
;
import
java.util.List
;
public
class
PostgreScriptExecuteHandler
extends
PostgreNativeToolHandler
<
PostgreScriptExecuteSettings
,
DBSObject
,
PostgreDatabase
>
{
@Override
public
Collection
<
PostgreDatabase
>
getRunInfo
(
PostgreScriptExecuteSettings
settings
)
{
return
Collections
.
singletonList
(
settings
.
getDatabase
());
}
@Override
protected
PostgreScriptExecuteSettings
createTaskSettings
(
DBRRunnableContext
context
,
DBTTask
task
)
{
PostgreScriptExecuteSettings
settings
=
new
PostgreScriptExecuteSettings
();
settings
.
loadSettings
(
context
,
new
TaskPreferenceStore
(
task
));
return
settings
;
}
@Override
protected
boolean
needsModelRefresh
()
{
return
true
;
}
@Override
public
boolean
isVerbose
()
{
return
false
;
}
@Override
public
void
fillProcessParameters
(
PostgreScriptExecuteSettings
settings
,
PostgreDatabase
arg
,
List
<
String
>
cmd
)
throws
IOException
{
super
.
fillProcessParameters
(
settings
,
arg
,
cmd
);
if
(
arg
.
getDataSource
().
isServerVersionAtLeast
(
9
,
5
))
{
cmd
.
add
(
"--echo-errors"
);
//$NON-NLS-1$
}
}
@Override
protected
boolean
isExportWizard
()
{
return
false
;
}
@Override
protected
List
<
String
>
getCommandLine
(
PostgreScriptExecuteSettings
settings
,
PostgreDatabase
arg
)
throws
IOException
{
List
<
String
>
cmd
=
new
ArrayList
<>();
fillProcessParameters
(
settings
,
arg
,
cmd
);
cmd
.
add
(
arg
.
getName
());
return
cmd
;
}
@Override
protected
boolean
isLogInputStream
()
{
return
true
;
}
@Override
protected
void
startProcessHandler
(
DBRProgressMonitor
monitor
,
DBTTask
task
,
PostgreScriptExecuteSettings
settings
,
PostgreDatabase
arg
,
ProcessBuilder
processBuilder
,
Process
process
,
Log
log
)
throws
IOException
{
super
.
startProcessHandler
(
monitor
,
task
,
settings
,
arg
,
processBuilder
,
process
,
log
);
new
BinaryFileTransformerJob
(
monitor
,
task
,
new
File
(
settings
.
getInputFile
()),
process
.
getOutputStream
(),
log
).
start
();
}
}
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/tasks/PostgreScriptExecuteSettings.java
浏览文件 @
060fdab3
...
...
@@ -17,10 +17,61 @@
*/
package
org.jkiss.dbeaver.ext.postgresql.tasks
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.Log
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreDatabase
;
import
org.jkiss.dbeaver.model.DBUtils
;
import
org.jkiss.dbeaver.model.preferences.DBPPreferenceStore
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.tasks.nativetool.AbstractScriptExecuteSettings
;
import
org.jkiss.utils.CommonUtils
;
public
class
PostgreScriptExecuteSettings
extends
AbstractScriptExecuteSettings
<
PostgreDatabase
>
{
import
java.lang.reflect.InvocationTargetException
;
public
class
PostgreScriptExecuteSettings
extends
AbstractScriptExecuteSettings
<
DBSObject
>
{
private
static
final
Log
log
=
Log
.
getLog
(
PostgreScriptExecuteSettings
.
class
);
private
PostgreDatabase
database
;
public
PostgreDatabase
getDatabase
()
{
return
database
;
}
public
void
setDatabase
(
PostgreDatabase
database
)
{
this
.
database
=
database
;
}
@Override
public
void
loadSettings
(
DBRRunnableContext
runnableContext
,
DBPPreferenceStore
store
)
{
super
.
loadSettings
(
runnableContext
,
store
);
String
databaseId
=
store
.
getString
(
"pg.script.database"
);
if
(!
CommonUtils
.
isEmpty
(
databaseId
))
{
try
{
runnableContext
.
run
(
true
,
true
,
monitor
->
{
try
{
database
=
(
PostgreDatabase
)
DBUtils
.
findObjectById
(
monitor
,
getProject
(),
databaseId
);
if
(
database
==
null
)
{
throw
new
DBException
(
"Database "
+
databaseId
+
" not found"
);
}
}
catch
(
Throwable
e
)
{
throw
new
InvocationTargetException
(
e
);
}
});
}
catch
(
InvocationTargetException
e
)
{
log
.
error
(
"Error loading objects configuration"
,
e
);
}
catch
(
InterruptedException
e
)
{
// Ignore
}
}
}
@Override
public
void
saveSettings
(
DBRRunnableContext
runnableContext
,
DBPPreferenceStore
store
)
{
super
.
saveSettings
(
runnableContext
,
store
);
store
.
setValue
(
"pg.script.database"
,
DBUtils
.
getObjectFullId
(
database
));
}
}
plugins/org.jkiss.dbeaver.tasks.native.ui/src/org/jkiss/dbeaver/tasks/ui/nativetool/AbstractScriptExecuteWizard.java
浏览文件 @
060fdab3
...
...
@@ -57,8 +57,7 @@ public abstract class AbstractScriptExecuteWizard<SETTINGS extends AbstractScrip
return
new
File
(
getSettings
().
getInputFile
());
}
public
void
setInputFile
(
File
inputFile
)
{
public
void
setInputFile
(
File
inputFile
)
{
getSettings
().
setInputFile
(
inputFile
==
null
?
null
:
inputFile
.
getAbsolutePath
());
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录