• 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 文档

    参考资料

    https://github.com/ff4j/ff4j/wiki/Flipping-Strategies

  • 相关阅读:
    I/O FileInputStream 字节类型文件输入输出流 (汉字显示乱码)
    Date 获取日期 SimpleDateFormat
    Random 随机生成数
    String StringBuffer Arrays 字符串修改 拼接
    Math
    装箱 拆箱Integer .ValueOf()
    LinkedListTest
    springboot cache
    耀眼的明星--项羽
    耀眼的明星--百年虚云
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/12739860.html
Copyright © 2020-2023  润新知