Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
dedaf8c9
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,发现更多精彩内容 >>
提交
dedaf8c9
编写于
6月 04, 2019
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/devel' into devel
上级
3902ab11
ac9c46fd
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
67 addition
and
65 deletion
+67
-65
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/data/DBDAttributeConstraint.java
.../org/jkiss/dbeaver/model/data/DBDAttributeConstraint.java
+19
-8
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/data/DBDAttributeConstraintBase.java
.../jkiss/dbeaver/model/data/DBDAttributeConstraintBase.java
+44
-53
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/sql/SQLUtils.java
...eaver.model/src/org/jkiss/dbeaver/model/sql/SQLUtils.java
+4
-4
未找到文件。
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/data/DBDAttributeConstraint.java
浏览文件 @
dedaf8c9
...
...
@@ -18,6 +18,9 @@
package
org.jkiss.dbeaver.model.data
;
import
org.jkiss.code.NotNull
;
import
org.jkiss.code.Nullable
;
import
org.jkiss.dbeaver.model.DBPEvaluationContext
;
import
org.jkiss.dbeaver.model.DBUtils
;
import
org.jkiss.dbeaver.model.struct.DBSAttributeBase
;
import
org.jkiss.utils.CommonUtils
;
...
...
@@ -26,33 +29,35 @@ import org.jkiss.utils.CommonUtils;
*/
public
class
DBDAttributeConstraint
extends
DBDAttributeConstraintBase
{
@Nullable
private
DBSAttributeBase
attribute
;
private
String
attributeName
;
private
int
originalVisualPosition
;
public
DBDAttributeConstraint
(
DBDAttributeBinding
attribute
)
{
public
DBDAttributeConstraint
(
@NotNull
DBDAttributeBinding
attribute
)
{
setAttribute
(
attribute
);
setVisualPosition
(
this
.
originalVisualPosition
);
setVisualPosition
(
attribute
.
getOrdinalPosition
()
);
}
public
DBDAttributeConstraint
(
DBSAttributeBase
attribute
,
int
visualPosition
)
{
public
DBDAttributeConstraint
(
@NotNull
DBSAttributeBase
attribute
,
int
visualPosition
)
{
setAttribute
(
attribute
);
setVisualPosition
(
this
.
originalV
isualPosition
);
setVisualPosition
(
v
isualPosition
);
}
public
DBDAttributeConstraint
(
String
attributeName
,
int
originalVisualPosition
)
{
public
DBDAttributeConstraint
(
@NotNull
String
attributeName
,
int
originalVisualPosition
)
{
this
.
attribute
=
null
;
this
.
attributeName
=
attributeName
;
this
.
originalVisualPosition
=
originalVisualPosition
;
}
public
DBDAttributeConstraint
(
DBDAttributeConstraint
source
)
{
public
DBDAttributeConstraint
(
@NotNull
DBDAttributeConstraint
source
)
{
super
(
source
);
this
.
attribute
=
source
.
attribute
;
this
.
attributeName
=
source
.
attributeName
;
this
.
originalVisualPosition
=
source
.
originalVisualPosition
;
}
@Nullable
public
DBSAttributeBase
getAttribute
()
{
return
attribute
;
}
...
...
@@ -63,10 +68,16 @@ public class DBDAttributeConstraint extends DBDAttributeConstraintBase {
this
.
originalVisualPosition
=
attribute
.
getOrdinalPosition
();
}
@NotNull
public
String
getAttributeName
()
{
return
attributeName
;
}
@NotNull
public
String
getFullAttributeName
()
{
return
attribute
==
null
?
attributeName
:
DBUtils
.
getObjectFullName
(
attribute
,
DBPEvaluationContext
.
DML
);
}
public
int
getOriginalVisualPosition
()
{
return
originalVisualPosition
;
}
...
...
@@ -90,7 +101,7 @@ public class DBDAttributeConstraint extends DBDAttributeConstraintBase {
@Override
public
int
hashCode
()
{
return
this
.
attribute
.
hashCode
();
return
this
.
attribute
Name
.
hashCode
()
+
getVisualPosition
();
}
@Override
...
...
@@ -110,7 +121,7 @@ public class DBDAttributeConstraint extends DBDAttributeConstraintBase {
String
clause
=
getOperator
()
==
null
?
(
getCriteria
()
==
null
?
""
:
getCriteria
())
:
(
isReverseOperator
()
?
"NOT "
:
""
)
+
getOperator
().
getStringValue
()
+
" "
+
getValue
();
return
attribute
.
getName
()
+
" "
+
clause
;
return
attribute
Name
+
" "
+
clause
;
}
public
boolean
matches
(
DBSAttributeBase
attr
,
boolean
matchByName
)
{
...
...
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/data/DBDAttributeConstraintBase.java
浏览文件 @
dedaf8c9
...
...
@@ -17,9 +17,9 @@
package
org.jkiss.dbeaver.model.data
;
import
org.jkiss.code.NotNull
;
import
org.jkiss.code.Nullable
;
import
org.jkiss.dbeaver.model.exec.DBCLogicalOperator
;
import
org.jkiss.dbeaver.model.struct.DBSAttributeBase
;
import
org.jkiss.utils.CommonUtils
;
/**
...
...
@@ -30,26 +30,29 @@ public class DBDAttributeConstraintBase {
private
int
orderPosition
;
private
boolean
orderDescending
;
@Nullable
private
String
criteria
;
@Nullable
private
DBCLogicalOperator
operator
;
private
boolean
reverseOperator
;
@Nullable
private
Object
value
;
private
boolean
visible
;
private
int
visualPosition
;
// USed to generate expressions
// Used to generate expressions
@Nullable
private
String
entityAlias
;
public
DBDAttributeConstraintBase
()
{
}
public
DBDAttributeConstraintBase
(
DBDAttributeConstraintBase
source
)
{
public
DBDAttributeConstraintBase
(
@NotNull
DBDAttributeConstraintBase
source
)
{
copyFrom
(
source
);
}
public
void
copyFrom
(
DBDAttributeConstraintBase
source
)
{
public
void
copyFrom
(
@NotNull
DBDAttributeConstraintBase
source
)
{
this
.
orderPosition
=
source
.
orderPosition
;
this
.
orderDescending
=
source
.
orderDescending
;
this
.
criteria
=
source
.
criteria
;
...
...
@@ -60,44 +63,40 @@ public class DBDAttributeConstraintBase {
this
.
visualPosition
=
source
.
visualPosition
;
}
public
int
getOrderPosition
()
{
public
int
getOrderPosition
()
{
return
orderPosition
;
}
public
void
setOrderPosition
(
int
orderPosition
)
{
public
void
setOrderPosition
(
int
orderPosition
)
{
this
.
orderPosition
=
orderPosition
;
}
public
boolean
isOrderDescending
()
{
public
boolean
isOrderDescending
()
{
return
orderDescending
;
}
public
void
setOrderDescending
(
boolean
orderDescending
)
{
public
void
setOrderDescending
(
boolean
orderDescending
)
{
this
.
orderDescending
=
orderDescending
;
}
public
String
getCriteria
()
{
@Nullable
public
String
getCriteria
()
{
return
criteria
;
}
public
void
setCriteria
(
@Nullable
String
criteria
)
{
public
void
setCriteria
(
@Nullable
String
criteria
)
{
this
.
criteria
=
criteria
;
this
.
operator
=
null
;
this
.
reverseOperator
=
false
;
this
.
value
=
null
;
}
@Nullable
public
DBCLogicalOperator
getOperator
()
{
return
operator
;
}
public
void
setOperator
(
DBCLogicalOperator
operator
)
{
public
void
setOperator
(
@Nullable
DBCLogicalOperator
operator
)
{
this
.
criteria
=
null
;
this
.
operator
=
operator
;
}
...
...
@@ -110,6 +109,7 @@ public class DBDAttributeConstraintBase {
this
.
reverseOperator
=
reverseOperator
;
}
@Nullable
public
Object
getValue
()
{
return
value
;
}
...
...
@@ -119,8 +119,7 @@ public class DBDAttributeConstraintBase {
this
.
value
=
value
;
}
public
boolean
hasFilter
()
{
public
boolean
hasFilter
()
{
return
hasCondition
()
||
orderPosition
>
0
||
!
visible
;
}
...
...
@@ -128,23 +127,19 @@ public class DBDAttributeConstraintBase {
return
!
CommonUtils
.
isEmpty
(
criteria
)
||
operator
!=
null
;
}
public
boolean
isVisible
()
{
public
boolean
isVisible
()
{
return
visible
;
}
public
void
setVisible
(
boolean
visible
)
{
public
void
setVisible
(
boolean
visible
)
{
this
.
visible
=
visible
;
}
public
int
getVisualPosition
()
{
public
int
getVisualPosition
()
{
return
visualPosition
;
}
public
void
setVisualPosition
(
int
visualPosition
)
{
public
void
setVisualPosition
(
int
visualPosition
)
{
this
.
visualPosition
=
visualPosition
;
}
...
...
@@ -160,8 +155,7 @@ public class DBDAttributeConstraintBase {
this
.
entityAlias
=
entityAlias
;
}
public
void
reset
()
{
public
void
reset
()
{
this
.
orderPosition
=
0
;
this
.
orderDescending
=
false
;
this
.
criteria
=
null
;
...
...
@@ -171,8 +165,7 @@ public class DBDAttributeConstraintBase {
this
.
visible
=
true
;
}
public
boolean
equalFilters
(
DBDAttributeConstraintBase
obj
,
boolean
compareOrders
)
{
public
boolean
equalFilters
(
DBDAttributeConstraintBase
obj
,
boolean
compareOrders
)
{
if
(
compareOrders
)
{
if
(
this
.
orderPosition
!=
obj
.
orderPosition
||
this
.
orderDescending
!=
obj
.
orderDescending
)
{
...
...
@@ -181,40 +174,38 @@ public class DBDAttributeConstraintBase {
}
return
CommonUtils
.
equalObjects
(
this
.
criteria
,
obj
.
criteria
)
&&
CommonUtils
.
equalObjects
(
this
.
operator
,
obj
.
operator
)
&&
CommonUtils
.
equalObjects
(
this
.
reverseOperator
,
obj
.
reverseOperator
)
&&
CommonUtils
.
equalObjects
(
this
.
value
,
obj
.
value
);
CommonUtils
.
equalObjects
(
this
.
operator
,
obj
.
operator
)
&&
CommonUtils
.
equalObjects
(
this
.
reverseOperator
,
obj
.
reverseOperator
)
&&
CommonUtils
.
equalObjects
(
this
.
value
,
obj
.
value
);
}
@Override
public
int
hashCode
()
{
public
int
hashCode
()
{
return
orderPosition
+
(
orderDescending
?
1
:
0
)
+
(
this
.
criteria
==
null
?
0
:
this
.
criteria
.
hashCode
())
+
(
this
.
operator
==
null
?
0
:
this
.
operator
.
hashCode
())
+
(
reverseOperator
?
1
:
0
)
+
(
this
.
value
==
null
?
0
:
this
.
value
.
hashCode
())
+
(
visible
?
1
:
0
)
+
visualPosition
(
orderDescending
?
1
:
0
)
+
(
this
.
criteria
==
null
?
0
:
this
.
criteria
.
hashCode
())
+
(
this
.
operator
==
null
?
0
:
this
.
operator
.
hashCode
())
+
(
reverseOperator
?
1
:
0
)
+
(
this
.
value
==
null
?
0
:
this
.
value
.
hashCode
())
+
(
visible
?
1
:
0
)
+
visualPosition
;
}
@Override
public
boolean
equals
(
Object
obj
)
{
public
boolean
equals
(
Object
obj
)
{
if
(
obj
instanceof
DBDAttributeConstraintBase
)
{
DBDAttributeConstraintBase
source
=
(
DBDAttributeConstraintBase
)
obj
;
return
this
.
orderPosition
==
source
.
orderPosition
&&
this
.
orderDescending
==
source
.
orderDescending
&&
CommonUtils
.
equalObjects
(
this
.
criteria
,
source
.
criteria
)
&&
CommonUtils
.
equalObjects
(
this
.
operator
,
source
.
operator
)
&&
this
.
reverseOperator
==
source
.
reverseOperator
&&
CommonUtils
.
equalObjects
(
this
.
value
,
source
.
value
)
&&
this
.
visible
==
source
.
visible
&&
this
.
visualPosition
==
source
.
visualPosition
;
this
.
orderDescending
==
source
.
orderDescending
&&
CommonUtils
.
equalObjects
(
this
.
criteria
,
source
.
criteria
)
&&
CommonUtils
.
equalObjects
(
this
.
operator
,
source
.
operator
)
&&
this
.
reverseOperator
==
source
.
reverseOperator
&&
CommonUtils
.
equalObjects
(
this
.
value
,
source
.
value
)
&&
this
.
visible
==
source
.
visible
&&
this
.
visualPosition
==
source
.
visualPosition
;
}
else
{
return
false
;
}
...
...
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/sql/SQLUtils.java
浏览文件 @
dedaf8c9
...
...
@@ -471,11 +471,11 @@ public final class SQLUtils {
for
(
DBDAttributeConstraint
co
:
filter
.
getOrderConstraints
())
{
if
(
hasOrder
)
query
.
append
(
','
);
String
orderString
=
null
;
if
(
co
.
getAttribute
()
instanceof
DBDAttributeBindingMeta
)
{
String
orderColumn
=
co
.
getAttribute
().
get
Name
();
if
(
PATTERN_SIMPLE_NAME
.
matcher
(
orderColumn
).
matches
())
{
if
(
co
.
getAttribute
()
==
null
||
co
.
getAttribute
()
instanceof
DBDAttributeBindingMeta
)
{
String
orderColumn
=
co
.
getAttributeName
();
if
(
co
.
getAttribute
()
==
null
||
PATTERN_SIMPLE_NAME
.
matcher
(
orderColumn
).
matches
())
{
// It is a simple column.
orderString
=
DBUtils
.
getObjectFullName
(
co
.
getAttribute
(),
DBPEvaluationContext
.
DML
);
orderString
=
co
.
getFullAttributeName
(
);
if
(
conditionTable
!=
null
)
{
orderString
=
conditionTable
+
'.'
+
orderString
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录