ff4j Flipping Strategies
基于Flipping Strategies 我们可以更好的控制feature,这样对于系统就可以有更灵活的管理
当然策略的使用还是比较简单的,同时我们也可以自己扩展策略
策略配置
- 参考实现
public class OfficeHoursFlippingStrategy extends AbstractFlipStrategy {
/** Start Hour. */
private int start = 0;
/** Hend Hour. */
private int end = 0;
/** {@inheritDoc} */
@Override
public void init(String featureName, Map<String, String> initValue) {
super.init(featureName, initValue);
assertRequiredParameter("startDate");
assertRequiredParameter("endDate");
start = new Integer(initValue.get("startDate"));
end = new Integer(initValue.get("endDate"));
}
/** {@inheritDoc} */
@Override
public boolean evaluate(String fName, FeatureStore fStore, FlippingExecutionContext ctx) {
int currentHour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY);
return (currentHour >= start && currentHour < end);
}
}
- 参考配置
<?xml version="1.0" encoding="UTF-8" ?>
<features>
<feature uid="sayHello" enable="true" description="some desc">
<flipstrategy class="org.ff4j.sample.strategy.OfficeHoursFlippingStrategy" >
<param name="startDate">9</param>
<param name="endDate">18</param>
</flipstrategy>
</feature>
</features>
说明
一些内置策略的详细使用,可以参考github 文档
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2016-04-20 HOCON 了解
2014-04-20 jQuery DataTables