1.jbpm4权限管理简介
jbpm4权限管理,数据库内共有三个表:Entity、 Membership、 Group、 User,其关系如下:
我现在做的系统里要用jbpm,所以一直想用Group类中的groupType来表示角色,User类表示用户,Group表示部门或用户组。但查看网上资料,大家都说是用Membership类中的Name来表示角色,由于没有实践,这里暂不发表评论。
1.用户组和用户操作接口
package org.jbpm.api.identity 在这个包下面有二个接口:Group和User。分别定义了用户组和用户的行为。
public interface Group {
/**用户组ID必须唯一*/
String getId();
/** 在一个工作组类型内必须唯一*/
String getName();
/** 获取工作组类型 */
String getType();
}
public interface User {
/** 用户ID必须唯一 */
String getId();
/** 获取用户的名 */
String getGivenName();
/** 获取用户的姓 */
String getFamilyName();
/** 获取用户的email */
String getBusinessEmail();
}
这二个接口在org.jbpm.pvm.internal.identity.impl包中被实现,具体关系如下
Group:GroupImpl
User:UserImpl
2.用户组和用户操作实现 org.jbpm.pvm.internal.identity.impl GroupImpl 和UserImpl 只相当于一个数据model类
注:下面去掉了不必要的代码
public class UserImpl implements User, Serializable {
protected long dbid;
protected int dbversion;
protected String id;
protected String password;
protected String givenName;
protected String familyName;
protected String businessEmail;
public UserImpl(String id, String givenName, String familyName) {
this.id = id;
this.givenName = givenName;
this.familyName = familyName;
}
}
public class GroupImpl implements Group, Serializable {
protected long dbid;
protected int dbversion;
protected GroupImpl parent;
protected String id;
protected String name;
protected String type;
}
类IdentitySessionImpl 相当于command模式中的Receiver,即具体的执行者
public class IdentitySessionImpl implements IdentitySession {
待续
参考文献
阅读(3179) | 评论(1) | 转发(0) |