public abstract class AbstractLoginServiceImpl<JE extends AbstractPositionEntity,PE extends AbstractPersonAccountEntity<JE>> extends Object implements AbstractLoginService
| 限定符和类型 | 字段和说明 |
|---|---|
protected AbstractOrganizationAccountFactory |
abstractOrganizationAccountFactory |
protected org.coodex.concrete.accounts.AbstractAdministratorFactory |
administratorFactory |
protected LoginCacheEntryRepo |
loginCacheEntryRepo |
protected AbstractPersonAccountRepo<PE> |
personAccountRepo |
protected org.coodex.concrete.accounts.TenantRPCServiceClient |
tenantRPCServiceClient |
protected Token |
token |
| 构造器和说明 |
|---|
AbstractLoginServiceImpl() |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
administratorLogin(String tenant,
String password,
String authCode) |
protected PE |
getAccountEntityBy(String account,
String tenant)
其他登录方式,实现者自行重载
|
protected PE |
getAccountEntityByCellPhone(String cellPhone,
String tenant) |
protected PE |
getAccountEntityByEmail(String email,
String tenant) |
protected PE |
getAccountEntityByIdCardNo(String idCardNo,
String tenant) |
protected PE |
getPersonEntity(String account,
String tenant) |
protected Calendar |
getValidationFromNow()
可扩展
|
protected boolean |
hasAtChar(String account) |
String |
identification(String authCode) |
protected boolean |
isCellPhone(String account)
实现者可重载,增加更完善的校验,例如:全数字,前两位、三位,区域等
|
protected boolean |
isEmail(String account)
实现者可重载,增加更完善的校验
|
protected boolean |
isIdCard(String account)
实现者可重载,增加更完善的校验,例如:15位是否全数字、18位校验码、生日有效性校验、行政区划有效性校验等
|
String |
login(String tenant,
String account,
String password,
String authCode) |
void |
loginWith(String credential) |
void |
logout() |
protected String |
newCredential()
可扩展,需保证每次均唯一
|
protected void |
setValidation(LoginCacheEntryEntity loginCacheEntryEntity)
可扩展
|
protected String |
updateLoginCacheEntry(PE personEntity) |
@Inject protected AbstractPersonAccountRepo<PE extends AbstractPersonAccountEntity<JE>> personAccountRepo
@Inject protected LoginCacheEntryRepo loginCacheEntryRepo
protected Token token
@Inject protected AbstractOrganizationAccountFactory abstractOrganizationAccountFactory
@Inject protected org.coodex.concrete.accounts.AbstractAdministratorFactory administratorFactory
@Inject protected org.coodex.concrete.accounts.TenantRPCServiceClient tenantRPCServiceClient
public String login(String tenant, String account, String password, String authCode)
login 在接口中 AbstractLoginServiceprotected void setValidation(LoginCacheEntryEntity loginCacheEntryEntity)
loginCacheEntryEntity - protected String newCredential()
protected Calendar getValidationFromNow()
protected PE getAccountEntityBy(String account, String tenant)
account - protected PE getAccountEntityByCellPhone(String cellPhone, String tenant)
protected boolean hasAtChar(String account)
protected boolean isCellPhone(String account)
account - protected boolean isIdCard(String account)
account - protected boolean isEmail(String account)
account - public void administratorLogin(String tenant, String password, String authCode)
administratorLogin 在接口中 AbstractLoginServicepublic void loginWith(String credential)
loginWith 在接口中 AbstractLoginServicepublic String identification(String authCode)
identification 在接口中 AbstractLoginServicepublic void logout()
logout 在接口中 AbstractLoginServiceCopyright © 2018. All rights reserved.