Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
justauth
JustAuth
提交
57cb7fb0
J
JustAuth
项目概览
justauth
/
JustAuth
1 年多 前同步成功
通知
394
Star
15212
Fork
2708
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
JustAuth
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
57cb7fb0
编写于
8月 02, 2019
作者:
不合群的混子
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
✨
抽取 cache 接口,方便用户自行集成 cache
上级
92bc4ab3
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
87 addition
and
19 deletion
+87
-19
src/main/java/me/zhyd/oauth/cache/AuthCacheScheduler.java
src/main/java/me/zhyd/oauth/cache/AuthCacheScheduler.java
+3
-0
src/main/java/me/zhyd/oauth/cache/AuthDefaultStateCache.java
src/main/java/me/zhyd/oauth/cache/AuthDefaultStateCache.java
+65
-0
src/main/java/me/zhyd/oauth/cache/AuthStateCache.java
src/main/java/me/zhyd/oauth/cache/AuthStateCache.java
+11
-18
src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
+8
-1
未找到文件。
src/main/java/me/zhyd/oauth/cache/AuthCacheScheduler.java
浏览文件 @
57cb7fb0
...
...
@@ -13,6 +13,9 @@ import java.util.concurrent.atomic.AtomicInteger;
*/
public
enum
AuthCacheScheduler
{
/**
* 当前实例
*/
INSTANCE
;
private
AtomicInteger
cacheTaskNumber
=
new
AtomicInteger
(
1
);
...
...
src/main/java/me/zhyd/oauth/cache/AuthDefaultStateCache.java
0 → 100644
浏览文件 @
57cb7fb0
package
me.zhyd.oauth.cache
;
/**
* @author yadong.zhang (yadong.zhang0415(a)gmail.com)
* @version 1.0
* @since 1.8
*/
public
enum
AuthDefaultStateCache
implements
AuthStateCache
{
/**
* 当前实例
*/
INSTANCE
;
private
AuthCache
authCache
;
AuthDefaultStateCache
()
{
authCache
=
new
AuthDefaultCache
();
}
/**
* 存入缓存
*
* @param key 缓存key
* @param value 缓存内容
*/
@Override
public
void
cache
(
String
key
,
String
value
)
{
authCache
.
set
(
key
,
value
);
}
/**
* 存入缓存
*
* @param key 缓存key
* @param value 缓存内容
* @param timeout 指定缓存过期时间(毫秒)
*/
@Override
public
void
cache
(
String
key
,
String
value
,
long
timeout
)
{
authCache
.
set
(
key
,
value
,
timeout
);
}
/**
* 获取缓存内容
*
* @param key 缓存key
* @return 缓存内容
*/
@Override
public
String
get
(
String
key
)
{
return
authCache
.
get
(
key
);
}
/**
* 是否存在key,如果对应key的value值已过期,也返回false
*
* @param key 缓存key
* @return true:存在key,并且value没过期;false:key不存在或者已过期
*/
@Override
public
boolean
containsKey
(
String
key
)
{
return
authCache
.
containsKey
(
key
);
}
}
src/main/java/me/zhyd/oauth/cache/AuthStateCache.java
浏览文件 @
57cb7fb0
package
me.zhyd.oauth.cache
;
/**
* @author yadong.zhang (yadong.zhang0415(a)gmail.com)
* @version 1.0
* @since 1.8
* <p>
* State缓存接口,方便用户扩展
* </p>
*
* @author yangkai.shen
* @date Created in 2019-08-02 10:55
*/
public
class
AuthStateCache
{
private
static
AuthCache
authCache
=
new
AuthDefaultCache
();
public
interface
AuthStateCache
{
/**
* 存入缓存
*
* @param key 缓存key
* @param value 缓存内容
*/
public
static
void
cache
(
String
key
,
String
value
)
{
authCache
.
set
(
key
,
value
);
}
void
cache
(
String
key
,
String
value
);
/**
* 存入缓存
...
...
@@ -25,9 +24,7 @@ public class AuthStateCache {
* @param value 缓存内容
* @param timeout 指定缓存过期时间(毫秒)
*/
public
static
void
cache
(
String
key
,
String
value
,
long
timeout
)
{
authCache
.
set
(
key
,
value
,
timeout
);
}
void
cache
(
String
key
,
String
value
,
long
timeout
);
/**
* 获取缓存内容
...
...
@@ -35,9 +32,7 @@ public class AuthStateCache {
* @param key 缓存key
* @return 缓存内容
*/
public
static
String
get
(
String
key
)
{
return
authCache
.
get
(
key
);
}
String
get
(
String
key
);
/**
* 是否存在key,如果对应key的value值已过期,也返回false
...
...
@@ -45,7 +40,5 @@ public class AuthStateCache {
* @param key 缓存key
* @return true:存在key,并且value没过期;false:key不存在或者已过期
*/
public
static
boolean
containsKey
(
String
key
)
{
return
authCache
.
containsKey
(
key
);
}
boolean
containsKey
(
String
key
);
}
src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
浏览文件 @
57cb7fb0
...
...
@@ -3,6 +3,7 @@ package me.zhyd.oauth.request;
import
cn.hutool.http.HttpRequest
;
import
cn.hutool.http.HttpResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
me.zhyd.oauth.cache.AuthDefaultStateCache
;
import
me.zhyd.oauth.cache.AuthStateCache
;
import
me.zhyd.oauth.config.AuthConfig
;
import
me.zhyd.oauth.config.AuthSource
;
...
...
@@ -28,10 +29,16 @@ import me.zhyd.oauth.utils.UuidUtils;
public
abstract
class
AuthDefaultRequest
implements
AuthRequest
{
protected
AuthConfig
config
;
protected
AuthSource
source
;
protected
AuthStateCache
authStateCache
;
public
AuthDefaultRequest
(
AuthConfig
config
,
AuthSource
source
)
{
this
(
config
,
source
,
AuthDefaultStateCache
.
INSTANCE
);
}
public
AuthDefaultRequest
(
AuthConfig
config
,
AuthSource
source
,
AuthStateCache
authStateCache
)
{
this
.
config
=
config
;
this
.
source
=
source
;
this
.
authStateCache
=
authStateCache
;
if
(!
AuthChecker
.
isSupportedAuth
(
config
,
source
))
{
throw
new
AuthException
(
AuthResponseStatus
.
PARAMETER_INCOMPLETE
);
}
...
...
@@ -189,7 +196,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
state
=
UuidUtils
.
getUUID
();
}
// 缓存state
A
uthStateCache
.
cache
(
state
,
state
);
a
uthStateCache
.
cache
(
state
,
state
);
return
state
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录