public static ProcessorDefinition<?> setHeader(ProcessorDefinition<?> self, String name, Closure<?> expression) { return self.setHeader(name, toExpression(expression)); }
@Override public Optional<ProcessorDefinition> handle(SetHeaders step, ProcessorDefinition route, SyndesisRouteBuilder routeBuilder) { Map<String, Object> headers = step.getHeaders(); if (headers != null) { for (Map.Entry<String, Object> entry : headers.entrySet()) { route.setHeader(entry.getKey(), routeBuilder.constant(entry.getValue())); } } return Optional.empty(); } }
@SuppressWarnings({"PMD.AvoidReassigningParameters", "PMD.AvoidDeeplyNestedIfStmts"}) @Override public Optional<ProcessorDefinition<?>> handle(Step step, final ProcessorDefinition<?> route, IntegrationRouteBuilder builder, String flowIndex, String stepIndex) { ObjectHelper.notNull(route, "route"); final Map<String, String> props = step.getConfiguredProperties(); final String action = props.getOrDefault("action", "set"); if (ObjectHelper.equal(action, "set", true)) { props.entrySet().stream() .filter(e -> !"action".equalsIgnoreCase(e.getKey())) .forEach(e-> route.setHeader(e.getKey()).constant(e.getValue())); } else if (ObjectHelper.equal(action, "remove", true)) { props.entrySet().stream() .filter(e -> !"action".equalsIgnoreCase(e.getKey())) .forEach(e-> route.removeHeaders(e.getKey())); } else { throw new IllegalArgumentException("Unknown action:" + action); } return Optional.of(route); } }
@Override public Optional<ProcessorDefinition<?>> configure(CamelContext context, ProcessorDefinition<?> definition, Map<String, Object> map) { map.forEach((k, v) -> definition.setHeader(k).constant(v)); return Optional.empty(); } }
@Override public void configure() throws Exception { from("file://in").id("file2jms") .to("jms:person"); from("jms:person").id("personJms2Rest") // .onException(ConnectException.class).log("Exception processing message.. does the personservice run?").end() .setHeader("person_id", xpath("/person/id").stringResult()) .to("log:test") .setHeader(Exchange.HTTP_METHOD, constant("PUT")) .setHeader(Exchange.CONTENT_TYPE, constant("text/xml")) .setHeader(Exchange.HTTP_URI, simple("${properties:personServiceUri}/${header.person_id}")) // .to("http://dummy"); }
route.setHeader(MustacheConstants.MUSTACHE_TEMPLATE).constant(template);
route.setHeader(entry.getKey(), builder.constant(entry.getValue()));
route.setHeader(entry.getKey(), builder.constant(entry.getValue()));
parent = parent.setHeader(IntegrationLoggingConstants.FLOW_ID, constant(flowId)); parent = definition.get(); parent = configureRouteDefinition(parent, flowName, flowId, stepId); parent = parent.setHeader(IntegrationLoggingConstants.FLOW_ID, constant(flowId)); parent = parent.setHeader(IntegrationLoggingConstants.STEP_ID, constant(stepId)); parent = configureConnectorSplit(step, parent, flowIndex, stepIndex).orElse(parent); parent = parent.process(OutMessageCaptureProcessor.INSTANCE); parent = parent.setHeader(IntegrationLoggingConstants.STEP_ID, constant(stepId)); parent = parent.process(new OutMessageCaptureProcessor()); } else {
String key = entry.getKey(); Object value = entry.getValue(); route.setHeader(key, constant(value));
.log("[EXAMPLE EMAIL] Sending notification email") .setHeader("to").jsonpath("$.notification.to") .setHeader("subject", constant("Notification")) .setHeader("payload").jsonpath("$.notification.message")
.setHeader(WonCamelConstants.MESSAGE_HEADER, header(WonCamelConstants.ORIGINAL_MESSAGE_HEADER))
.setHeader(MSG_HEADER, body()) .transform(simple("${body.payload}"))
.setHeader(Exchange.HTTP_RESPONSE_CODE).constant("200")