// Path: wechat-mp-autoconfigure/src/main/java/com/github/hippoom/wechat/oauth/OpenId.java
// @Value
// public class OpenId {
// 
//     private String value;
// 
//     private OpenId(String value) {
//         this.value = value;
//     }
// 
//     public static OpenId valueOf(String value) {
//         return new OpenId(value);
//     }
// }


import com.github.hippoom.wechat.oauth.OpenId;
import java.util.Collection;
import java.util.Collections;
import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.GrantedAuthority;
package com.github.hippoom.wechat.mp.security.authentication;


public class WeChatMpOAuth2AccessTokenAuthentication implements Authentication {

    private final WxMpOAuth2AccessToken accessToken;

    public WeChatMpOAuth2AccessTokenAuthentication(WxMpOAuth2AccessToken accessToken) {
        this.accessToken = accessToken;
    }

    @Override
// Path: wechat-mp-autoconfigure/src/main/java/com/github/hippoom/wechat/oauth/OpenId.java
// @Value
// public class OpenId {
// 
//     private String value;
// 
//     private OpenId(String value) {
//         this.value = value;
//     }
// 
//     public static OpenId valueOf(String value) {
//         return new OpenId(value);
//     }
// }


// Path: wechat-mp-autoconfigure/src/main/java/com/github/hippoom/wechat/mp/security/authentication/WeChatMpOAuth2AccessTokenAuthentication.java
import com.github.hippoom.wechat.oauth.OpenId;
import java.util.Collection;
import java.util.Collections;
import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.GrantedAuthority;

package com.github.hippoom.wechat.mp.security.authentication;


public class WeChatMpOAuth2AccessTokenAuthentication implements Authentication {

    private final WxMpOAuth2AccessToken accessToken;

    public WeChatMpOAuth2AccessTokenAuthentication(WxMpOAuth2AccessToken accessToken) {
        this.accessToken = accessToken;
    }

    @Override
    public Collection<? extends GrantedAuthority> getAuthorities() {