B currentComponent(Object component) { this.currentComponent = component; return _this(); }
B addComponents(Map<Object, String> components) { if (components != null) { this.integrationComponents.putAll(components); } return _this(); }
B addComponent(Object component) { this.integrationComponents.put(component, null); return _this(); }
handle(bridgeHandler); return _this();
/** * Populate the {@code Wire Tap} EI Pattern specific * {@link org.springframework.messaging.support.ChannelInterceptor} implementation * to the current {@link #currentMessageChannel}. * <p> It is useful when an implicit {@link MessageChannel} is used between endpoints: * <pre class="code"> * {@code * .transform("payload") * .wireTap(new WireTap(tapChannel().selector(m -> m.getPayload().equals("foo"))) * .channel("foo") * } * </pre> * This method can be used after any {@link #channel} for explicit {@link MessageChannel}, * but with the caution do not impact existing {@link org.springframework.messaging.support.ChannelInterceptor}s. * @param wireTapSpec the {@link WireTapSpec} to use. * <p> When this EIP-method is used in the end of flow, it appends {@code nullChannel} to terminate flow properly, * Otherwise {@code Dispatcher has no subscribers} exception is thrown for implicit {@link DirectChannel}. * @return the current {@link IntegrationFlowDefinition}. */ public B wireTap(WireTapSpec wireTapSpec) { WireTap interceptor = wireTapSpec.get(); if (!(this.currentMessageChannel instanceof ChannelInterceptorAware)) { channel(new DirectChannel()); this.implicitChannel = true; } addComponent(wireTapSpec); ((ChannelInterceptorAware) this.currentMessageChannel).addInterceptor(interceptor); return _this(); }
B currentComponent(Object component) { this.currentComponent = component; return _this(); }
B currentComponent(Object component) { this.currentComponent = component; return _this(); }
B currentComponent(Object component) { this.currentComponent = component; return _this(); }
B addComponents(Collection<Object> components) { if (components != null) { for (Object component : components) { this.integrationComponents.add(component); } } return _this(); }
B addComponent(Object component) { this.integrationComponents.put(component, null); return _this(); }
B addComponents(Map<Object, String> components) { if (components != null) { this.integrationComponents.putAll(components); } return _this(); }
B addComponent(Object component) { this.integrationComponents.add(component); return _this(); }
B addComponents(Collection<Object> components) { if (components != null) { for (Object component : components) { this.integrationComponents.add(component); } } return _this(); }
B addComponent(Object component) { this.integrationComponents.add(component); return _this(); }
/** * Populate the {@code Wire Tap} EI Pattern specific * {@link org.springframework.messaging.support.ChannelInterceptor} implementation * to the current {@link #currentMessageChannel}. * <p> It is useful when an implicit {@link MessageChannel} is used between endpoints: * <pre class="code"> * {@code * .transform("payload") * .wireTap(new WireTap(tapChannel().selector(m -> m.getPayload().equals("foo"))) * .channel("foo") * } * </pre> * This method can be used after any {@link #channel} for explicit {@link MessageChannel}, * but with the caution do not impact existing {@link org.springframework.messaging.support.ChannelInterceptor}s. * @param wireTapSpec the {@link WireTapSpec} to use. * <p> When this EIP-method is used in the end of flow, it appends {@code nullChannel} to terminate flow properly, * Otherwise {@code Dispatcher has no subscribers} exception is thrown for implicit {@link DirectChannel}. * @return the current {@link IntegrationFlowDefinition}. */ public B wireTap(WireTapSpec wireTapSpec) { WireTap interceptor = wireTapSpec.get(); if (!(this.currentMessageChannel instanceof ChannelInterceptorAware)) { channel(new DirectChannel()); this.implicitChannel = true; } addComponent(wireTapSpec); ((ChannelInterceptorAware) this.currentMessageChannel).addInterceptor(interceptor); return _this(); }
/** * Populate the {@code Wire Tap} EI Pattern specific * {@link org.springframework.messaging.support.ChannelInterceptor} implementation * to the current {@link #currentMessageChannel}. * It is useful when an implicit {@link MessageChannel} is used between endpoints: * <pre class="code"> * {@code * .transform("payload") * .wireTap(new WireTap(tapChannel().selector(m -> m.getPayload().equals("foo"))) * .channel("foo") * } * </pre> * This method can be used after any {@link #channel} for explicit {@link MessageChannel}, * but with the caution do not impact existing {@link org.springframework.messaging.support.ChannelInterceptor}s. * @param wireTapSpec the {@link WireTapSpec} to use. * @return the current {@link IntegrationFlowDefinition}. * @since 1.2 */ public B wireTap(WireTapSpec wireTapSpec) { WireTap interceptor = wireTapSpec.get(); if (this.currentMessageChannel == null || !(this.currentMessageChannel instanceof ChannelInterceptorAware)) { channel(new DirectChannel()); } addComponents(wireTapSpec.getComponentsToRegister()); ((ChannelInterceptorAware) this.currentMessageChannel).addInterceptor(interceptor); return _this(); }
/** * Populate the {@code Wire Tap} EI Pattern specific * {@link org.springframework.messaging.support.ChannelInterceptor} implementation * to the current {@link #currentMessageChannel}. * It is useful when an implicit {@link MessageChannel} is used between endpoints: * <pre class="code"> * {@code * .transform("payload") * .wireTap(new WireTap(tapChannel().selector(m -> m.getPayload().equals("foo"))) * .channel("foo") * } * </pre> * This method can be used after any {@link #channel} for explicit {@link MessageChannel}, * but with the caution do not impact existing {@link org.springframework.messaging.support.ChannelInterceptor}s. * @param wireTapSpec the {@link WireTapSpec} to use. * @return the current {@link IntegrationFlowDefinition}. * @since 1.2 */ public B wireTap(WireTapSpec wireTapSpec) { WireTap interceptor = wireTapSpec.get(); if (this.currentMessageChannel == null || !(this.currentMessageChannel instanceof ChannelInterceptorAware)) { channel(new DirectChannel()); } addComponents(wireTapSpec.getComponentsToRegister()); ((ChannelInterceptorAware) this.currentMessageChannel).addInterceptor(interceptor); return _this(); }
handle(bridgeHandler); return _this();