public void process()

in library/camel-kamelets-utils/src/main/java/org/apache/camel/kamelets/utils/transform/RegexRouter.java [29:47]


    public void process(@ExchangeProperty("regex") String regex, @ExchangeProperty("replacement") String replacement, Exchange ex) {
        Pattern regexPattern = Pattern.compile(regex);
        String topicName = ex.getMessage().getHeader(KafkaConstants.TOPIC, String.class);
        if (ObjectHelper.isNotEmpty(topicName)) {
            final Matcher matcher = regexPattern.matcher(topicName);
            if (matcher.matches()) {
                final String topicUpdated = matcher.replaceFirst(replacement);
                ex.getMessage().setHeader(KafkaConstants.OVERRIDE_TOPIC, topicUpdated);
            }
        }
        String ceType = ex.getMessage().getHeader("ce-type", String.class);
        if (ObjectHelper.isNotEmpty(ceType)) {
            final Matcher matcher = regexPattern.matcher(ceType);
            if (matcher.matches()) {
                final String ceTypeUpdated = matcher.replaceFirst(replacement);
                ex.getMessage().setHeader("ce-type", ceTypeUpdated);
            }
        }
    }