Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
开发团队
Flowable Engine
提交
9d0c8a27
F
Flowable Engine
项目概览
开发团队
/
Flowable Engine
通知
9
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
Flowable Engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9d0c8a27
编写于
8月 24, 2015
作者:
J
Joram Barrez
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Improvements to generic entity fetch methods
上级
ac85faaf
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
20 addition
and
42 deletion
+20
-42
modules/activiti-engine/src/main/java/org/activiti/engine/impl/agenda/EndExecutionOperation.java
...rg/activiti/engine/impl/agenda/EndExecutionOperation.java
+1
-1
modules/activiti-engine/src/main/java/org/activiti/engine/impl/agenda/ExecuteInactiveBehaviorsOperation.java
...engine/impl/agenda/ExecuteInactiveBehaviorsOperation.java
+1
-1
modules/activiti-engine/src/main/java/org/activiti/engine/impl/db/DbSqlSession.java
...c/main/java/org/activiti/engine/impl/db/DbSqlSession.java
+2
-2
modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/AbstractEntityManager.java
...engine/impl/persistence/entity/AbstractEntityManager.java
+8
-13
modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/EntityManager.java
...ctiviti/engine/impl/persistence/entity/EntityManager.java
+2
-4
modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/ExecutionEntityManagerImpl.java
...e/impl/persistence/entity/ExecutionEntityManagerImpl.java
+2
-7
modules/activiti-ldap/src/main/java/org/activiti/ldap/LDAPGroupManager.java
...dap/src/main/java/org/activiti/ldap/LDAPGroupManager.java
+2
-7
modules/activiti-ldap/src/main/java/org/activiti/ldap/LDAPUserManager.java
...ldap/src/main/java/org/activiti/ldap/LDAPUserManager.java
+2
-7
未找到文件。
modules/activiti-engine/src/main/java/org/activiti/engine/impl/agenda/EndExecutionOperation.java
浏览文件 @
9d0c8a27
...
...
@@ -48,7 +48,7 @@ public class EndExecutionOperation extends AbstractOperation {
// Find parent execution. If not found, it's the process instance and other logic needs to happen
ExecutionEntity
parentExecution
=
null
;
if
(
executionEntity
.
getParentId
()
!=
null
)
{
parentExecution
=
executionEntityManager
.
get
(
executionEntity
.
getParentId
());
parentExecution
=
executionEntityManager
.
get
Entity
(
executionEntity
.
getParentId
());
}
if
(
parentExecution
!=
null
)
{
...
...
modules/activiti-engine/src/main/java/org/activiti/engine/impl/agenda/ExecuteInactiveBehaviorsOperation.java
浏览文件 @
9d0c8a27
...
...
@@ -51,7 +51,7 @@ public class ExecuteInactiveBehaviorsOperation extends AbstractOperation {
Collection
<
ExecutionEntity
>
inactiveExecutions
=
commandContext
.
getExecutionEntityManager
().
findInactiveExecutionsByProcessInstanceId
(
executionEntity
.
getProcessInstanceId
());
for
(
ExecutionEntity
inactiveExecution
:
inactiveExecutions
)
{
if
(!
inactiveExecution
.
isActive
()
&&
flowNodeIdsWithInactivatedBehavior
.
contains
(
inactiveExecution
.
getActivityId
())
&&
!
commandContext
.
getDbSqlSession
().
isPersistentObjectDeleted
(
inactiveExecution
))
{
&&
!
commandContext
.
getDbSqlSession
().
isPersistentObject
ToBe
Deleted
(
inactiveExecution
))
{
FlowNode
flowNode
=
(
FlowNode
)
process
.
getFlowElement
(
inactiveExecution
.
getActivityId
(),
true
);
InactiveActivityBehavior
inactiveActivityBehavior
=
((
InactiveActivityBehavior
)
flowNode
.
getBehavior
());
...
...
modules/activiti-engine/src/main/java/org/activiti/engine/impl/db/DbSqlSession.java
浏览文件 @
9d0c8a27
...
...
@@ -757,7 +757,7 @@ public class DbSqlSession implements Session {
for
(
CachedObject
cachedObject
:
classCache
.
values
())
{
PersistentObject
persistentObject
=
cachedObject
.
getPersistentObject
();
if
(!
isPersistentObjectDeleted
(
persistentObject
))
{
if
(!
isPersistentObject
ToBe
Deleted
(
persistentObject
))
{
Object
originalState
=
cachedObject
.
getPersistentObjectState
();
if
(
persistentObject
.
getPersistentState
()
!=
null
&&
!
persistentObject
.
getPersistentState
().
equals
(
originalState
))
{
updatedObjects
.
add
(
persistentObject
);
...
...
@@ -772,7 +772,7 @@ public class DbSqlSession implements Session {
return
updatedObjects
;
}
public
boolean
isPersistentObjectDeleted
(
PersistentObject
persistentObject
)
{
public
boolean
isPersistentObject
ToBe
Deleted
(
PersistentObject
persistentObject
)
{
for
(
DeleteOperation
deleteOperation
:
deleteOperations
)
{
if
(
deleteOperation
.
sameIdentity
(
persistentObject
))
{
return
true
;
...
...
modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/AbstractEntityManager.java
浏览文件 @
9d0c8a27
...
...
@@ -48,7 +48,7 @@ public class AbstractEntityManager<Entity extends PersistentObject> extends Abst
@Override
public
void
delete
(
String
id
)
{
Entity
entity
=
get
(
id
);
Entity
entity
=
get
Entity
(
id
);
delete
(
entity
);
}
...
...
@@ -67,32 +67,27 @@ public class AbstractEntityManager<Entity extends PersistentObject> extends Abst
}
}
@Override
public
Entity
get
(
String
persistentObjectId
)
{
return
getDbSqlSession
().
selectById
(
getManagedPersistentObject
(),
persistentObjectId
);
}
/*
* Advanced operations
*/
@Override
public
Entity
getEntity
(
Class
<?
extends
Entity
>
clazz
,
String
entityId
,
CachedEntityMatcher
<
Entity
>
cachedEntityMatcher
)
{
public
Entity
getEntity
(
String
entityId
)
{
// Cache
for
(
Entity
cachedEntity
:
getDbSqlSession
().
findInCache
(
getManagedPersistentObject
()))
{
if
(
cachedEntityMatcher
.
isRetained
(
cachedEntity
))
{
if
(
entityId
.
equals
(
cachedEntity
.
getId
()
))
{
return
cachedEntity
;
}
}
// Database
return
getDbSqlSession
().
selectById
(
clazz
,
entityId
);
return
getDbSqlSession
().
selectById
(
getManagedPersistentObject
()
,
entityId
);
}
@Override
@SuppressWarnings
(
"unchecked"
)
public
Entity
getEntity
(
Class
<?
extends
Entity
>
clazz
,
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
Entity
>
cachedEntityMatcher
)
{
public
Entity
getEntity
(
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
Entity
>
cachedEntityMatcher
)
{
// Cache
for
(
Entity
cachedEntity
:
getDbSqlSession
().
findInCache
(
getManagedPersistentObject
()))
{
if
(
cachedEntityMatcher
.
isRetained
(
cachedEntity
))
{
...
...
@@ -107,10 +102,10 @@ public class AbstractEntityManager<Entity extends PersistentObject> extends Abst
@Override
@SuppressWarnings
(
"unchecked"
)
public
List
<
Entity
>
getList
(
String
dbQueryName
,
Object
parameter
,
CachedEntityMatcher
<
Entity
>
retainEntityCondition
)
{
HashMap
<
String
,
Entity
>
entityMap
=
new
HashMap
<
String
,
Entity
>();
// Database
List
<
Entity
>
entitiesFromDb
=
getDbSqlSession
().
selectList
(
dbQueryName
,
parameter
);
HashMap
<
String
,
Entity
>
entityMap
=
new
HashMap
<
String
,
Entity
>(
entitiesFromDb
.
size
());
for
(
Entity
entity
:
entitiesFromDb
)
{
entityMap
.
put
(
entity
.
getId
(),
entity
);
}
...
...
@@ -118,7 +113,7 @@ public class AbstractEntityManager<Entity extends PersistentObject> extends Abst
// Cache
for
(
Entity
cachedEntity
:
getDbSqlSession
().
findInCache
(
getManagedPersistentObject
()))
{
if
(
retainEntityCondition
.
isRetained
(
cachedEntity
))
{
entityMap
.
put
(
cachedEntity
.
getId
(),
cachedEntity
);
entityMap
.
put
(
cachedEntity
.
getId
(),
cachedEntity
);
// will overwite db version with newer version
}
}
...
...
@@ -137,7 +132,7 @@ public class AbstractEntityManager<Entity extends PersistentObject> extends Abst
if
(
result
.
size
()
>
0
)
{
Iterator
<
Entity
>
resultIterator
=
result
.
iterator
();
while
(
resultIterator
.
hasNext
())
{
if
(
getDbSqlSession
().
isPersistentObjectDeleted
(
resultIterator
.
next
()))
{
if
(
getDbSqlSession
().
isPersistentObject
ToBe
Deleted
(
resultIterator
.
next
()))
{
resultIterator
.
remove
();
}
}
...
...
modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/EntityManager.java
浏览文件 @
9d0c8a27
...
...
@@ -26,11 +26,9 @@ public interface EntityManager<Entity extends PersistentObject> {
void
insert
(
Entity
entity
,
boolean
fireCreateEvent
);
Entity
get
(
String
persistentObject
Id
);
Entity
get
Entity
(
String
entity
Id
);
Entity
getEntity
(
Class
<?
extends
Entity
>
clazz
,
String
entityId
,
CachedEntityMatcher
<
Entity
>
cachedEntityMatcher
);
Entity
getEntity
(
Class
<?
extends
Entity
>
clazz
,
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
Entity
>
cachedEntityMatcher
);
Entity
getEntity
(
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
Entity
>
cachedEntityMatcher
);
List
<
Entity
>
getList
(
String
dbQueryName
,
Object
parameter
,
CachedEntityMatcher
<
Entity
>
retainEntityCondition
);
...
...
modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/ExecutionEntityManagerImpl.java
浏览文件 @
9d0c8a27
...
...
@@ -60,7 +60,7 @@ public class ExecutionEntityManagerImpl extends AbstractEntityManager<ExecutionE
@Override
public
ExecutionEntity
findSubProcessInstanceBySuperExecutionId
(
final
String
superExecutionId
)
{
return
getEntity
(
ExecutionEntity
.
class
,
"selectSubProcessInstanceBySuperExecutionId"
,
superExecutionId
,
new
CachedEntityMatcher
<
ExecutionEntity
>()
{
return
getEntity
(
"selectSubProcessInstanceBySuperExecutionId"
,
superExecutionId
,
new
CachedEntityMatcher
<
ExecutionEntity
>()
{
public
boolean
isRetained
(
ExecutionEntity
executionEntity
)
{
return
executionEntity
.
getSuperExecutionId
()
!=
null
&&
superExecutionId
.
equals
(
executionEntity
.
getSuperExecutionId
());
...
...
@@ -91,12 +91,7 @@ public class ExecutionEntityManagerImpl extends AbstractEntityManager<ExecutionE
@Override
public
ExecutionEntity
findExecutionById
(
final
String
executionId
)
{
return
(
ExecutionEntity
)
getEntity
(
ExecutionEntity
.
class
,
executionId
,
new
CachedEntityMatcher
<
ExecutionEntity
>()
{
@Override
public
boolean
isRetained
(
ExecutionEntity
entity
)
{
return
entity
.
getId
().
equals
(
executionId
);
}
});
return
getEntity
(
executionId
);
}
@Override
...
...
modules/activiti-ldap/src/main/java/org/activiti/ldap/LDAPGroupManager.java
浏览文件 @
9d0c8a27
...
...
@@ -187,17 +187,12 @@ public class LDAPGroupManager extends AbstractManager implements GroupEntityMana
}
@Override
public
GroupEntity
get
(
String
persistentObject
Id
)
{
public
GroupEntity
get
Entity
(
String
entity
Id
)
{
throw
new
ActivitiException
(
"Unsupported by LDAP group manager"
);
}
@Override
public
GroupEntity
getEntity
(
Class
<?
extends
GroupEntity
>
clazz
,
String
entityId
,
CachedEntityMatcher
<
GroupEntity
>
cachedEntityMatcher
)
{
throw
new
ActivitiException
(
"Unsupported by LDAP group manager"
);
}
@Override
public
GroupEntity
getEntity
(
Class
<?
extends
GroupEntity
>
clazz
,
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
GroupEntity
>
cachedEntityMatcher
)
{
public
GroupEntity
getEntity
(
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
GroupEntity
>
cachedEntityMatcher
)
{
throw
new
ActivitiException
(
"Unsupported by LDAP group manager"
);
}
...
...
modules/activiti-ldap/src/main/java/org/activiti/ldap/LDAPUserManager.java
浏览文件 @
9d0c8a27
...
...
@@ -328,17 +328,12 @@ public class LDAPUserManager extends AbstractManager implements UserEntityManage
}
@Override
public
UserEntity
get
(
String
persistentObject
Id
)
{
public
UserEntity
get
Entity
(
String
entity
Id
)
{
throw
new
ActivitiException
(
"Unsupported by LDAP user manager"
);
}
@Override
public
UserEntity
getEntity
(
Class
<?
extends
UserEntity
>
clazz
,
String
entityId
,
CachedEntityMatcher
<
UserEntity
>
cachedEntityMatcher
)
{
throw
new
ActivitiException
(
"Unsupported by LDAP user manager"
);
}
@Override
public
UserEntity
getEntity
(
Class
<?
extends
UserEntity
>
clazz
,
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
UserEntity
>
cachedEntityMatcher
)
{
public
UserEntity
getEntity
(
String
selectQuery
,
Object
parameter
,
CachedEntityMatcher
<
UserEntity
>
cachedEntityMatcher
)
{
throw
new
ActivitiException
(
"Unsupported by LDAP user manager"
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录