Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
22f3d2e4
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,发现更多精彩内容 >>
提交
22f3d2e4
编写于
6月 06, 2015
作者:
J
jurgen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Preference store model
上级
15c38a50
变更
17
隐藏空白更改
内联
并排
Showing
17 changed file
with
744 addition
and
467 deletion
+744
-467
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPPreferenceListener.java
...re/src/org/jkiss/dbeaver/model/DBPPreferenceListener.java
+35
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPPreferenceStore.java
....core/src/org/jkiss/dbeaver/model/DBPPreferenceStore.java
+43
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataFormatterProfile.java
.../src/org/jkiss/dbeaver/registry/DataFormatterProfile.java
+4
-4
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataFormatterRegistry.java
...src/org/jkiss/dbeaver/registry/DataFormatterRegistry.java
+4
-4
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourceDescriptor.java
.../src/org/jkiss/dbeaver/registry/DataSourceDescriptor.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourcePreferenceStore.java
...org/jkiss/dbeaver/registry/DataSourcePreferenceStore.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourceRegistry.java
...re/src/org/jkiss/dbeaver/registry/DataSourceRegistry.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/templates/SQLTemplateStore.java
...ss/dbeaver/ui/editors/sql/templates/SQLTemplateStore.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDataEditor.java
.../org/jkiss/dbeaver/ui/preferences/PrefPageDataEditor.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageMetaData.java
...rc/org/jkiss/dbeaver/ui/preferences/PrefPageMetaData.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageResultSet.java
...c/org/jkiss/dbeaver/ui/preferences/PrefPageResultSet.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageSQLEditor.java
...c/org/jkiss/dbeaver/ui/preferences/PrefPageSQLEditor.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageSQLExecute.java
.../org/jkiss/dbeaver/ui/preferences/PrefPageSQLExecute.java
+2
-2
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/utils/AbstractPreferenceStore.java
.../src/org/jkiss/dbeaver/utils/AbstractPreferenceStore.java
+54
-439
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/utils/GlobalPreferenceStore.java
...re/src/org/jkiss/dbeaver/utils/GlobalPreferenceStore.java
+145
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/utils/SimplePreferenceStore.java
...re/src/org/jkiss/dbeaver/utils/SimplePreferenceStore.java
+439
-0
plugins/org.jkiss.dbeaver.oracle/src/org/jkiss/dbeaver/ext/oracle/views/PrefPageOracle.java
...rc/org/jkiss/dbeaver/ext/oracle/views/PrefPageOracle.java
+2
-2
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPPreferenceListener.java
0 → 100644
浏览文件 @
22f3d2e4
package
org.jkiss.dbeaver.model
;
import
java.util.EventListener
;
import
java.util.EventObject
;
public
interface
DBPPreferenceListener
extends
EventListener
{
class
PropertyChangeEvent
extends
EventObject
{
private
String
propertyName
;
private
Object
oldValue
;
private
Object
newValue
;
public
PropertyChangeEvent
(
Object
source
,
String
property
,
Object
oldValue
,
Object
newValue
)
{
super
(
source
);
this
.
propertyName
=
property
;
this
.
oldValue
=
oldValue
;
this
.
newValue
=
newValue
;
}
public
String
getProperty
()
{
return
propertyName
;
}
public
Object
getNewValue
()
{
return
newValue
;
}
public
Object
getOldValue
()
{
return
oldValue
;
}
}
void
propertyChange
(
PropertyChangeEvent
event
);
}
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/model/DBPPreferenceStore.java
0 → 100644
浏览文件 @
22f3d2e4
package
org.jkiss.dbeaver.model
;
public
interface
DBPPreferenceStore
{
boolean
contains
(
String
name
);
boolean
getBoolean
(
String
name
);
double
getDouble
(
String
name
);
float
getFloat
(
String
name
);
int
getInt
(
String
name
);
long
getLong
(
String
name
);
String
getString
(
String
name
);
boolean
getDefaultBoolean
(
String
name
);
double
getDefaultDouble
(
String
name
);
float
getDefaultFloat
(
String
name
);
int
getDefaultInt
(
String
name
);
long
getDefaultLong
(
String
name
);
String
getDefaultString
(
String
name
);
boolean
isDefault
(
String
name
);
boolean
needsSaving
();
void
setDefault
(
String
name
,
double
value
);
void
setDefault
(
String
name
,
float
value
);
void
setDefault
(
String
name
,
int
value
);
void
setDefault
(
String
name
,
long
value
);
void
setDefault
(
String
name
,
String
defaultObject
);
void
setDefault
(
String
name
,
boolean
value
);
void
setToDefault
(
String
name
);
void
setValue
(
String
name
,
double
value
);
void
setValue
(
String
name
,
float
value
);
void
setValue
(
String
name
,
int
value
);
void
setValue
(
String
name
,
long
value
);
void
setValue
(
String
name
,
String
value
);
void
setValue
(
String
name
,
boolean
value
);
void
addPropertyChangeListener
(
DBPPreferenceListener
listener
);
void
removePropertyChangeListener
(
DBPPreferenceListener
listener
);
}
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataFormatterProfile.java
浏览文件 @
22f3d2e4
...
...
@@ -22,7 +22,7 @@ import org.jkiss.dbeaver.model.data.DBDDataFormatter;
import
org.jkiss.dbeaver.model.data.DBDDataFormatterProfile
;
import
org.jkiss.dbeaver.runtime.RuntimeUtils
;
import
org.jkiss.dbeaver.ui.properties.PropertyDescriptorEx
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.utils.CommonUtils
;
import
java.io.IOException
;
...
...
@@ -152,8 +152,8 @@ public class DataFormatterProfile implements DBDDataFormatterProfile {
@Override
public
boolean
isOverridesParent
()
{
if
(
store
instanceof
Abstract
PreferenceStore
)
{
AbstractPreferenceStore
prefStore
=
(
Abstract
PreferenceStore
)
store
;
if
(
store
instanceof
Simple
PreferenceStore
)
{
SimplePreferenceStore
prefStore
=
(
Simple
PreferenceStore
)
store
;
if
(
prefStore
.
isSet
(
PROP_LANGUAGE
)
||
prefStore
.
isSet
(
PROP_COUNTRY
)
||
prefStore
.
isSet
(
PROP_VARIANT
))
{
return
true
;
...
...
@@ -175,7 +175,7 @@ public class DataFormatterProfile implements DBDDataFormatterProfile {
@Override
public
void
reset
()
{
if
(
store
instanceof
Abstract
PreferenceStore
)
{
if
(
store
instanceof
Simple
PreferenceStore
)
{
// Set all formatter properties to default
store
.
setToDefault
(
PROP_LANGUAGE
);
store
.
setToDefault
(
PROP_COUNTRY
);
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataFormatterRegistry.java
浏览文件 @
22f3d2e4
...
...
@@ -25,7 +25,7 @@ import org.jkiss.code.Nullable;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.core.DBeaverCore
;
import
org.jkiss.dbeaver.model.data.DBDDataFormatterProfile
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.dbeaver.utils.GeneralUtils
;
import
org.jkiss.utils.CommonUtils
;
import
org.jkiss.utils.xml.SAXListener
;
...
...
@@ -173,7 +173,7 @@ public class DataFormatterRegistry
for
(
DBDDataFormatterProfile
profile
:
customProfiles
)
{
xml
.
startElement
(
RegistryConstants
.
TAG_PROFILE
);
xml
.
addAttribute
(
RegistryConstants
.
ATTR_NAME
,
profile
.
getProfileName
());
AbstractPreferenceStore
store
=
(
Abstract
PreferenceStore
)
profile
.
getPreferenceStore
();
SimplePreferenceStore
store
=
(
Simple
PreferenceStore
)
profile
.
getPreferenceStore
();
Map
<
String
,
String
>
props
=
store
.
getProperties
();
if
(
props
!=
null
)
{
for
(
Map
.
Entry
<
String
,
String
>
entry
:
props
.
entrySet
())
{
...
...
@@ -214,7 +214,7 @@ public class DataFormatterRegistry
}
}
private
class
CustomProfileStore
extends
Abstract
PreferenceStore
{
private
class
CustomProfileStore
extends
Simple
PreferenceStore
{
private
CustomProfileStore
()
{
super
(
DBeaverCore
.
getGlobalPreferenceStore
());
...
...
@@ -230,7 +230,7 @@ public class DataFormatterRegistry
private
class
FormattersParser
implements
SAXListener
{
private
String
profileName
;
private
Abstract
PreferenceStore
curStore
;
private
Simple
PreferenceStore
curStore
;
@Override
public
void
saxStartElement
(
SAXReader
reader
,
String
namespaceURI
,
String
localName
,
Attributes
atts
)
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourceDescriptor.java
浏览文件 @
22f3d2e4
...
...
@@ -57,7 +57,7 @@ import org.jkiss.dbeaver.ui.dialogs.ConfirmationDialog;
import
org.jkiss.dbeaver.ui.dialogs.connection.EditConnectionDialog
;
import
org.jkiss.dbeaver.ui.dialogs.connection.EditConnectionWizard
;
import
org.jkiss.dbeaver.ui.properties.PropertyCollector
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.utils.CommonUtils
;
import
java.lang.reflect.InvocationTargetException
;
...
...
@@ -997,7 +997,7 @@ public class DataSourceDescriptor
}
@Override
public
Abstract
PreferenceStore
getPreferenceStore
()
public
Simple
PreferenceStore
getPreferenceStore
()
{
return
preferenceStore
;
}
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourcePreferenceStore.java
浏览文件 @
22f3d2e4
...
...
@@ -19,7 +19,7 @@ package org.jkiss.dbeaver.registry;
import
org.jkiss.dbeaver.core.DBeaverCore
;
import
org.jkiss.dbeaver.model.DBConstants
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.utils.CommonUtils
;
import
java.io.IOException
;
...
...
@@ -28,7 +28,7 @@ import java.util.Map;
/**
* DataSourcePreferenceStore
*/
public
class
DataSourcePreferenceStore
extends
Abstract
PreferenceStore
public
class
DataSourcePreferenceStore
extends
Simple
PreferenceStore
{
private
final
DataSourceDescriptor
dataSourceDescriptor
;
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourceRegistry.java
浏览文件 @
22f3d2e4
...
...
@@ -40,7 +40,7 @@ import org.jkiss.dbeaver.registry.encode.PasswordEncrypter;
import
org.jkiss.dbeaver.registry.encode.SimpleStringEncrypter
;
import
org.jkiss.dbeaver.runtime.RuntimeUtils
;
import
org.jkiss.dbeaver.runtime.VoidProgressMonitor
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.dbeaver.utils.ContentUtils
;
import
org.jkiss.dbeaver.utils.GeneralUtils
;
import
org.jkiss.utils.CommonUtils
;
...
...
@@ -494,7 +494,7 @@ public class DataSourceRegistry implements DBPDataSourceRegistry
// Preferences
{
// Save only properties who are differs from default values
Abstract
PreferenceStore
prefStore
=
dataSource
.
getPreferenceStore
();
Simple
PreferenceStore
prefStore
=
dataSource
.
getPreferenceStore
();
for
(
String
propName
:
prefStore
.
preferenceNames
())
{
String
propValue
=
prefStore
.
getString
(
propName
);
String
defValue
=
prefStore
.
getDefaultString
(
propName
);
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/templates/SQLTemplateStore.java
浏览文件 @
22f3d2e4
...
...
@@ -25,7 +25,7 @@ import org.jkiss.dbeaver.core.DBeaverCore;
import
org.jkiss.dbeaver.core.Log
;
import
org.jkiss.dbeaver.registry.DataSourceProviderDescriptor
;
import
org.jkiss.dbeaver.registry.DataSourceProviderRegistry
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.dbeaver.utils.ContentUtils
;
import
org.jkiss.utils.CommonUtils
;
import
org.osgi.framework.Bundle
;
...
...
@@ -181,7 +181,7 @@ public class SQLTemplateStore extends TemplateStore {
log
.
error
(
x
);
}
private
static
class
CustomTemplatesStore
extends
Abstract
PreferenceStore
{
private
static
class
CustomTemplatesStore
extends
Simple
PreferenceStore
{
private
CustomTemplatesStore
()
{
super
(
DBeaverCore
.
getGlobalPreferenceStore
());
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDataEditor.java
浏览文件 @
22f3d2e4
...
...
@@ -27,7 +27,7 @@ import org.jkiss.dbeaver.core.CoreMessages;
import
org.jkiss.dbeaver.registry.DataSourceDescriptor
;
import
org.jkiss.dbeaver.runtime.RuntimeUtils
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
/**
* PrefPageDataEditor
...
...
@@ -51,7 +51,7 @@ public class PrefPageDataEditor extends TargetPrefPage
@Override
protected
boolean
hasDataSourceSpecificOptions
(
DataSourceDescriptor
dataSourceDescriptor
)
{
Abstract
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
Simple
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
return
store
.
contains
(
DBeaverPreferences
.
RS_EDIT_USE_ALL_COLUMNS
)
||
store
.
contains
(
DBeaverPreferences
.
RS_EDIT_MAX_TEXT_SIZE
)
||
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageMetaData.java
浏览文件 @
22f3d2e4
...
...
@@ -29,7 +29,7 @@ import org.jkiss.dbeaver.core.CoreMessages;
import
org.jkiss.dbeaver.registry.DataSourceDescriptor
;
import
org.jkiss.dbeaver.runtime.RuntimeUtils
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
/**
* PrefPageMetaData
...
...
@@ -50,7 +50,7 @@ public class PrefPageMetaData extends TargetPrefPage
@Override
protected
boolean
hasDataSourceSpecificOptions
(
DataSourceDescriptor
dataSourceDescriptor
)
{
Abstract
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
Simple
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
return
store
.
contains
(
DBeaverPreferences
.
READ_EXPENSIVE_PROPERTIES
)
||
store
.
contains
(
DBeaverPreferences
.
META_SEPARATE_CONNECTION
)
||
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageResultSet.java
浏览文件 @
22f3d2e4
...
...
@@ -32,7 +32,7 @@ import org.jkiss.dbeaver.registry.DataSourceDescriptor;
import
org.jkiss.dbeaver.runtime.RuntimeUtils
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.ui.controls.resultset.spreadsheet.Spreadsheet
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.utils.CommonUtils
;
/**
...
...
@@ -70,7 +70,7 @@ public class PrefPageResultSet extends TargetPrefPage
@Override
protected
boolean
hasDataSourceSpecificOptions
(
DataSourceDescriptor
dataSourceDescriptor
)
{
Abstract
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
Simple
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
return
store
.
contains
(
DBeaverPreferences
.
RESULT_SET_AUTO_FETCH_NEXT_SEGMENT
)
||
store
.
contains
(
DBeaverPreferences
.
RESULT_SET_MAX_ROWS
)
||
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageSQLEditor.java
浏览文件 @
22f3d2e4
...
...
@@ -34,7 +34,7 @@ import org.jkiss.dbeaver.runtime.RuntimeUtils;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.ui.editors.sql.SQLEditorInput
;
import
org.jkiss.dbeaver.ui.editors.sql.SQLPreferenceConstants
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
java.util.HashMap
;
import
java.util.Map
;
...
...
@@ -67,7 +67,7 @@ public class PrefPageSQLEditor extends TargetPrefPage
@Override
protected
boolean
hasDataSourceSpecificOptions
(
DataSourceDescriptor
dataSourceDescriptor
)
{
Abstract
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
Simple
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
return
store
.
contains
(
DBeaverPreferences
.
EDITOR_SEPARATE_CONNECTION
)
||
store
.
contains
(
DBeaverPreferences
.
SCRIPT_AUTO_FOLDERS
)
||
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageSQLExecute.java
浏览文件 @
22f3d2e4
...
...
@@ -29,7 +29,7 @@ import org.jkiss.dbeaver.runtime.RuntimeUtils;
import
org.jkiss.dbeaver.runtime.sql.SQLScriptCommitType
;
import
org.jkiss.dbeaver.runtime.sql.SQLScriptErrorHandling
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
import
org.jkiss.utils.CommonUtils
;
/**
...
...
@@ -58,7 +58,7 @@ public class PrefPageSQLExecute extends TargetPrefPage
@Override
protected
boolean
hasDataSourceSpecificOptions
(
DataSourceDescriptor
dataSourceDescriptor
)
{
Abstract
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
Simple
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
return
store
.
contains
(
DBeaverPreferences
.
STATEMENT_INVALIDATE_BEFORE_EXECUTE
)
||
store
.
contains
(
DBeaverPreferences
.
STATEMENT_TIMEOUT
)
||
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/utils/AbstractPreferenceStore.java
浏览文件 @
22f3d2e4
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2015 Serge Rieder (serge@jkiss.org)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License (version 2)
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
package
org.jkiss.dbeaver.utils
;
import
org.eclipse.core.commands.common.EventManager
;
import
org.eclipse.jface.preference.IPersistentPreferenceStore
;
import
org.eclipse.jface.preference.IPreferenceStore
;
import
org.eclipse.jface.resource.JFaceResources
;
import
org.eclipse.jface.util.IPropertyChangeListener
;
import
org.eclipse.jface.util.PropertyChangeEvent
;
import
org.eclipse.jface.util.SafeRunnable
;
import
org.jkiss.utils.CommonUtils
;
import
java.io.IOException
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* Preference store which can be stored/loaded in any way.
* Also it can use parent store to obtain values from it if this store do not contain the key.
* However, save will always use THIS store, not parent.
* Originally copied from standard PreferenceStore class
*/
public
abstract
class
AbstractPreferenceStore
extends
EventManager
implements
IPersistentPreferenceStore
,
IPropertyChangeListener
{
private
IPreferenceStore
parentStore
;
private
Map
<
String
,
String
>
properties
;
private
Map
<
String
,
String
>
defaultProperties
;
private
boolean
dirty
=
false
;
public
AbstractPreferenceStore
()
{
defaultProperties
=
new
HashMap
<
String
,
String
>();
properties
=
new
HashMap
<
String
,
String
>();
}
protected
AbstractPreferenceStore
(
IPreferenceStore
parentStore
)
{
this
();
this
.
parentStore
=
parentStore
;
if
(
parentStore
!=
null
)
{
parentStore
.
addPropertyChangeListener
(
this
);
}
}
public
IPreferenceStore
getParentStore
()
{
return
parentStore
;
}
public
Map
<
String
,
String
>
getProperties
()
{
return
properties
;
}
public
void
setProperties
(
Map
<
String
,
String
>
properties
)
{
this
.
properties
=
properties
;
}
public
Map
<
String
,
String
>
getDefaultProperties
()
{
return
defaultProperties
;
}
public
void
setDefaultProperties
(
Map
<
String
,
String
>
defaultProperties
)
{
this
.
defaultProperties
=
defaultProperties
;
}
public
void
clear
()
{
properties
.
clear
();
}
@Override
public
void
addPropertyChangeListener
(
IPropertyChangeListener
listener
)
{
addListenerObject
(
listener
);
}
@Override
public
boolean
contains
(
String
name
)
{
return
(
properties
.
containsKey
(
name
)
||
defaultProperties
.
containsKey
(
name
));
}
@Override
public
void
firePropertyChangeEvent
(
String
name
,
Object
oldValue
,
Object
newValue
)
{
final
Object
[]
finalListeners
=
getListeners
();
// Do we need to fire an event.
if
(
finalListeners
.
length
>
0
&&
(
oldValue
==
null
||
!
oldValue
.
equals
(
newValue
)))
{
final
PropertyChangeEvent
pe
=
new
PropertyChangeEvent
(
this
,
name
,
oldValue
,
newValue
);
for
(
int
i
=
0
;
i
<
finalListeners
.
length
;
++
i
)
{
final
IPropertyChangeListener
l
=
(
IPropertyChangeListener
)
finalListeners
[
i
];
SafeRunnable
.
run
(
new
SafeRunnable
(
JFaceResources
.
getString
(
"PreferenceStore.changeError"
))
//$NON-NLS-1$
{
@Override
public
void
run
()
{
l
.
propertyChange
(
pe
);
}
});
}
}
}
@Override
public
boolean
getBoolean
(
String
name
)
{
return
toBoolean
(
getString
(
name
));
}
@Override
public
boolean
getDefaultBoolean
(
String
name
)
{
return
toBoolean
(
getDefaultString
(
name
));
}
private
boolean
toBoolean
(
String
value
)
{
return
value
!=
null
&&
value
.
equals
(
IPreferenceStore
.
TRUE
);
}
@Override
public
double
getDouble
(
String
name
)
{
return
toDouble
(
getString
(
name
));
}
@Override
public
double
getDefaultDouble
(
String
name
)
{
return
toDouble
(
getDefaultString
(
name
));
}
private
double
toDouble
(
String
value
)
{
double
ival
=
DOUBLE_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Double
.
parseDouble
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
float
getFloat
(
String
name
)
{
return
toFloat
(
getString
(
name
));
}
@Override
public
float
getDefaultFloat
(
String
name
)
{
return
toFloat
(
getDefaultString
(
name
));
}
private
float
toFloat
(
String
value
)
{
float
ival
=
FLOAT_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Float
.
parseFloat
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
int
getInt
(
String
name
)
{
return
toInt
(
getString
(
name
));
}
@Override
public
int
getDefaultInt
(
String
name
)
{
return
toInt
(
getDefaultString
(
name
));
}
private
int
toInt
(
String
value
)
{
int
ival
=
INT_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Integer
.
parseInt
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
long
getLong
(
String
name
)
{
return
toLong
(
getString
(
name
));
}
@Override
public
long
getDefaultLong
(
String
name
)
{
return
toLong
(
getDefaultString
(
name
));
}
private
long
toLong
(
String
value
)
{
long
ival
=
LONG_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Long
.
parseLong
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
String
getString
(
String
name
)
{
String
value
=
properties
.
get
(
name
);
if
(
value
==
null
)
{
if
(
parentStore
.
isDefault
(
name
))
{
value
=
defaultProperties
.
get
(
name
);
}
if
(
value
==
null
)
{
value
=
parentStore
.
getString
(
name
);
}
}
return
value
;
}
@Override
public
String
getDefaultString
(
String
name
)
{
String
value
=
defaultProperties
.
get
(
name
);
if
(
value
==
null
)
{
if
(
parentStore
.
isDefault
(
name
))
{
return
parentStore
.
getDefaultString
(
name
);
}
else
{
return
""
;
}
}
return
value
;
}
@Override
public
boolean
isDefault
(
String
name
)
{
return
(!
properties
.
containsKey
(
name
)
&&
(
defaultProperties
.
containsKey
(
name
)
||
parentStore
.
isDefault
(
name
)));
}
public
boolean
isSet
(
String
name
)
{
return
properties
.
containsKey
(
name
);
}
@Override
public
boolean
needsSaving
()
{
return
dirty
;
}
public
String
[]
preferenceNames
()
{
return
properties
.
keySet
().
toArray
(
new
String
[
properties
.
size
()]);
}
@Override
public
void
putValue
(
String
name
,
String
value
)
{
String
oldValue
=
getString
(
name
);
if
(
oldValue
==
null
||
!
oldValue
.
equals
(
value
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
}
}
@Override
public
void
removePropertyChangeListener
(
IPropertyChangeListener
listener
)
{
removeListenerObject
(
listener
);
}
@Override
public
void
setDefault
(
String
name
,
double
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
float
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
int
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
long
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
String
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
boolean
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setToDefault
(
String
name
)
{
Object
oldValue
=
properties
.
get
(
name
);
properties
.
remove
(
name
);
dirty
=
true
;
Object
newValue
=
null
;
if
(
defaultProperties
!=
null
)
{
newValue
=
defaultProperties
.
get
(
name
);
}
firePropertyChangeEvent
(
name
,
oldValue
,
newValue
);
}
@Override
public
void
setValue
(
String
name
,
double
value
)
{
double
oldValue
=
getDouble
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
float
value
)
{
float
oldValue
=
getFloat
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
int
value
)
{
int
oldValue
=
getInt
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
long
value
)
{
long
oldValue
=
getLong
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
String
value
)
{
String
oldValue
=
getString
(
name
);
if
(
oldValue
==
null
||
!
oldValue
.
equals
(
value
)
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
value
);
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
boolean
value
)
{
boolean
oldValue
=
getBoolean
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
?
Boolean
.
TRUE
:
Boolean
.
FALSE
,
value
?
Boolean
.
TRUE
:
Boolean
.
FALSE
);
}
}
@Override
public
void
save
()
throws
IOException
{
}
@Override
public
void
propertyChange
(
PropertyChangeEvent
event
)
{
for
(
Object
listener
:
getListeners
())
{
((
IPropertyChangeListener
)
listener
).
propertyChange
(
event
);
}
}
}
package
org.jkiss.dbeaver.utils
;
import
org.eclipse.core.commands.common.EventManager
;
import
org.eclipse.jface.resource.JFaceResources
;
import
org.eclipse.jface.util.IPropertyChangeListener
;
import
org.eclipse.jface.util.PropertyChangeEvent
;
import
org.eclipse.jface.util.SafeRunnable
;
import
org.jkiss.dbeaver.model.DBPPreferenceListener
;
import
org.jkiss.dbeaver.model.DBPPreferenceStore
;
public
abstract
class
AbstractPreferenceStore
extends
EventManager
implements
DBPPreferenceStore
{
public
static
final
boolean
BOOLEAN_DEFAULT_DEFAULT
=
false
;
public
static
final
double
DOUBLE_DEFAULT_DEFAULT
=
0.0
;
public
static
final
float
FLOAT_DEFAULT_DEFAULT
=
0.0f
;
public
static
final
int
INT_DEFAULT_DEFAULT
=
0
;
public
static
final
long
LONG_DEFAULT_DEFAULT
=
0L
;
public
static
final
String
STRING_DEFAULT_DEFAULT
=
""
;
//$NON-NLS-1$
public
static
final
String
TRUE
=
"true"
;
//$NON-NLS-1$
public
static
final
String
FALSE
=
"false"
;
//$NON-NLS-1$
public
void
firePropertyChangeEvent
(
String
name
,
Object
oldValue
,
Object
newValue
)
{
final
Object
[]
finalListeners
=
getListeners
();
// Do we need to fire an event.
if
(
finalListeners
.
length
>
0
&&
(
oldValue
==
null
||
!
oldValue
.
equals
(
newValue
)))
{
final
PropertyChangeEvent
pe
=
new
PropertyChangeEvent
(
this
,
name
,
oldValue
,
newValue
);
for
(
int
i
=
0
;
i
<
finalListeners
.
length
;
++
i
)
{
final
IPropertyChangeListener
l
=
(
IPropertyChangeListener
)
finalListeners
[
i
];
SafeRunnable
.
run
(
new
SafeRunnable
(
JFaceResources
.
getString
(
"PreferenceStore.changeError"
))
//$NON-NLS-1$
{
@Override
public
void
run
()
{
l
.
propertyChange
(
pe
);
}
});
}
}
}
@Override
public
void
addPropertyChangeListener
(
DBPPreferenceListener
listener
)
{
addListenerObject
(
listener
);
}
@Override
public
void
removePropertyChangeListener
(
DBPPreferenceListener
listener
)
{
removeListenerObject
(
listener
);
}
}
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/utils/GlobalPreferenceStore.java
0 → 100644
浏览文件 @
22f3d2e4
package
org.jkiss.dbeaver.utils
;
public
class
GlobalPreferenceStore
extends
AbstractPreferenceStore
{
@Override
public
boolean
contains
(
String
name
)
{
return
false
;
}
@Override
public
boolean
getBoolean
(
String
name
)
{
return
false
;
}
@Override
public
double
getDouble
(
String
name
)
{
return
0
;
}
@Override
public
float
getFloat
(
String
name
)
{
return
0
;
}
@Override
public
int
getInt
(
String
name
)
{
return
0
;
}
@Override
public
long
getLong
(
String
name
)
{
return
0
;
}
@Override
public
String
getString
(
String
name
)
{
return
null
;
}
@Override
public
boolean
getDefaultBoolean
(
String
name
)
{
return
false
;
}
@Override
public
double
getDefaultDouble
(
String
name
)
{
return
0
;
}
@Override
public
float
getDefaultFloat
(
String
name
)
{
return
0
;
}
@Override
public
int
getDefaultInt
(
String
name
)
{
return
0
;
}
@Override
public
long
getDefaultLong
(
String
name
)
{
return
0
;
}
@Override
public
String
getDefaultString
(
String
name
)
{
return
null
;
}
@Override
public
boolean
isDefault
(
String
name
)
{
return
false
;
}
@Override
public
boolean
needsSaving
()
{
return
false
;
}
@Override
public
void
setDefault
(
String
name
,
double
value
)
{
}
@Override
public
void
setDefault
(
String
name
,
float
value
)
{
}
@Override
public
void
setDefault
(
String
name
,
int
value
)
{
}
@Override
public
void
setDefault
(
String
name
,
long
value
)
{
}
@Override
public
void
setDefault
(
String
name
,
String
defaultObject
)
{
}
@Override
public
void
setDefault
(
String
name
,
boolean
value
)
{
}
@Override
public
void
setToDefault
(
String
name
)
{
}
@Override
public
void
setValue
(
String
name
,
double
value
)
{
}
@Override
public
void
setValue
(
String
name
,
float
value
)
{
}
@Override
public
void
setValue
(
String
name
,
int
value
)
{
}
@Override
public
void
setValue
(
String
name
,
long
value
)
{
}
@Override
public
void
setValue
(
String
name
,
String
value
)
{
}
@Override
public
void
setValue
(
String
name
,
boolean
value
)
{
}
}
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/utils/SimplePreferenceStore.java
0 → 100644
浏览文件 @
22f3d2e4
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2015 Serge Rieder (serge@jkiss.org)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License (version 2)
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
package
org.jkiss.dbeaver.utils
;
import
org.eclipse.core.commands.common.EventManager
;
import
org.eclipse.jface.preference.IPersistentPreferenceStore
;
import
org.eclipse.jface.preference.IPreferenceStore
;
import
org.eclipse.jface.resource.JFaceResources
;
import
org.eclipse.jface.util.IPropertyChangeListener
;
import
org.eclipse.jface.util.PropertyChangeEvent
;
import
org.eclipse.jface.util.SafeRunnable
;
import
org.jkiss.utils.CommonUtils
;
import
java.io.IOException
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* Preference store which can be stored/loaded in any way.
* Also it can use parent store to obtain values from it if this store do not contain the key.
* However, save will always use THIS store, not parent.
* Originally copied from standard PreferenceStore class
*/
public
abstract
class
SimplePreferenceStore
extends
EventManager
implements
IPersistentPreferenceStore
,
IPropertyChangeListener
{
private
IPreferenceStore
parentStore
;
private
Map
<
String
,
String
>
properties
;
private
Map
<
String
,
String
>
defaultProperties
;
private
boolean
dirty
=
false
;
public
SimplePreferenceStore
()
{
defaultProperties
=
new
HashMap
<
String
,
String
>();
properties
=
new
HashMap
<
String
,
String
>();
}
protected
SimplePreferenceStore
(
IPreferenceStore
parentStore
)
{
this
();
this
.
parentStore
=
parentStore
;
if
(
parentStore
!=
null
)
{
parentStore
.
addPropertyChangeListener
(
this
);
}
}
public
IPreferenceStore
getParentStore
()
{
return
parentStore
;
}
public
Map
<
String
,
String
>
getProperties
()
{
return
properties
;
}
public
void
setProperties
(
Map
<
String
,
String
>
properties
)
{
this
.
properties
=
properties
;
}
public
Map
<
String
,
String
>
getDefaultProperties
()
{
return
defaultProperties
;
}
public
void
setDefaultProperties
(
Map
<
String
,
String
>
defaultProperties
)
{
this
.
defaultProperties
=
defaultProperties
;
}
public
void
clear
()
{
properties
.
clear
();
}
@Override
public
void
addPropertyChangeListener
(
IPropertyChangeListener
listener
)
{
addListenerObject
(
listener
);
}
@Override
public
boolean
contains
(
String
name
)
{
return
(
properties
.
containsKey
(
name
)
||
defaultProperties
.
containsKey
(
name
));
}
@Override
public
void
firePropertyChangeEvent
(
String
name
,
Object
oldValue
,
Object
newValue
)
{
final
Object
[]
finalListeners
=
getListeners
();
// Do we need to fire an event.
if
(
finalListeners
.
length
>
0
&&
(
oldValue
==
null
||
!
oldValue
.
equals
(
newValue
)))
{
final
PropertyChangeEvent
pe
=
new
PropertyChangeEvent
(
this
,
name
,
oldValue
,
newValue
);
for
(
int
i
=
0
;
i
<
finalListeners
.
length
;
++
i
)
{
final
IPropertyChangeListener
l
=
(
IPropertyChangeListener
)
finalListeners
[
i
];
SafeRunnable
.
run
(
new
SafeRunnable
(
JFaceResources
.
getString
(
"PreferenceStore.changeError"
))
//$NON-NLS-1$
{
@Override
public
void
run
()
{
l
.
propertyChange
(
pe
);
}
});
}
}
}
@Override
public
boolean
getBoolean
(
String
name
)
{
return
toBoolean
(
getString
(
name
));
}
@Override
public
boolean
getDefaultBoolean
(
String
name
)
{
return
toBoolean
(
getDefaultString
(
name
));
}
private
boolean
toBoolean
(
String
value
)
{
return
value
!=
null
&&
value
.
equals
(
IPreferenceStore
.
TRUE
);
}
@Override
public
double
getDouble
(
String
name
)
{
return
toDouble
(
getString
(
name
));
}
@Override
public
double
getDefaultDouble
(
String
name
)
{
return
toDouble
(
getDefaultString
(
name
));
}
private
double
toDouble
(
String
value
)
{
double
ival
=
DOUBLE_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Double
.
parseDouble
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
float
getFloat
(
String
name
)
{
return
toFloat
(
getString
(
name
));
}
@Override
public
float
getDefaultFloat
(
String
name
)
{
return
toFloat
(
getDefaultString
(
name
));
}
private
float
toFloat
(
String
value
)
{
float
ival
=
FLOAT_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Float
.
parseFloat
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
int
getInt
(
String
name
)
{
return
toInt
(
getString
(
name
));
}
@Override
public
int
getDefaultInt
(
String
name
)
{
return
toInt
(
getDefaultString
(
name
));
}
private
int
toInt
(
String
value
)
{
int
ival
=
INT_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Integer
.
parseInt
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
long
getLong
(
String
name
)
{
return
toLong
(
getString
(
name
));
}
@Override
public
long
getDefaultLong
(
String
name
)
{
return
toLong
(
getDefaultString
(
name
));
}
private
long
toLong
(
String
value
)
{
long
ival
=
LONG_DEFAULT_DEFAULT
;
if
(!
CommonUtils
.
isEmpty
(
value
))
{
try
{
ival
=
Long
.
parseLong
(
value
);
}
catch
(
NumberFormatException
e
)
{
// do nothing
}
}
return
ival
;
}
@Override
public
String
getString
(
String
name
)
{
String
value
=
properties
.
get
(
name
);
if
(
value
==
null
)
{
if
(
parentStore
.
isDefault
(
name
))
{
value
=
defaultProperties
.
get
(
name
);
}
if
(
value
==
null
)
{
value
=
parentStore
.
getString
(
name
);
}
}
return
value
;
}
@Override
public
String
getDefaultString
(
String
name
)
{
String
value
=
defaultProperties
.
get
(
name
);
if
(
value
==
null
)
{
if
(
parentStore
.
isDefault
(
name
))
{
return
parentStore
.
getDefaultString
(
name
);
}
else
{
return
""
;
}
}
return
value
;
}
@Override
public
boolean
isDefault
(
String
name
)
{
return
(!
properties
.
containsKey
(
name
)
&&
(
defaultProperties
.
containsKey
(
name
)
||
parentStore
.
isDefault
(
name
)));
}
public
boolean
isSet
(
String
name
)
{
return
properties
.
containsKey
(
name
);
}
@Override
public
boolean
needsSaving
()
{
return
dirty
;
}
public
String
[]
preferenceNames
()
{
return
properties
.
keySet
().
toArray
(
new
String
[
properties
.
size
()]);
}
@Override
public
void
putValue
(
String
name
,
String
value
)
{
String
oldValue
=
getString
(
name
);
if
(
oldValue
==
null
||
!
oldValue
.
equals
(
value
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
}
}
@Override
public
void
removePropertyChangeListener
(
IPropertyChangeListener
listener
)
{
removeListenerObject
(
listener
);
}
@Override
public
void
setDefault
(
String
name
,
double
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
float
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
int
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
long
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
String
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setDefault
(
String
name
,
boolean
value
)
{
defaultProperties
.
put
(
name
,
String
.
valueOf
(
value
));
}
@Override
public
void
setToDefault
(
String
name
)
{
Object
oldValue
=
properties
.
get
(
name
);
properties
.
remove
(
name
);
dirty
=
true
;
Object
newValue
=
null
;
if
(
defaultProperties
!=
null
)
{
newValue
=
defaultProperties
.
get
(
name
);
}
firePropertyChangeEvent
(
name
,
oldValue
,
newValue
);
}
@Override
public
void
setValue
(
String
name
,
double
value
)
{
double
oldValue
=
getDouble
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
float
value
)
{
float
oldValue
=
getFloat
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
int
value
)
{
int
oldValue
=
getInt
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
long
value
)
{
long
oldValue
=
getLong
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
String
value
)
{
String
oldValue
=
getString
(
name
);
if
(
oldValue
==
null
||
!
oldValue
.
equals
(
value
)
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
value
);
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
,
value
);
}
}
@Override
public
void
setValue
(
String
name
,
boolean
value
)
{
boolean
oldValue
=
getBoolean
(
name
);
if
(
oldValue
!=
value
||
!
isSet
(
name
))
{
properties
.
put
(
name
,
String
.
valueOf
(
value
));
dirty
=
true
;
firePropertyChangeEvent
(
name
,
oldValue
?
Boolean
.
TRUE
:
Boolean
.
FALSE
,
value
?
Boolean
.
TRUE
:
Boolean
.
FALSE
);
}
}
@Override
public
void
save
()
throws
IOException
{
}
@Override
public
void
propertyChange
(
PropertyChangeEvent
event
)
{
for
(
Object
listener
:
getListeners
())
{
((
IPropertyChangeListener
)
listener
).
propertyChange
(
event
);
}
}
}
plugins/org.jkiss.dbeaver.oracle/src/org/jkiss/dbeaver/ext/oracle/views/PrefPageOracle.java
浏览文件 @
22f3d2e4
...
...
@@ -28,7 +28,7 @@ import org.jkiss.dbeaver.registry.DataSourceDescriptor;
import
org.jkiss.dbeaver.runtime.RuntimeUtils
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.ui.preferences.TargetPrefPage
;
import
org.jkiss.dbeaver.utils.
Abstract
PreferenceStore
;
import
org.jkiss.dbeaver.utils.
Simple
PreferenceStore
;
/**
* PrefPageOracle
...
...
@@ -50,7 +50,7 @@ public class PrefPageOracle extends TargetPrefPage
@Override
protected
boolean
hasDataSourceSpecificOptions
(
DataSourceDescriptor
dataSourceDescriptor
)
{
Abstract
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
Simple
PreferenceStore
store
=
dataSourceDescriptor
.
getPreferenceStore
();
return
store
.
contains
(
OracleConstants
.
PREF_EXPLAIN_TABLE_NAME
)
||
store
.
contains
(
OracleConstants
.
PREF_SUPPORT_ROWID
)
||
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录