// Path: src/main/java/me/hao0/wechat/model/base/AccessToken.java
// public class AccessToken implements Serializable {
// 
//     private static final long serialVersionUID = 6038499458891708844L;
// 
//     /**
//      * accessToken
//      */
//     private String accessToken;
// 
//     /**
//      * 有效时间(s)
//      */
//     private Integer expire;
// 
//     /**
//      * 过期时刻(ms)
//      */
//     private Long expiredAt;
// 
//     public String getAccessToken() {
//         return accessToken;
//     }
// 
//     public void setAccessToken(String accessToken) {
//         this.accessToken = accessToken;
//     }
// 
//     public Integer getExpire() {
//         return expire;
//     }
// 
//     public void setExpire(Integer expire) {
//         this.expire = expire;
//     }
// 
//     public Long getExpiredAt() {
//         return expiredAt;
//     }
// 
//     public void setExpiredAt(Long expiredAt) {
//         this.expiredAt = expiredAt;
//     }
// 
//     @Override
//     public String toString() {
//         return "AccessToken{" +
//                 "accessToken='" + accessToken + '\'' +
//                 ", expire=" + expire +
//                 ", expiredAt=" + expiredAt +
//                 '}';
//     }
// }


import me.hao0.wechat.model.base.AccessToken;
package me.hao0.wechat.loader;


/**
 * accessToken加载接口
 * Author: haolin
 * Email: haolin.h0@gmail.com
 * Date: 10/11/15
 * @since 1.3.0
 */
public interface AccessTokenLoader {

    /**
     * 获取accessToken
     * @return accessToken，""或NULL会重新从微信服务器获取，并进行refresh
     */
    String get();

    /**
     * 刷新accessToken，实现时需要保存一段时间，以免频繁从微信服务器获取
     * @param token 从微信服务器获取AccessToken
     */
// Path: src/main/java/me/hao0/wechat/model/base/AccessToken.java
// public class AccessToken implements Serializable {
// 
//     private static final long serialVersionUID = 6038499458891708844L;
// 
//     /**
//      * accessToken
//      */
//     private String accessToken;
// 
//     /**
//      * 有效时间(s)
//      */
//     private Integer expire;
// 
//     /**
//      * 过期时刻(ms)
//      */
//     private Long expiredAt;
// 
//     public String getAccessToken() {
//         return accessToken;
//     }
// 
//     public void setAccessToken(String accessToken) {
//         this.accessToken = accessToken;
//     }
// 
//     public Integer getExpire() {
//         return expire;
//     }
// 
//     public void setExpire(Integer expire) {
//         this.expire = expire;
//     }
// 
//     public Long getExpiredAt() {
//         return expiredAt;
//     }
// 
//     public void setExpiredAt(Long expiredAt) {
//         this.expiredAt = expiredAt;
//     }
// 
//     @Override
//     public String toString() {
//         return "AccessToken{" +
//                 "accessToken='" + accessToken + '\'' +
//                 ", expire=" + expire +
//                 ", expiredAt=" + expiredAt +
//                 '}';
//     }
// }


// Path: src/main/java/me/hao0/wechat/loader/AccessTokenLoader.java
import me.hao0.wechat.model.base.AccessToken;

package me.hao0.wechat.loader;


/**
 * accessToken加载接口
 * Author: haolin
 * Email: haolin.h0@gmail.com
 * Date: 10/11/15
 * @since 1.3.0
 */
public interface AccessTokenLoader {

    /**
     * 获取accessToken
     * @return accessToken，""或NULL会重新从微信服务器获取，并进行refresh
     */
    String get();

    /**
     * 刷新accessToken，实现时需要保存一段时间，以免频繁从微信服务器获取
     * @param token 从微信服务器获取AccessToken
     */
    void refresh(AccessToken token);