@Override public ConfigurationRuleBuilder when(Condition condition) { for (ConfigurationRuleBuilderInterceptor interceptor : interceptors) { condition = interceptor.when(condition); } rule.when(condition); return this; }
@Override public ConfigurationRuleBuilder withId(String id) { for (ConfigurationRuleBuilderInterceptor interceptor : interceptors) { id = interceptor.withId(id); } rule.withId(id); return this; }
String conditionToString = ((RuleBuilder) condition).conditionToString(); if (!conditionToString.isEmpty()) result += ".when(" + conditionToString + ")"; String operationToString = ((RuleBuilder) operation).operationToString(); if (!operationToString.isEmpty()) result += ".perform(" + operationToString + ")"; if (getId() != null && !getId().isEmpty()) result += ".withId(\"" + getId() + "\")"; if (priority() != 0) result += ".withPriority(" + priority() + ")";
result.append("addRule()"); for (Condition condition : rule.getConditions()) for (Operation operation : rule.getOperations()) if (rule.getId() != null && !rule.getId().isEmpty()) result.append("withId(\"").append(rule.getId()).append("\")"); if (rule.priority() != 0) result.append(".withPriority(").append(rule.priority()).append(")");
private RuleBuilder(Rule rule) { store = new DefaultParameterStore(); withId(rule.getId()); if (rule instanceof Weighted) withPriority(((Weighted) rule).priority()); wrapped = rule; }
@Override public void perform(Rewrite event, EvaluationContext context) { rule.perform(event, context); }
@Override public ParameterStore getParameterStore() { return rule.getParameterStore(); }
public ConfigurableParameter<?> where(String name) { assertParameterExists(name); Parameter<?> result = getParameterStore().get(name, new DefaultParameter(name)); if (result instanceof ConfigurableParameter) return (ConfigurableParameter<?>) result; throw new RewriteException("Cannot configure read-only parameter [" + name + "]."); }
@Override public void process(ClassContext context, ShiroRoleRequired annotation, HandlerChain chain) { Condition roleCondition = new ShiroRoleCondition(annotation.value()); Condition conjunction = context.getRuleBuilder().getConditionBuilder().and(roleCondition); context.getRuleBuilder().when(conjunction); chain.proceed(); }
@Override public ConfigurationRuleBuilderWithMetadata withMetadata(Object key, Object value) { rule.put(key, value); return this; } }
@Override public ConfigurationRuleBuilder withPriority(int priority) { for (ConfigurationRuleBuilderInterceptor interceptor : interceptors) { priority = interceptor.withPriority(priority); } rule.withPriority(priority); return this; }
@Override public ConfigurationRuleParameterBuilder where(String name) { return new ConfigurationRuleParameterBuilder(this, rule.where(name)); }
@Override public String getId() { return rule.getId(); }
/** * Returns a new {@link RuleBuilder} instance. */ public static RuleBuilder define() { return new RuleBuilder(); }
result.append("addRule()"); for (Condition condition : rule.getConditions()) for (Operation operation : rule.getOperations()) if (rule.getId() != null && !rule.getId().isEmpty()) result.append("withId(\"").append(rule.getId()).append("\")"); if (rule.priority() != 0) result.append(".withPriority(").append(rule.priority()).append(")");
private RuleBuilder(Rule rule) { store = new DefaultParameterStore(); withId(rule.getId()); if (rule instanceof Weighted) withPriority(((Weighted) rule).priority()); wrapped = rule; }
@Override public void perform(Rewrite event, EvaluationContext context) { rule.perform(event, context); }