> I was able to get this working > > from("direct:start").filter("when", "MON-FRI 9:30-18:30").to(...)
Does that matches the current system time? > but I'm struggling with the matches method. This works: > .filter( > header("anyHeader") > .matches( new LanguageExpression("when", timeExpression) )) > > but I'd like to do something like: > .filter( > header("anyHeader") > .matches( language("when", "MON-FRI") )) A static import? public class LanguageExpression { public static LanguageExpression language(String s, String pattern) { return new LanguageExpression(s, pattern); } } import static LanguageExpression.language; public class MyBuilder { ... from(...).filter(language("when", "MON-FRI")).to(...); } > or even better > .filter(header("anyHeader").matches("when", "MON-FRI")) Not sure which method to modify ... > or maybe (quite dangerous, but more flexible): > .filter(header("anyHeader").matches("{when} MON-FRI")) I found org.apache.camel.builder.BuilderSupport.header(String) : ValueBuilder. And in org.apache.camel.builder.ValueBuilder.matches(Expression) : Predicate. Maybe a Converter String>Expression? Jan