认证方式扩展接口
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.3 KiB

4 years ago
package com.tptj.demo.hg.passport.provider;
import com.fr.config.Identifier;
import com.fr.config.holder.Conf;
import com.fr.config.holder.factory.Holders;
import com.fr.decision.authorize.impl.AbstractPassport;
import com.fr.stable.AssistUtils;
import com.fr.stable.StringUtils;
/**
* @author 秃破天际
* @version 10.0
* Created by 秃破天际 on 2021-06-02
**/
public class DemoPassport extends AbstractPassport {
public static final String TAG_CODE = "code";
@Identifier(TAG_CODE)
private Conf<String> code = Holders.simple(StringUtils.EMPTY);
@Override
public String markType() {
return Demo.TYPE;
}
@Override
public boolean checkTicket( String username, String inputPassword,
String savedPassword, String hashPassword ) {
return StringUtils.equals( inputPassword, getCode() );
}
public String getCode() {
return code.get();
}
public void setCode(String code) {
this.code.set(code);
}
@Override
public boolean equals(Object o) {
return o instanceof DemoPassport && null != o &&
StringUtils.equals( ((DemoPassport) o).getCode(), getCode() );
}
@Override
public int hashCode() {
return AssistUtils.hashCode( getCode() );
}
}