super.visitFromCollectCompositeFactPattern(pattern, isSubPattern); buf.append("@end{}"); } else { super.visitFromCollectCompositeFactPattern(pattern, isSubPattern); super.visitFromCollectCompositeFactPattern(pattern, isSubPattern);
public void visitFromCollectCompositeFactPattern(final FromCollectCompositeFactPattern pattern, final boolean isSubPattern) { if (pattern.getRightPattern() instanceof FreeFormLine) { // must skip the collect, if the any variable is empty for the FFL final FreeFormLine ffl = (FreeFormLine) pattern.getRightPattern(); final Matcher matcherTemplateKey = patternTemplateKey.matcher(ffl.getText()); while (matcherTemplateKey.find()) { String varName = matcherTemplateKey.group(1); String value = rowDataProvider.getTemplateKeyValue(varName); // All vars must be populated for a single FreeFormLine if (StringUtils.isEmpty(value)) { return; } } } super.visitFromCollectCompositeFactPattern(pattern, isSubPattern); } }
_isSubPattern); } else if (pattern.getSourcePattern() instanceof FromCollectCompositeFactPattern) { visitFromCollectCompositeFactPattern((FromCollectCompositeFactPattern) pattern.getSourcePattern(), _isSubPattern); } else if (pattern.getSourcePattern() instanceof FromEntryPointFactPattern) {
_isSubPattern); } else if (pattern.getRightPattern() instanceof FromCollectCompositeFactPattern) { visitFromCollectCompositeFactPattern((FromCollectCompositeFactPattern) pattern.getRightPattern(), _isSubPattern); } else if (pattern.getRightPattern() instanceof FromEntryPointFactPattern) {
private void renderSubPattern(final CompositeFactPattern pattern, final int subIndex) { if (pattern.getPatterns() == null || pattern.getPatterns().length == 0) { return; } IFactPattern subPattern = pattern.getPatterns()[subIndex]; if (subPattern instanceof FactPattern) { final LHSGeneratorContext gctx = generatorContextFactory.newChildGeneratorContext(rootContext, subPattern); this.generateFactPattern((FactPattern) subPattern, gctx); } else if (subPattern instanceof FromAccumulateCompositeFactPattern) { this.visitFromAccumulateCompositeFactPattern((FromAccumulateCompositeFactPattern) subPattern, true); } else if (subPattern instanceof FromCollectCompositeFactPattern) { this.visitFromCollectCompositeFactPattern((FromCollectCompositeFactPattern) subPattern, true); } else if (subPattern instanceof FromCompositeFactPattern) { this.visitFromCompositeFactPattern((FromCompositeFactPattern) subPattern, true); } else { throw new IllegalStateException("Unsupported Pattern: " + subPattern.getClass().getName()); } }
public void visitFromCollectCompositeFactPattern(final FromCollectCompositeFactPattern pattern) { visitFromCollectCompositeFactPattern(pattern, generatorContextFactory.getMaximumDepth() > 1); }