Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
40cdac06
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
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,发现更多精彩内容 >>
提交
40cdac06
编写于
3月 04, 2018
作者:
S
serge-rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#3049 Fix session manager initialization. Session manager code refactoring (generics)
上级
084d0a77
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
39 addition
and
44 deletion
+39
-44
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/views/session/SessionManagerViewer.java
.../jkiss/dbeaver/ui/views/session/SessionManagerViewer.java
+17
-25
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/views/session/SessionTable.java
.../src/org/jkiss/dbeaver/ui/views/session/SessionTable.java
+12
-12
plugins/org.jkiss.dbeaver.ext.db2/src/org/jkiss/dbeaver/ext/db2/model/app/DB2ServerApplicationEditor.java
...dbeaver/ext/db2/model/app/DB2ServerApplicationEditor.java
+1
-1
plugins/org.jkiss.dbeaver.ext.exasol/src/org/jkiss/dbeaver/ext/exasol/model/app/ExasolServerSessionEditor.java
...eaver/ext/exasol/model/app/ExasolServerSessionEditor.java
+1
-1
plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/editors/MySQLSessionEditor.java
...g/jkiss/dbeaver/ext/mysql/editors/MySQLSessionEditor.java
+2
-1
plugins/org.jkiss.dbeaver.ext.oracle/src/org/jkiss/dbeaver/ext/oracle/editors/OracleSessionEditor.java
...jkiss/dbeaver/ext/oracle/editors/OracleSessionEditor.java
+3
-2
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/edit/PostgreSessionEditor.java
...iss/dbeaver/ext/postgresql/edit/PostgreSessionEditor.java
+3
-2
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/views/session/SessionManagerViewer.java
浏览文件 @
40cdac06
...
...
@@ -19,14 +19,10 @@ package org.jkiss.dbeaver.ui.views.session;
import
org.eclipse.jface.action.Action
;
import
org.eclipse.jface.action.IContributionManager
;
import
org.eclipse.jface.viewers.ISelection
;
import
org.eclipse.jface.viewers.ISelectionChangedListener
;
import
org.eclipse.jface.viewers.IStructuredSelection
;
import
org.eclipse.jface.viewers.SelectionChangedEvent
;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.custom.SashForm
;
import
org.eclipse.swt.custom.StyledText
;
import
org.eclipse.swt.events.DisposeEvent
;
import
org.eclipse.swt.events.DisposeListener
;
import
org.eclipse.swt.graphics.Font
;
import
org.eclipse.swt.layout.GridData
;
import
org.eclipse.swt.widgets.Composite
;
...
...
@@ -57,7 +53,7 @@ import java.util.Map;
/**
* SessionManagerViewer
*/
public
class
SessionManagerViewer
public
class
SessionManagerViewer
<
SESSION_TYPE
extends
DBAServerSession
>
{
private
SessionListControl
sessionTable
;
//private Text sessionInfo;
...
...
@@ -75,7 +71,7 @@ public class SessionManagerViewer
UIUtils
.
dispose
(
boldFont
);
}
p
ublic
SessionManagerViewer
(
IWorkbenchPart
part
,
Composite
parent
,
final
DBAServerSessionManager
sessionManager
)
{
p
rotected
SessionManagerViewer
(
IWorkbenchPart
part
,
Composite
parent
,
final
DBAServerSessionManager
<
SESSION_TYPE
>
sessionManager
)
{
this
.
subSite
=
new
SubEditorSite
(
part
.
getSite
());
boldFont
=
UIUtils
.
makeBoldFont
(
parent
.
getFont
());
Composite
composite
=
UIUtils
.
createPlaceholder
(
parent
,
1
);
...
...
@@ -86,13 +82,7 @@ public class SessionManagerViewer
refreshControl
=
new
AutoRefreshControl
(
sash
,
sessionManager
.
getClass
().
getSimpleName
(),
monitor
->
DBeaverUI
.
syncExec
(
this
::
refreshSessions
));
sessionTable
=
new
SessionListControl
(
sash
,
part
.
getSite
(),
sessionManager
);
sessionTable
.
getItemsViewer
().
addSelectionChangedListener
(
new
ISelectionChangedListener
()
{
@Override
public
void
selectionChanged
(
SelectionChangedEvent
event
)
{
onSessionSelect
(
getSelectedSession
());
}
});
sessionTable
.
getItemsViewer
().
addSelectionChangedListener
(
event
->
onSessionSelect
(
getSelectedSession
()));
sessionTable
.
setLayoutData
(
new
GridData
(
GridData
.
FILL_HORIZONTAL
));
sessionTable
.
createProgressPanel
(
composite
);
...
...
@@ -125,13 +115,7 @@ public class SessionManagerViewer
sqlViewer
.
reloadSyntaxRules
();
parent
.
addDisposeListener
(
new
DisposeListener
()
{
@Override
public
void
widgetDisposed
(
DisposeEvent
e
)
{
sqlViewer
.
dispose
();
}
});
parent
.
addDisposeListener
(
e
->
sqlViewer
.
dispose
());
sessionProps
=
new
PropertyTreeViewer
(
infoSash
,
SWT
.
BORDER
);
...
...
@@ -181,14 +165,22 @@ public class SessionManagerViewer
refreshControl
.
scheduleAutoRefresh
(
false
);
}
public
void
alterSession
(
final
DBAServerSession
session
,
Map
<
String
,
Object
>
options
)
{
public
void
alterSession
(
final
SESSION_TYPE
session
,
Map
<
String
,
Object
>
options
)
{
sessionTable
.
createAlterService
(
session
,
options
).
schedule
();
}
pr
otected
void
updateSQL
()
{
pr
ivate
void
updateSQL
()
{
String
text
=
curSession
==
null
?
""
:
CommonUtils
.
notEmpty
(
curSession
.
getActiveQuery
());
StringEditorInput
sqlInput
=
new
StringEditorInput
(
sessionTable
.
getShell
().
getText
(),
text
,
true
,
GeneralUtils
.
getDefaultFileEncoding
());
sqlViewer
.
setInput
(
sqlInput
);
if
(
sqlViewer
.
getSite
()
==
null
)
{
try
{
sqlViewer
.
init
(
subSite
,
sqlInput
);
}
catch
(
PartInitException
e
)
{
DBUserInterface
.
getInstance
().
showError
(
sessionTable
.
getShell
().
getText
(),
null
,
e
);
}
}
else
{
sqlViewer
.
setInput
(
sqlInput
);
}
if
(
sqlViewer
.
getTextViewer
()
!=
null
)
{
sqlViewer
.
reloadSyntaxRules
();
}
...
...
@@ -202,9 +194,9 @@ public class SessionManagerViewer
return
null
;
}
private
class
SessionListControl
extends
SessionTable
{
private
class
SessionListControl
extends
SessionTable
<
SESSION_TYPE
>
{
public
SessionListControl
(
SashForm
sash
,
IWorkbenchSite
site
,
DBAServerSessionManager
<
DBAServerSession
>
sessionManager
)
SessionListControl
(
SashForm
sash
,
IWorkbenchSite
site
,
DBAServerSessionManager
<
SESSION_TYPE
>
sessionManager
)
{
super
(
sash
,
SWT
.
SHEET
,
site
,
sessionManager
);
}
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/views/session/SessionTable.java
浏览文件 @
40cdac06
...
...
@@ -39,18 +39,18 @@ import java.util.Map;
/**
* Session table
*/
class
SessionTable
extends
DatabaseObjectListControl
<
DBAServerSession
>
{
class
SessionTable
<
SESSION_TYPE
extends
DBAServerSession
>
extends
DatabaseObjectListControl
<
SESSION_TYPE
>
{
private
DBAServerSessionManager
<
DBAServerSession
>
sessionManager
;
private
DBAServerSessionManager
<
SESSION_TYPE
>
sessionManager
;
public
SessionTable
(
Composite
parent
,
int
style
,
IWorkbenchSite
site
,
DBAServerSessionManager
<
DBAServerSession
>
sessionManager
)
SessionTable
(
Composite
parent
,
int
style
,
IWorkbenchSite
site
,
DBAServerSessionManager
<
SESSION_TYPE
>
sessionManager
)
{
super
(
parent
,
style
,
site
,
CONTENT_PROVIDER
);
this
.
sessionManager
=
sessionManager
;
//setFitWidth(true);
}
public
DBAServerSessionManager
<
DBAServerSession
>
getSessionManager
()
{
public
DBAServerSessionManager
<
SESSION_TYPE
>
getSessionManager
()
{
return
sessionManager
;
}
...
...
@@ -61,21 +61,21 @@ class SessionTable extends DatabaseObjectListControl<DBAServerSession> {
}
@Override
protected
LoadingJob
<
Collection
<
DBAServerSession
>>
createLoadService
()
protected
LoadingJob
<
Collection
<
SESSION_TYPE
>>
createLoadService
()
{
return
LoadingJob
.
createService
(
new
LoadSessionsService
(),
new
ObjectsLoadVisualizer
());
}
protected
LoadingJob
<
Void
>
createAlterService
(
DBAServerSession
session
,
Map
<
String
,
Object
>
options
)
LoadingJob
<
Void
>
createAlterService
(
SESSION_TYPE
session
,
Map
<
String
,
Object
>
options
)
{
return
LoadingJob
.
createService
(
new
KillSessionService
(
session
,
options
),
new
ObjectActionVisualizer
());
}
public
void
init
(
DBAServerSessionManager
<
DBAServerSession
>
sessionManager
)
public
void
init
(
DBAServerSessionManager
<
SESSION_TYPE
>
sessionManager
)
{
this
.
sessionManager
=
sessionManager
;
}
...
...
@@ -106,15 +106,15 @@ class SessionTable extends DatabaseObjectListControl<DBAServerSession> {
};
private
class
LoadSessionsService
extends
DatabaseLoadService
<
Collection
<
DBAServerSession
>>
{
private
class
LoadSessionsService
extends
DatabaseLoadService
<
Collection
<
SESSION_TYPE
>>
{
protected
LoadSessionsService
()
LoadSessionsService
()
{
super
(
"Load sessions"
,
sessionManager
.
getDataSource
());
}
@Override
public
Collection
<
DBAServerSession
>
evaluate
(
DBRProgressMonitor
monitor
)
public
Collection
<
SESSION_TYPE
>
evaluate
(
DBRProgressMonitor
monitor
)
throws
InvocationTargetException
,
InterruptedException
{
try
{
...
...
@@ -130,10 +130,10 @@ class SessionTable extends DatabaseObjectListControl<DBAServerSession> {
}
private
class
KillSessionService
extends
DatabaseLoadService
<
Void
>
{
private
final
DBAServerSession
session
;
private
final
SESSION_TYPE
session
;
private
final
Map
<
String
,
Object
>
options
;
protected
KillSessionService
(
DBAServerSession
session
,
Map
<
String
,
Object
>
options
)
KillSessionService
(
SESSION_TYPE
session
,
Map
<
String
,
Object
>
options
)
{
super
(
"Kill session"
,
sessionManager
.
getDataSource
());
this
.
session
=
session
;
...
...
plugins/org.jkiss.dbeaver.ext.db2/src/org/jkiss/dbeaver/ext/db2/model/app/DB2ServerApplicationEditor.java
浏览文件 @
40cdac06
...
...
@@ -53,7 +53,7 @@ public class DB2ServerApplicationEditor extends AbstractSessionEditor {
@Override
protected
SessionManagerViewer
createSessionViewer
(
DBCExecutionContext
executionContext
,
Composite
parent
)
{
return
new
SessionManagerViewer
(
this
,
parent
,
new
DB2ServerApplicationManager
((
DB2DataSource
)
executionContext
.
getDataSource
()))
{
return
new
SessionManagerViewer
<
DB2ServerApplication
>
(
this
,
parent
,
new
DB2ServerApplicationManager
((
DB2DataSource
)
executionContext
.
getDataSource
()))
{
@Override
@SuppressWarnings
(
"rawtypes"
)
...
...
plugins/org.jkiss.dbeaver.ext.exasol/src/org/jkiss/dbeaver/ext/exasol/model/app/ExasolServerSessionEditor.java
浏览文件 @
40cdac06
...
...
@@ -55,7 +55,7 @@ public class ExasolServerSessionEditor extends AbstractSessionEditor {
@Override
protected
SessionManagerViewer
createSessionViewer
(
DBCExecutionContext
executionContext
,
Composite
parent
)
{
return
new
SessionManagerViewer
(
this
,
parent
,
new
ExasolServerSessionManager
((
ExasolDataSource
)
executionContext
.
getDataSource
()))
{
return
new
SessionManagerViewer
<
ExasolServerSession
>
(
this
,
parent
,
new
ExasolServerSessionManager
((
ExasolDataSource
)
executionContext
.
getDataSource
()))
{
@Override
@SuppressWarnings
(
"rawtypes"
)
protected
void
contributeToToolbar
(
DBAServerSessionManager
sessionManager
,
IContributionManager
contributionManager
)
{
...
...
plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/editors/MySQLSessionEditor.java
浏览文件 @
40cdac06
...
...
@@ -31,6 +31,7 @@ import org.eclipse.ui.ISharedImages;
import
org.jkiss.dbeaver.Log
;
import
org.jkiss.dbeaver.ext.mysql.MySQLMessages
;
import
org.jkiss.dbeaver.ext.mysql.model.MySQLDataSource
;
import
org.jkiss.dbeaver.ext.mysql.model.session.MySQLSession
;
import
org.jkiss.dbeaver.ext.mysql.model.session.MySQLSessionManager
;
import
org.jkiss.dbeaver.model.admin.sessions.DBAServerSession
;
import
org.jkiss.dbeaver.model.admin.sessions.DBAServerSessionManager
;
...
...
@@ -64,7 +65,7 @@ public class MySQLSessionEditor extends AbstractSessionEditor
@Override
protected
SessionManagerViewer
createSessionViewer
(
DBCExecutionContext
executionContext
,
Composite
parent
)
{
return
new
SessionManagerViewer
(
this
,
parent
,
new
MySQLSessionManager
((
MySQLDataSource
)
executionContext
.
getDataSource
()))
{
return
new
SessionManagerViewer
<
MySQLSession
>
(
this
,
parent
,
new
MySQLSessionManager
((
MySQLDataSource
)
executionContext
.
getDataSource
()))
{
private
boolean
hideSleeping
;
@Override
...
...
plugins/org.jkiss.dbeaver.ext.oracle/src/org/jkiss/dbeaver/ext/oracle/editors/OracleSessionEditor.java
浏览文件 @
40cdac06
...
...
@@ -25,6 +25,7 @@ import org.eclipse.jface.dialogs.MessageDialog;
import
org.eclipse.osgi.util.NLS
;
import
org.eclipse.swt.widgets.Composite
;
import
org.jkiss.dbeaver.ext.oracle.OracleMessages
;
import
org.jkiss.dbeaver.ext.oracle.model.session.OracleServerSession
;
import
org.jkiss.dbeaver.ext.oracle.model.session.OracleServerSessionManager
;
import
org.jkiss.dbeaver.model.admin.sessions.DBAServerSession
;
import
org.jkiss.dbeaver.model.admin.sessions.DBAServerSessionManager
;
...
...
@@ -55,7 +56,7 @@ public class OracleSessionEditor extends AbstractSessionEditor
@Override
protected
SessionManagerViewer
createSessionViewer
(
DBCExecutionContext
executionContext
,
Composite
parent
)
{
return
new
SessionManagerViewer
(
this
,
parent
,
new
OracleServerSessionManager
(
getExecutionContext
()))
{
return
new
SessionManagerViewer
<
OracleServerSession
>
(
this
,
parent
,
new
OracleServerSessionManager
(
getExecutionContext
()))
{
@Override
protected
void
contributeToToolbar
(
DBAServerSessionManager
sessionManager
,
IContributionManager
contributionManager
)
{
...
...
@@ -76,7 +77,7 @@ public class OracleSessionEditor extends AbstractSessionEditor
private
class
DisconnectSessionAction
extends
Action
{
private
final
boolean
kill
;
public
DisconnectSessionAction
(
boolean
kill
)
DisconnectSessionAction
(
boolean
kill
)
{
super
(
kill
?
OracleMessages
.
editors_oracle_session_editor_title_kill_session
:
OracleMessages
.
editors_oracle_session_editor_title_disconnect_session
,
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/edit/PostgreSessionEditor.java
浏览文件 @
40cdac06
...
...
@@ -23,6 +23,7 @@ import org.eclipse.osgi.util.NLS;
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.ui.ISharedImages
;
import
org.jkiss.dbeaver.ext.postgresql.model.PostgreDataSource
;
import
org.jkiss.dbeaver.ext.postgresql.model.session.PostgreSession
;
import
org.jkiss.dbeaver.ext.postgresql.model.session.PostgreSessionManager
;
import
org.jkiss.dbeaver.model.admin.sessions.DBAServerSession
;
import
org.jkiss.dbeaver.model.admin.sessions.DBAServerSessionManager
;
...
...
@@ -47,7 +48,7 @@ public class PostgreSessionEditor extends AbstractSessionEditor
@Override
protected
SessionManagerViewer
createSessionViewer
(
DBCExecutionContext
executionContext
,
Composite
parent
)
{
return
new
SessionManagerViewer
(
this
,
parent
,
new
PostgreSessionManager
((
PostgreDataSource
)
executionContext
.
getDataSource
()))
{
return
new
SessionManagerViewer
<
PostgreSession
>
(
this
,
parent
,
new
PostgreSessionManager
((
PostgreDataSource
)
executionContext
.
getDataSource
()))
{
@Override
protected
void
contributeToToolbar
(
DBAServerSessionManager
sessionManager
,
IContributionManager
contributionManager
)
{
...
...
@@ -66,7 +67,7 @@ public class PostgreSessionEditor extends AbstractSessionEditor
private
class
KillSessionAction
extends
Action
{
public
KillSessionAction
()
KillSessionAction
()
{
super
(
"Terminate"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录