mirror of
https://gitee.com/dromara/sa-token.git
synced 2025-06-28 13:34:18 +08:00
SaStorage 规范数据读写接口
This commit is contained in:
parent
e846e80dce
commit
4fac700ff0
@ -8,6 +8,7 @@ import cn.dev33.satoken.dao.SaTokenDao;
|
||||
|
||||
/**
|
||||
* Application Model,全局作用域的读取值对象
|
||||
* <p> 在应用全局范围内: 存值、取值
|
||||
*
|
||||
* @author kong
|
||||
* @since: 2022-8-17
|
||||
@ -33,11 +34,8 @@ public class SaApplication implements SaSetValueInterface {
|
||||
return set(key, value, SaTokenDao.NEVER_EXPIRE);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删值
|
||||
* @param key 要删除的key
|
||||
* @return 对象自身
|
||||
*/
|
||||
/** 删值 */
|
||||
@Override
|
||||
public SaApplication delete(String key) {
|
||||
SaManager.getSaTokenDao().deleteObject(splicingDataKey(key));
|
||||
return this;
|
||||
|
@ -1,12 +1,15 @@
|
||||
package cn.dev33.satoken.context.model;
|
||||
|
||||
import cn.dev33.satoken.application.SaSetValueInterface;
|
||||
|
||||
/**
|
||||
* [存储器] 包装类
|
||||
* <p> 在 Request作用域里: 存值、取值
|
||||
* Storage Model,请求作用域的读取值对象
|
||||
* <p> 在一次请求范围内: 存值、取值
|
||||
*
|
||||
* @author kong
|
||||
*
|
||||
*/
|
||||
public interface SaStorage {
|
||||
public interface SaStorage extends SaSetValueInterface {
|
||||
|
||||
/**
|
||||
* 获取底层源对象
|
||||
@ -14,24 +17,18 @@ public interface SaStorage {
|
||||
*/
|
||||
public Object getSource();
|
||||
|
||||
/**
|
||||
* 在 [Request作用域] 里写入一个值
|
||||
* @param key 键
|
||||
* @param value 值
|
||||
*/
|
||||
public void set(String key, Object value);
|
||||
// ---- 实现接口存取值方法
|
||||
|
||||
/**
|
||||
* 在 [Request作用域] 里获取一个值
|
||||
* @param key 键
|
||||
* @return 值
|
||||
*/
|
||||
/** 取值 */
|
||||
@Override
|
||||
public Object get(String key);
|
||||
|
||||
/**
|
||||
* 在 [Request作用域] 里删除一个值
|
||||
* @param key 键
|
||||
*/
|
||||
public void delete(String key);
|
||||
/** 写值 */
|
||||
@Override
|
||||
public SaStorage set(String key, Object value);
|
||||
|
||||
/** 删值 */
|
||||
@Override
|
||||
public SaStorage delete(String key);
|
||||
|
||||
}
|
||||
|
@ -14,7 +14,8 @@ import cn.dev33.satoken.dao.SaTokenDao;
|
||||
import cn.dev33.satoken.util.SaFoxUtil;
|
||||
|
||||
/**
|
||||
* Session Model
|
||||
* Session Model,会话作用域的读取值对象
|
||||
* <p> 在一次会话范围内: 存值、取值
|
||||
*
|
||||
* @author kong
|
||||
*
|
||||
|
@ -37,12 +37,13 @@ public class SaStorageForDubbo implements SaStorage {
|
||||
* 在 [Request作用域] 里写入一个值
|
||||
*/
|
||||
@Override
|
||||
public void set(String key, Object value) {
|
||||
public SaStorageForDubbo set(String key, Object value) {
|
||||
rpcContext.setObjectAttachment(key, value);
|
||||
// 如果是token写入,则回传到Consumer端
|
||||
if(key.equals(SaTokenConsts.JUST_CREATED_NOT_PREFIX)) {
|
||||
RpcContext.getServerContext().setAttachment(key, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -57,8 +58,9 @@ public class SaStorageForDubbo implements SaStorage {
|
||||
* 在 [Request作用域] 里删除一个值
|
||||
*/
|
||||
@Override
|
||||
public void delete(String key) {
|
||||
public SaStorageForDubbo delete(String key) {
|
||||
rpcContext.removeAttachment(key);
|
||||
return this;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -36,8 +36,9 @@ public class SaStorageForReactor implements SaStorage {
|
||||
* 在 [Request作用域] 里写入一个值
|
||||
*/
|
||||
@Override
|
||||
public void set(String key, Object value) {
|
||||
public SaStorageForReactor set(String key, Object value) {
|
||||
exchange.getAttributes().put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -52,8 +53,9 @@ public class SaStorageForReactor implements SaStorage {
|
||||
* 在 [Request作用域] 里删除一个值
|
||||
*/
|
||||
@Override
|
||||
public void delete(String key) {
|
||||
public SaStorageForReactor delete(String key) {
|
||||
exchange.getAttributes().remove(key);
|
||||
return this;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -36,8 +36,9 @@ public class SaStorageForServlet implements SaStorage {
|
||||
* 在 [Request作用域] 里写入一个值
|
||||
*/
|
||||
@Override
|
||||
public void set(String key, Object value) {
|
||||
public SaStorageForServlet set(String key, Object value) {
|
||||
request.setAttribute(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -52,8 +53,9 @@ public class SaStorageForServlet implements SaStorage {
|
||||
* 在 [Request作用域] 里删除一个值
|
||||
*/
|
||||
@Override
|
||||
public void delete(String key) {
|
||||
public SaStorageForServlet delete(String key) {
|
||||
request.removeAttribute(key);
|
||||
return this;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -21,8 +21,9 @@ public class SaStorageForSolon implements SaStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(String key, Object value) {
|
||||
public SaStorageForSolon set(String key, Object value) {
|
||||
ctx.attrSet(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -31,7 +32,8 @@ public class SaStorageForSolon implements SaStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delete(String key) {
|
||||
public SaStorageForSolon delete(String key) {
|
||||
ctx.attrMap().remove(key);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user