[ https://issues.apache.org/jira/browse/FLINK-3318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15837834#comment-15837834 ]
ASF GitHub Bot commented on FLINK-3318: --------------------------------------- Github user kl0u commented on a diff in the pull request: https://github.com/apache/flink/pull/2361#discussion_r97789775 --- Diff: flink-libraries/flink-cep/src/main/java/org/apache/flink/cep/nfa/compiler/NFACompiler.java --- @@ -80,25 +82,17 @@ // return a factory for empty NFAs return new NFAFactoryImpl<T>(inputTypeSerializer, 0, Collections.<State<T>>emptyList(), timeoutHandling); } else { + ArrayList<Pattern<T, ?>> patterns = createPatternsList(pattern); --- End diff -- The `patterns` can become a `List` instead of `ArrayList`. It is good to have the most generic type possible as argument or return type, as implementations may change. > Add support for quantifiers to CEP's pattern API > ------------------------------------------------ > > Key: FLINK-3318 > URL: https://issues.apache.org/jira/browse/FLINK-3318 > Project: Flink > Issue Type: Improvement > Components: CEP > Affects Versions: 1.0.0 > Reporter: Till Rohrmann > Assignee: Ivan Mushketyk > Priority: Minor > > It would be a good addition to extend the pattern API to support quantifiers > known from regular expressions (e.g. Kleene star, ?, +, or count bounds). > This would considerably enrich the set of supported patterns. > Implementing the count bounds could be done by unrolling the pattern state. > In order to support the Kleene star operator, the {{NFACompiler}} has to be > extended to insert epsilon-transition between a Kleene start state and the > succeeding pattern state. In order to support {{?}}, one could insert two > paths from the preceding state, one which accepts the event and another which > directly goes into the next pattern state. -- This message was sent by Atlassian JIRA (v6.3.4#6332)