All Downloads are FREE. Search and download functionalities are using the official Maven repository.

club.zhcs.lina.auth.service.InMemoryUserDetailService Maven / Gradle / Ivy

The newest version!
package club.zhcs.lina.auth.service;

import java.util.Map;

import org.nutz.log.Log;
import org.nutz.log.Logs;

import com.google.common.collect.Maps;

/**
 * 基于内存存储的UserDetailService,请勿在生产环境使用,特别是多节点部署的时候
 */
public class InMemoryUserDetailService implements UserDetailService {

    Map cache = Maps.newHashMap();
    Log logger = Logs.get();

    @Override
    public AuthUser userByName(String name) {
        if (logger.isDebugEnabled()) {
            logger.warnf("%s is an implementation based on JVM memory, please do not use it in the generation environment to avoid unexpected errors ",
                         getClass().getName());
        } else {
            System.err.printf("%s is an implementation based on JVM memory, please do not use it in the generation environment to avoid unexpected errors ",
                              getClass().getName());
        }
        return cache.get(name);
    }

    @Override
    public void save(AuthUser user) {
        cache.put(user.getUserName(), user);
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy