Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
31dbb5a4
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,发现更多精彩内容 >>
提交
31dbb5a4
编写于
6月 30, 2015
作者:
J
jurgen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Navigator model refactoring
上级
aea2d4db
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
40 addition
and
34 deletion
+40
-34
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/DBeaverCore.java
....dbeaver.core/src/org/jkiss/dbeaver/core/DBeaverCore.java
+1
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPApplication.java
...aver.core/src/org/jkiss/dbeaver/model/DBPApplication.java
+2
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPDriver.java
...s.dbeaver.core/src/org/jkiss/dbeaver/model/DBPDriver.java
+3
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNDataSource.java
.../src/org/jkiss/dbeaver/model/navigator/DBNDataSource.java
+3
-4
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNDatabaseNode.java
...rc/org/jkiss/dbeaver/model/navigator/DBNDatabaseNode.java
+4
-5
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNLocalFolder.java
...src/org/jkiss/dbeaver/model/navigator/DBNLocalFolder.java
+3
-3
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNProjectDatabases.java
...rg/jkiss/dbeaver/model/navigator/DBNProjectDatabases.java
+15
-19
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DriverDescriptor.java
...core/src/org/jkiss/dbeaver/registry/DriverDescriptor.java
+6
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/resources/bookmarks/BookmarksHandlerImpl.java
.../dbeaver/ui/resources/bookmarks/BookmarksHandlerImpl.java
+3
-3
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/DBeaverCore.java
浏览文件 @
31dbb5a4
...
...
@@ -291,6 +291,7 @@ public class DBeaverCore implements DBPApplication {
log
.
debug
(
"Shutdown completed in "
+
(
System
.
currentTimeMillis
()
-
startTime
)
+
"ms"
);
}
@Override
public
IWorkspace
getWorkspace
()
{
return
workspace
;
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPApplication.java
浏览文件 @
31dbb5a4
...
...
@@ -18,6 +18,7 @@
package
org.jkiss.dbeaver.model
;
import
org.eclipse.core.resources.IWorkspace
;
import
org.jkiss.code.NotNull
;
import
org.jkiss.dbeaver.model.navigator.DBNModel
;
...
...
@@ -29,5 +30,6 @@ public interface DBPApplication
@NotNull
DBNModel
getNavigatorModel
();
IWorkspace
getWorkspace
();
}
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPDriver.java
浏览文件 @
31dbb5a4
...
...
@@ -19,6 +19,7 @@
package
org.jkiss.dbeaver.model
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeNode
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
import
java.util.Collection
;
...
...
@@ -63,6 +64,8 @@ public interface DBPDriver extends DBPObject
boolean
isCustomDriverLoader
();
DBXTreeNode
getNavigatorRoot
();
Collection
<
DBPPropertyDescriptor
>
getConnectionPropertyDescriptors
();
Map
<
Object
,
Object
>
getDefaultConnectionProperties
();
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNDataSource.java
浏览文件 @
31dbb5a4
...
...
@@ -26,13 +26,12 @@ import org.jkiss.dbeaver.model.DBIcon;
import
org.jkiss.dbeaver.model.DBIconComposite
;
import
org.jkiss.dbeaver.model.DBPEvent
;
import
org.jkiss.dbeaver.model.DBPImage
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeNode
;
import
org.jkiss.dbeaver.model.net.DBWHandlerConfiguration
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressListener
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.struct.DBSDataSourceContainer
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.registry.DataSourceDescriptor
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeNode
;
import
org.jkiss.utils.CommonUtils
;
import
java.util.Collection
;
...
...
@@ -45,11 +44,11 @@ public class DBNDataSource extends DBNDatabaseNode implements IAdaptable
private
final
DBSDataSourceContainer
dataSource
;
private
DBXTreeNode
treeRoot
;
public
DBNDataSource
(
DBNNode
parentNode
,
DataSourceDescripto
r
dataSource
)
public
DBNDataSource
(
@NotNull
DBNNode
parentNode
,
@NotNull
DBSDataSourceContaine
r
dataSource
)
{
super
(
parentNode
);
this
.
dataSource
=
dataSource
;
this
.
treeRoot
=
dataSource
.
getDriver
().
get
ProviderDescriptor
().
getTreeDescriptor
();
this
.
treeRoot
=
dataSource
.
getDriver
().
get
NavigatorRoot
();
DBNModel
.
getInstance
().
addNode
(
this
,
false
);
}
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNDatabaseNode.java
浏览文件 @
31dbb5a4
...
...
@@ -23,14 +23,13 @@ import org.jkiss.dbeaver.DBException;
import
org.jkiss.dbeaver.core.CoreMessages
;
import
org.jkiss.dbeaver.model.*
;
import
org.jkiss.dbeaver.model.exec.DBCExecutionContext
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressListener
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.struct.*
;
import
org.jkiss.dbeaver.registry.DataSourceDescriptor
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeFolder
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeItem
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeNode
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeObject
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressListener
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.struct.*
;
import
org.jkiss.dbeaver.utils.GeneralUtils
;
import
org.jkiss.utils.BeanUtils
;
import
org.jkiss.utils.CommonUtils
;
...
...
@@ -498,7 +497,7 @@ public abstract class DBNDatabaseNode extends DBNNode implements DBSWrapper, DBP
public
DBSDataSourceContainer
getDataSourceContainer
()
{
DBPDataSource
dataSource
=
getDataSource
();
return
dataSource
==
null
?
null
:
(
DataSourceDescriptor
)
dataSource
.
getContainer
();
return
dataSource
==
null
?
null
:
dataSource
.
getContainer
();
}
public
DBPDataSource
getDataSource
()
{
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNLocalFolder.java
浏览文件 @
31dbb5a4
...
...
@@ -18,11 +18,11 @@
package
org.jkiss.dbeaver.model.navigator
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.model.DBIcon
;
import
org.jkiss.dbeaver.model.DBPImage
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.struct.DBSDataSourceContainer
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.registry.DataSourceDescriptor
;
import
org.jkiss.dbeaver.model.DBIcon
;
import
org.jkiss.utils.CommonUtils
;
import
java.util.ArrayList
;
...
...
@@ -117,7 +117,7 @@ public class DBNLocalFolder extends DBNNode implements DBNContainer
@Override
public
Class
<?
extends
DBSObject
>
getChildrenClass
()
{
return
D
ataSourceDescripto
r
.
class
;
return
D
BSDataSourceContaine
r
.
class
;
}
@Override
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/navigator/DBNProjectDatabases.java
浏览文件 @
31dbb5a4
...
...
@@ -20,14 +20,10 @@ package org.jkiss.dbeaver.model.navigator;
import
org.jkiss.dbeaver.core.CoreMessages
;
import
org.jkiss.dbeaver.core.DBeaverCore
;
import
org.jkiss.dbeaver.core.DBeaverUI
;
import
org.jkiss.dbeaver.model.DBIcon
;
import
org.jkiss.dbeaver.model.DBPEvent
;
import
org.jkiss.dbeaver.model.DBPEventListener
;
import
org.jkiss.dbeaver.model.DBPImage
;
import
org.jkiss.dbeaver.model.*
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableWithProgress
;
import
org.jkiss.dbeaver.registry.DataSourceDescriptor
;
import
org.jkiss.dbeaver.registry.DataSourceRegistry
;
import
org.jkiss.dbeaver.model.struct.DBSDataSourceContainer
;
import
org.jkiss.utils.CommonUtils
;
import
java.lang.reflect.InvocationTargetException
;
...
...
@@ -39,18 +35,18 @@ import java.util.*;
public
class
DBNProjectDatabases
extends
DBNNode
implements
DBNContainer
,
DBPEventListener
{
private
List
<
DBNDataSource
>
dataSources
=
new
ArrayList
<
DBNDataSource
>();
private
DataSourceRegistry
dataSourceRegistry
;
private
D
BPD
ataSourceRegistry
dataSourceRegistry
;
private
volatile
List
<
DBNNode
>
children
;
private
final
List
<
DBNLocalFolder
>
folders
=
new
ArrayList
<
DBNLocalFolder
>();
public
DBNProjectDatabases
(
DBNProject
parentNode
,
DataSourceRegistry
dataSourceRegistry
)
public
DBNProjectDatabases
(
DBNProject
parentNode
,
D
BPD
ataSourceRegistry
dataSourceRegistry
)
{
super
(
parentNode
);
this
.
dataSourceRegistry
=
dataSourceRegistry
;
this
.
dataSourceRegistry
.
addDataSourceListener
(
this
);
List
<
DataSourceDescripto
r
>
projectDataSources
=
this
.
dataSourceRegistry
.
getDataSources
();
for
(
D
ataSourceDescripto
r
ds
:
projectDataSources
)
{
List
<
?
extends
DBSDataSourceContaine
r
>
projectDataSources
=
this
.
dataSourceRegistry
.
getDataSources
();
for
(
D
BSDataSourceContaine
r
ds
:
projectDataSources
)
{
addDataSource
(
ds
,
false
);
}
}
...
...
@@ -77,7 +73,7 @@ public class DBNProjectDatabases extends DBNNode implements DBNContainer, DBPEve
return
"connections"
;
}
public
DataSourceRegistry
getDataSourceRegistry
()
public
D
BPD
ataSourceRegistry
getDataSourceRegistry
()
{
return
dataSourceRegistry
;
}
...
...
@@ -95,9 +91,9 @@ public class DBNProjectDatabases extends DBNNode implements DBNContainer, DBPEve
}
@Override
public
Class
<
D
ataSourceDescripto
r
>
getChildrenClass
()
public
Class
<
D
BSDataSourceContaine
r
>
getChildrenClass
()
{
return
D
ataSourceDescripto
r
.
class
;
return
D
BSDataSourceContaine
r
.
class
;
}
@Override
...
...
@@ -200,7 +196,7 @@ public class DBNProjectDatabases extends DBNNode implements DBNContainer, DBPEve
return
null
;
}
private
DBNDataSource
addDataSource
(
D
ataSourceDescripto
r
descriptor
,
boolean
reflect
)
private
DBNDataSource
addDataSource
(
D
BSDataSourceContaine
r
descriptor
,
boolean
reflect
)
{
DBNDataSource
newNode
=
new
DBNDataSource
(
this
,
descriptor
);
dataSources
.
add
(
newNode
);
...
...
@@ -211,7 +207,7 @@ public class DBNProjectDatabases extends DBNNode implements DBNContainer, DBPEve
return
newNode
;
}
void
removeDataSource
(
D
ataSourceDescripto
r
descriptor
)
void
removeDataSource
(
D
BSDataSourceContaine
r
descriptor
)
{
DBNDataSource
removedNode
=
null
;
for
(
Iterator
<
DBNDataSource
>
iter
=
dataSources
.
iterator
();
iter
.
hasNext
();
)
{
...
...
@@ -233,8 +229,8 @@ public class DBNProjectDatabases extends DBNNode implements DBNContainer, DBPEve
{
switch
(
event
.
getAction
())
{
case
OBJECT_ADD:
if
(
event
.
getObject
()
instanceof
D
ataSourceDescripto
r
)
{
addDataSource
((
D
ataSourceDescripto
r
)
event
.
getObject
(),
true
);
if
(
event
.
getObject
()
instanceof
D
BSDataSourceContaine
r
)
{
addDataSource
((
D
BSDataSourceContaine
r
)
event
.
getObject
(),
true
);
}
else
if
(
DBNModel
.
getInstance
().
getNodeByObject
(
event
.
getObject
())
==
null
)
{
final
DBNDatabaseNode
parentNode
=
DBNModel
.
getInstance
().
getParentNode
(
event
.
getObject
());
...
...
@@ -266,8 +262,8 @@ public class DBNProjectDatabases extends DBNNode implements DBNContainer, DBPEve
}
break
;
case
OBJECT_REMOVE:
if
(
event
.
getObject
()
instanceof
D
ataSourceDescripto
r
)
{
removeDataSource
((
D
ataSourceDescripto
r
)
event
.
getObject
());
if
(
event
.
getObject
()
instanceof
D
BSDataSourceContaine
r
)
{
removeDataSource
((
D
BSDataSourceContaine
r
)
event
.
getObject
());
}
else
{
final
DBNDatabaseNode
node
=
DBNModel
.
getInstance
().
getNodeByObject
(
event
.
getObject
());
if
(
node
!=
null
&&
node
.
getParentNode
()
instanceof
DBNDatabaseNode
)
{
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DriverDescriptor.java
浏览文件 @
31dbb5a4
...
...
@@ -35,6 +35,7 @@ import org.jkiss.dbeaver.core.Log;
import
org.jkiss.dbeaver.model.*
;
import
org.jkiss.dbeaver.model.impl.AbstractDescriptor
;
import
org.jkiss.dbeaver.model.meta.Property
;
import
org.jkiss.dbeaver.model.navigator.meta.DBXTreeNode
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableContext
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableWithProgress
;
...
...
@@ -573,6 +574,11 @@ public class DriverDescriptor extends AbstractDescriptor implements DBPDriver
return
customDriverLoader
;
}
@Override
public
DBXTreeNode
getNavigatorRoot
()
{
return
providerDescriptor
.
getTreeDescriptor
();
}
public
void
setCustomDriverLoader
(
boolean
customDriverLoader
)
{
this
.
customDriverLoader
=
customDriverLoader
;
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/resources/bookmarks/BookmarksHandlerImpl.java
浏览文件 @
31dbb5a4
...
...
@@ -28,14 +28,14 @@ import org.jkiss.dbeaver.DBException;
import
org.jkiss.dbeaver.core.CoreMessages
;
import
org.jkiss.dbeaver.core.DBeaverCore
;
import
org.jkiss.dbeaver.core.DBeaverUI
;
import
org.jkiss.dbeaver.ui.resources.AbstractResourceHandler
;
import
org.jkiss.dbeaver.model.navigator.*
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressListener
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.runtime.DBRRunnableWithProgress
;
import
org.jkiss.dbeaver.
registry.DataSourceDescripto
r
;
import
org.jkiss.dbeaver.
model.struct.DBSDataSourceContaine
r
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.ui.actions.navigator.NavigatorHandlerObjectOpen
;
import
org.jkiss.dbeaver.ui.resources.AbstractResourceHandler
;
import
org.jkiss.dbeaver.utils.ContentUtils
;
import
org.jkiss.utils.CommonUtils
;
...
...
@@ -102,7 +102,7 @@ public class BookmarksHandlerImpl extends AbstractResourceHandler {
}
final
BookmarkStorage
storage
=
new
BookmarkStorage
((
IFile
)
resource
,
false
);
try
{
final
D
ataSourceDescripto
r
dataSourceContainer
=
projectNode
.
getDatabases
().
getDataSourceRegistry
().
getDataSource
(
storage
.
getDataSourceId
());
final
D
BSDataSourceContaine
r
dataSourceContainer
=
projectNode
.
getDatabases
().
getDataSourceRegistry
().
getDataSource
(
storage
.
getDataSourceId
());
if
(
dataSourceContainer
==
null
)
{
throw
new
DBException
(
"Can't find datasource '"
+
storage
.
getDataSourceId
()
+
"'"
);
//$NON-NLS-2$
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录