提交 49ec078f 编写于 作者: J Joram Barrez

ACT-1696: cleanup

上级 9f32fcac
......@@ -137,6 +137,7 @@ import org.activiti.engine.impl.jobexecutor.TimerStartEventJobHandler;
import org.activiti.engine.impl.jobexecutor.TimerSuspendProcessDefinitionHandler;
import org.activiti.engine.impl.persistence.GenericManagerFactory;
import org.activiti.engine.impl.persistence.GroupEntityManagerFactory;
import org.activiti.engine.impl.persistence.MembershipEntityManagerFactory;
import org.activiti.engine.impl.persistence.UserEntityManagerFactory;
import org.activiti.engine.impl.persistence.deploy.DefaultDeploymentCache;
import org.activiti.engine.impl.persistence.deploy.Deployer;
......@@ -711,7 +712,7 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig
addSessionFactory(new UserEntityManagerFactory());
addSessionFactory(new GroupEntityManagerFactory());
addSessionFactory(new GenericManagerFactory(MembershipEntityManager.class));
addSessionFactory(new MembershipEntityManagerFactory());
}
if (customSessionFactories!=null) {
......
......@@ -42,7 +42,7 @@ public class CreateMembershipCmd implements Command<Object>, Serializable {
throw new ActivitiIllegalArgumentException("groupId is null");
}
commandContext
.getMembershipEntityManager()
.getMembershipIdentityManager()
.createMembership(userId, groupId);
return null;
}
......
......@@ -42,7 +42,7 @@ public class DeleteMembershipCmd implements Command<Void>, Serializable {
}
commandContext
.getMembershipEntityManager()
.getMembershipIdentityManager()
.deleteMembership(userId, groupId);
return null;
......
......@@ -32,7 +32,6 @@ import org.activiti.engine.impl.persistence.entity.CommentEntityManager;
import org.activiti.engine.impl.persistence.entity.DeploymentEntityManager;
import org.activiti.engine.impl.persistence.entity.EventSubscriptionEntityManager;
import org.activiti.engine.impl.persistence.entity.ExecutionEntityManager;
import org.activiti.engine.impl.persistence.entity.GroupEntityManager;
import org.activiti.engine.impl.persistence.entity.GroupIdentityManager;
import org.activiti.engine.impl.persistence.entity.HistoricActivityInstanceEntityManager;
import org.activiti.engine.impl.persistence.entity.HistoricDetailEntityManager;
......@@ -43,14 +42,13 @@ import org.activiti.engine.impl.persistence.entity.HistoricVariableInstanceEntit
import org.activiti.engine.impl.persistence.entity.IdentityInfoEntityManager;
import org.activiti.engine.impl.persistence.entity.IdentityLinkEntityManager;
import org.activiti.engine.impl.persistence.entity.JobEntityManager;
import org.activiti.engine.impl.persistence.entity.MembershipEntityManager;
import org.activiti.engine.impl.persistence.entity.MembershipIdentityManager;
import org.activiti.engine.impl.persistence.entity.ModelEntityManager;
import org.activiti.engine.impl.persistence.entity.ProcessDefinitionEntityManager;
import org.activiti.engine.impl.persistence.entity.PropertyEntityManager;
import org.activiti.engine.impl.persistence.entity.ResourceEntityManager;
import org.activiti.engine.impl.persistence.entity.TableDataManager;
import org.activiti.engine.impl.persistence.entity.TaskEntityManager;
import org.activiti.engine.impl.persistence.entity.UserEntityManager;
import org.activiti.engine.impl.persistence.entity.UserIdentityManager;
import org.activiti.engine.impl.persistence.entity.VariableInstanceEntityManager;
import org.activiti.engine.impl.pvm.runtime.AtomicOperation;
......@@ -285,8 +283,8 @@ public class CommandContext {
return getSession(IdentityInfoEntityManager.class);
}
public MembershipEntityManager getMembershipEntityManager() {
return getSession(MembershipEntityManager.class);
public MembershipIdentityManager getMembershipIdentityManager() {
return getSession(MembershipIdentityManager.class);
}
public AttachmentEntityManager getAttachmentEntityManager() {
......
......@@ -22,7 +22,6 @@ import org.activiti.engine.impl.persistence.entity.AttachmentEntityManager;
import org.activiti.engine.impl.persistence.entity.ByteArrayEntityManager;
import org.activiti.engine.impl.persistence.entity.DeploymentEntityManager;
import org.activiti.engine.impl.persistence.entity.ExecutionEntityManager;
import org.activiti.engine.impl.persistence.entity.GroupEntityManager;
import org.activiti.engine.impl.persistence.entity.GroupIdentityManager;
import org.activiti.engine.impl.persistence.entity.HistoricActivityInstanceEntityManager;
import org.activiti.engine.impl.persistence.entity.HistoricDetailEntityManager;
......@@ -32,7 +31,7 @@ import org.activiti.engine.impl.persistence.entity.HistoricTaskInstanceEntityMan
import org.activiti.engine.impl.persistence.entity.HistoricVariableInstanceEntityManager;
import org.activiti.engine.impl.persistence.entity.IdentityInfoEntityManager;
import org.activiti.engine.impl.persistence.entity.IdentityLinkEntityManager;
import org.activiti.engine.impl.persistence.entity.MembershipEntityManager;
import org.activiti.engine.impl.persistence.entity.MembershipIdentityManager;
import org.activiti.engine.impl.persistence.entity.ModelEntityManager;
import org.activiti.engine.impl.persistence.entity.ProcessDefinitionEntityManager;
import org.activiti.engine.impl.persistence.entity.ResourceEntityManager;
......@@ -135,8 +134,8 @@ public abstract class AbstractManager implements Session {
return getSession(IdentityInfoEntityManager.class);
}
protected MembershipEntityManager getMembershipManager() {
return getSession(MembershipEntityManager.class);
protected MembershipIdentityManager getMembershipIdentityManager() {
return getSession(MembershipIdentityManager.class);
}
protected AttachmentEntityManager getAttachmentManager() {
......
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.engine.impl.persistence;
import org.activiti.engine.impl.interceptor.Session;
import org.activiti.engine.impl.interceptor.SessionFactory;
import org.activiti.engine.impl.persistence.entity.MembershipEntityManager;
import org.activiti.engine.impl.persistence.entity.MembershipIdentityManager;
/**
* @author Joram Barrez
*/
public class MembershipEntityManagerFactory implements SessionFactory {
public Class< ? > getSessionType() {
return MembershipIdentityManager.class;
}
public Session openSession() {
return new MembershipEntityManager();
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.engine.impl.persistence.entity;
/**
* @author Joram Barrez
*/
public interface MembershipIdentityManager {
void createMembership(String userId, String groupId);
void deleteMembership(String userId, String groupId);
}
......@@ -21,18 +21,22 @@
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
......@@ -91,11 +95,13 @@
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>3.1.4.RELEASE</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>3.1.4.RELEASE</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.ldap</groupId>
......@@ -107,6 +113,7 @@
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.ldap</groupId>
......@@ -118,11 +125,13 @@
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-ldap</artifactId>
<version>3.1.4.RELEASE</version>
<scope>test</scope>
</dependency>
</dependencies>
......
......@@ -54,6 +54,7 @@ public class LDAPConfigurator implements ProcessEngineConfigurator {
// Pluggable factories
protected LDAPUserManagerFactory ldapUserManagerFactory;
protected LDAPGroupManagerFactory ldapGroupManagerFactory;
protected LDAPMembershipManagerFactory ldapMembershipManagerFactory;
// Pluggable query helper bean
protected LDAPQueryBuilder ldapQueryBuilder = new LDAPQueryBuilder();
......@@ -64,6 +65,7 @@ public class LDAPConfigurator implements ProcessEngineConfigurator {
LDAPGroupManagerFactory ldapGroupManagerFactory = getLdapGroupManagerFactory();
processEngineConfiguration.getSessionFactories().put(ldapGroupManagerFactory.getSessionType(), ldapGroupManagerFactory);
}
// Can be overwritten for custom factories
......@@ -84,6 +86,14 @@ public class LDAPConfigurator implements ProcessEngineConfigurator {
return new LDAPGroupManagerFactory(this);
}
protected LDAPMembershipManagerFactory getLdapMembershipManagerFactory() {
if (this.ldapMembershipManagerFactory != null) {
this.ldapMembershipManagerFactory.setLdapConfigurator(this);
}
return new LDAPMembershipManagerFactory(this);
}
// Getters and Setters
public String getServer() {
......@@ -229,6 +239,10 @@ public class LDAPConfigurator implements ProcessEngineConfigurator {
public void setLdapGroupManagerFactory(LDAPGroupManagerFactory ldapGroupManagerFactory) {
this.ldapGroupManagerFactory = ldapGroupManagerFactory;
}
public void setLdapMembershipManagerFactory(LDAPMembershipManagerFactory ldapMembershipManagerFactory) {
this.ldapMembershipManagerFactory = ldapMembershipManagerFactory;
}
public LDAPQueryBuilder getLdapQueryBuilder() {
return ldapQueryBuilder;
......
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.ldap;
import org.activiti.engine.impl.interceptor.Session;
import org.activiti.engine.impl.interceptor.SessionFactory;
import org.activiti.engine.impl.persistence.entity.MembershipIdentityManager;
/**
* @author Joram Barrez
*/
public class LDAPMembershipManagerFactory implements SessionFactory {
protected LDAPConfigurator ldapConfigurator;
public LDAPMembershipManagerFactory(LDAPConfigurator ldapConfigurator) {
this.ldapConfigurator = ldapConfigurator;
}
@Override
public Class<?> getSessionType() {
return MembershipIdentityManager.class;
}
@Override
public Session openSession() {
throw new UnsupportedOperationException("Memberships are not supported in ldap");
}
public LDAPConfigurator getLdapConfigurator() {
return ldapConfigurator;
}
public void setLdapConfigurator(LDAPConfigurator ldapConfigurator) {
this.ldapConfigurator = ldapConfigurator;
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册