SaStorage 规范数据读写接口

This commit is contained in:
click33 2022-08-19 07:55:35 +08:00
parent e846e80dce
commit 4fac700ff0
7 changed files with 39 additions and 35 deletions

View File

@ -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;

View File

@ -1,37 +1,34 @@
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 {
/**
* 获取底层源对象
* @return see note
*/
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);
}

View File

@ -14,7 +14,8 @@ import cn.dev33.satoken.dao.SaTokenDao;
import cn.dev33.satoken.util.SaFoxUtil;
/**
* Session Model
* Session Model会话作用域的读取值对象
* <p> 在一次会话范围内: 存值取值
*
* @author kong
*

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}