Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
7c4419ae
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,发现更多精彩内容 >>
提交
7c4419ae
编写于
4月 12, 2019
作者:
R
RiedNyko
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Ability to enable trigger
上级
70cc2eac
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
123 addition
and
43 deletion
+123
-43
plugins/org.jkiss.dbeaver.ext.postgresql.ui/plugin.xml
plugins/org.jkiss.dbeaver.ext.postgresql.ui/plugin.xml
+9
-0
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/maintenance/PostgreToolTriggerDisable.java
...stgresql/tools/maintenance/PostgreToolTriggerDisable.java
+19
-43
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/maintenance/PostgreToolTriggerEnable.java
...ostgresql/tools/maintenance/PostgreToolTriggerEnable.java
+25
-0
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/maintenance/PostgreToolTriggerToggle.java
...ostgresql/tools/maintenance/PostgreToolTriggerToggle.java
+70
-0
未找到文件。
plugins/org.jkiss.dbeaver.ext.postgresql.ui/plugin.xml
浏览文件 @
7c4419ae
...
...
@@ -200,6 +200,15 @@
label=
"Disable trigger"
singleton=
"false"
>
<objectType
name=
"org.jkiss.dbeaver.ext.postgresql.model.PostgreTrigger"
/>
</tool>
<tool
class=
"org.jkiss.dbeaver.ext.postgresql.tools.maintenance.PostgreToolTriggerEnable"
description=
"Enable trigger"
id=
"org.jkiss.dbeaver.ext.postgresql.tools.maintenance.PostgreToolTriggerEnable"
group=
"org.jkiss.dbeaver.ext.postgresql.tools.maintenance"
label=
"Enable trigger"
singleton=
"false"
>
<objectType
name=
"org.jkiss.dbeaver.ext.postgresql.model.PostgreTrigger"
/>
</tool>
<tool
class=
"org.jkiss.dbeaver.ext.postgresql.tools.maintenance.PostgreToolRefreshMView"
...
...
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/maintenance/PostgreToolTriggerDisable.java
浏览文件 @
7c4419ae
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2019 Serge Rider (serge@jkiss.org)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.jkiss.dbeaver.ext.postgresql.tools.maintenance
;
import
java.util.Collection
;
import
java.util.List
;
public
class
PostgreToolTriggerDisable
extends
PostgreToolTriggerToggle
{
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.ui.IWorkbenchPart
;
import
org.eclipse.ui.IWorkbenchPartSite
;
import
org.eclipse.ui.IWorkbenchWindow
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreObject
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreTrigger
;
import
org.jkiss.dbeaver.model.DBPEvaluationContext
;
import
org.jkiss.dbeaver.model.DBUtils
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.tools.IExternalTool
;
import
org.jkiss.utils.CommonUtils
;
public
class
PostgreToolTriggerDisable
implements
IExternalTool
{
@Override
public
void
execute
(
IWorkbenchWindow
window
,
IWorkbenchPart
activePart
,
Collection
<
DBSObject
>
objects
)
throws
DBException
{
List
<
PostgreTrigger
>
trigger
=
CommonUtils
.
filterCollection
(
objects
,
PostgreTrigger
.
class
);
if
(!
trigger
.
isEmpty
())
{
SQLDialog
dialog
=
new
SQLDialog
(
activePart
.
getSite
(),
trigger
);
dialog
.
open
();
}
}
static
class
SQLDialog
extends
TableToolDialog
{
public
SQLDialog
(
IWorkbenchPartSite
partSite
,
List
<
PostgreTrigger
>
selectedTrigger
)
{
super
(
partSite
,
"Disable trigger"
,
selectedTrigger
);
}
@Override
protected
void
generateObjectCommand
(
List
<
String
>
lines
,
PostgreObject
object
)
{
lines
.
add
(
"ALTER TABLE "
+
((
PostgreTrigger
)
object
).
getTable
()
+
" DISABLE TRIGGER "
+
DBUtils
.
getQuotedIdentifier
((
PostgreTrigger
)
object
)
);
}
@Override
protected
void
createControls
(
Composite
parent
)
{
createObjectsSelector
(
parent
);
}
public
PostgreToolTriggerDisable
()
{
super
(
false
);
}
}
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/maintenance/PostgreToolTriggerEnable.java
0 → 100644
浏览文件 @
7c4419ae
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2019 Serge Rider (serge@jkiss.org)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.jkiss.dbeaver.ext.postgresql.tools.maintenance
;
public
class
PostgreToolTriggerEnable
extends
PostgreToolTriggerToggle
{
public
PostgreToolTriggerEnable
()
{
super
(
true
);
}
}
plugins/org.jkiss.dbeaver.ext.postgresql.ui/src/org/jkiss/dbeaver/ext/postgresql/tools/maintenance/PostgreToolTriggerToggle.java
0 → 100644
浏览文件 @
7c4419ae
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2019 Serge Rider (serge@jkiss.org)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.jkiss.dbeaver.ext.postgresql.tools.maintenance
;
import
java.util.Collection
;
import
java.util.List
;
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.ui.IWorkbenchPart
;
import
org.eclipse.ui.IWorkbenchPartSite
;
import
org.eclipse.ui.IWorkbenchWindow
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreObject
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreTrigger
;
import
org.jkiss.dbeaver.model.DBUtils
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.tools.IExternalTool
;
import
org.jkiss.utils.CommonUtils
;
public
abstract
class
PostgreToolTriggerToggle
implements
IExternalTool
{
private
boolean
isEnable
;
protected
PostgreToolTriggerToggle
(
boolean
enable
)
{
this
.
isEnable
=
enable
;
}
@Override
public
void
execute
(
IWorkbenchWindow
window
,
IWorkbenchPart
activePart
,
Collection
<
DBSObject
>
objects
)
throws
DBException
{
List
<
PostgreTrigger
>
trigger
=
CommonUtils
.
filterCollection
(
objects
,
PostgreTrigger
.
class
);
if
(!
trigger
.
isEmpty
())
{
SQLDialog
dialog
=
new
SQLDialog
(
activePart
.
getSite
(),
trigger
);
dialog
.
open
();
}
}
class
SQLDialog
extends
TableToolDialog
{
public
SQLDialog
(
IWorkbenchPartSite
partSite
,
List
<
PostgreTrigger
>
selectedTrigger
)
{
super
(
partSite
,
(
isEnable
?
"Enable"
:
"Disable"
)
+
" trigger"
,
selectedTrigger
);
}
@Override
protected
void
generateObjectCommand
(
List
<
String
>
lines
,
PostgreObject
object
)
{
lines
.
add
(
"ALTER TABLE "
+
((
PostgreTrigger
)
object
).
getTable
()
+
" "
+
(
isEnable
?
"ENABLE"
:
"DISABLE"
)
+
" TRIGGER "
+
DBUtils
.
getQuotedIdentifier
((
PostgreTrigger
)
object
));
}
@Override
protected
void
createControls
(
Composite
parent
)
{
createObjectsSelector
(
parent
);
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录