zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    第十二次作业
    Beta 冲刺(7/7)
    Beta 冲刺(6/7)
    Beta 冲刺(5/7)
    Beta 冲刺(4/7)
    Beta 冲刺(3/7)
    Beta 冲刺(2/7)
    第十次作业
    Beta 冲刺(1/7)
    福大软工 · 最终作业
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/12739860.html
Copyright © 2011-2022 走看看