public ChannelEventHandler(ChannelConnection connection, boolean channelEvent) { this.channelEvent = channelEvent; stream = connection.getEventStream(); }
public JDKEventHandler(ChannelConnection connection) { this.stream = connection.getEventStream(); this.closeable = connection.getCloseable(); }
public JDKEventHandler(ChannelConnection connection) { this.stream = connection.getEventStream(); this.closeable = connection.getCloseable(); }
public static boolean isChannelEvent(ChannelConnection connection) { return ChannelEvent.class.isAssignableFrom(connection.getEventStream().getEventType()); }
public void handle(Object event, boolean endOfBatch) { for (ChannelConnection connection : connections) { connection.getEventStream().getHeadHandler().handle(event, endOfBatch); } } }
public void attach(ChannelConnection connection) { numberProducers++; EventStream stream = connection.getEventStream(); stream.getTailHandler().setNext(this); }
public void run() { for (ChannelConnection connection : connections) { EventStream stream = connection.getEventStream(); // force end of batch stream.getHeadHandler().handle(event, true); } } }
public void handle(Object event, boolean endOfBatch) { for (ChannelConnection connection : connections) { connection.getEventStream().getHeadHandler().handle(event, endOfBatch); } } }
public void run() { for (ChannelConnection connection : connections) { EventStream stream = connection.getEventStream(); // force end of batch stream.getHeadHandler().handle(event, true); } } }
private EventStreamHandler createSubscriberHandlers(ChannelConnection connection, ClassLoader loader) throws Fabric3Exception { DataType dataType = getEventType(connection.getEventStream()); EventStreamHandler head; if (dataType.getType().equals(byte[][].class)) { // multi-frame data head = handlerFactory.createHandler(TWO_DIMENSIONAL_BYTES, dataType, Collections.<Class<?>>emptyList(), loader); } else { // single frame data head = handlerFactory.createHandler(BYTES, dataType, Collections.<Class<?>>emptyList(), loader); } return head; }
public void onMessage(Message message) { for (ConnectionPair pair : connections) { pair.connection.getEventStream().getHeadHandler().handle(message.getBody(), false); } }
private void attachConnection(ChannelConnection connection, Publisher publisher, ClassLoader loader) throws Fabric3Exception { EventStream stream = connection.getEventStream(); DataType dataType = getEventType(stream); EventStreamHandler transformer; if (dataType.getType().equals(byte[][].class)) { // multi-frame data transformer = handlerFactory.createHandler(dataType, TWO_DIMENSIONAL_BYTES, Collections.<Class<?>>emptyList(), loader); } else { // single frame data transformer = handlerFactory.createHandler(dataType, BYTES, Collections.<Class<?>>emptyList(), loader); } stream.addHandler(transformer); stream.addHandler(new PublisherHandler(publisher)); }
public void attach(ChannelConnection connection) { EventStream stream = connection.getEventStream(); String topic = connection.getTopic(); TopicHandlers topicHandlers = getTopicHandlers(topic, true); stream.getTailHandler().setNext(topicHandlers.inHandler); }
public void attach(ChannelConnection connection) { EventStream stream = connection.getEventStream(); String topic = connection.getTopic(); TopicHandlers topicHandlers = getTopicHandlers(topic, true); stream.getTailHandler().setNext(topicHandlers.inHandler); }
public void attach(PhysicalConnectionSource source, NonManagedConnectionTarget target, ChannelConnection connection) { if (target.isDirectConnection()) { target.setCloseable(connection.getCloseable()); target.setProxy(connection.getDirectConnection().get().get()); } else { Consumer<Object> consumer = Cast.cast(target.getConsumer()); EventStream stream = connection.getEventStream(); Class<?> type = stream.getEventType(); if (!Object.class.equals(type)) { // add a filter if the event type is not Object stream.addHandler(new FilterHandler(type)); } stream.addHandler((event, endOfBatch) -> consumer.accept(event)); } }
public void attach(PhysicalConnectionSource source, NonManagedConnectionTarget target, ChannelConnection connection) { if (target.isDirectConnection()) { target.setCloseable(connection.getCloseable()); target.setProxy(connection.getDirectConnection().get().get()); } else { Consumer<Object> consumer = Cast.cast(target.getConsumer()); EventStream stream = connection.getEventStream(); Class<?> type = stream.getEventType(); if (!Object.class.equals(type)) { // add a filter if the event type is not Object stream.addHandler(new FilterHandler(type)); } stream.addHandler((event, endOfBatch) -> consumer.accept(event)); } }
@SuppressWarnings("unchecked") public void attach(PhysicalConnectionSource source, NATSConnectionTarget target, ChannelConnection connection) { Nats nats = connectionManager.getNats(target); if (!source.isDirectConnection()) { String topic = target.getTopic() != null ? target.getTopic() : target.getDefaultTopic(); String serializerName = target.getData().getSerializer(); Function<Object, String> serializer = serializerName != null ? InstanceResolver.getInstance(serializerName, info, cm) : null; connection.getEventStream().addHandler((event, batch) -> { String serialized = serializer != null ? serializer.apply(event) : event.toString(); nats.publish(topic, serialized); }); connection.setCloseable(() -> connectionManager.release(target.getChannelUri(), topic)); } }
public void attach(PhysicalConnectionSource source, SpringConnectionTarget target, ChannelConnection connection) { URI targetUri = target.getUri(); SpringComponent component = (SpringComponent) manager.getComponent(targetUri); if (component == null) { throw new Fabric3Exception("Target component not found: " + targetUri); } String beanName = target.getBeanName(); JavaType type = target.getType(); String consumerName = target.getMethodName(); SpringEventStreamHandler handler = new SpringEventStreamHandler(beanName, consumerName, type, component); EventStream stream = connection.getEventStream(); stream.addHandler(handler); }
public void attach(PhysicalConnectionSource source, SpringConnectionTarget target, ChannelConnection connection) { URI targetUri = target.getUri(); SpringComponent component = (SpringComponent) manager.getComponent(targetUri); if (component == null) { throw new Fabric3Exception("Target component not found: " + targetUri); } String beanName = target.getBeanName(); JavaType type = target.getType(); String consumerName = target.getMethodName(); SpringEventStreamHandler handler = new SpringEventStreamHandler(beanName, consumerName, type, component); EventStream stream = connection.getEventStream(); stream.addHandler(handler); }
public void attach(PhysicalConnectionSource source, JmsConnectionTarget target, ChannelConnection connection) { // resolve the connection factories and destinations JmsBindingMetadata metadata = target.getMetadata(); ConnectionFactoryDefinition connectionFactoryDefinition = metadata.getConnectionFactory(); HeadersDefinition headers = metadata.getHeaders(); boolean persistent = DeliveryMode.PERSISTENT == headers.getDeliveryMode() || headers.getDeliveryMode() == null; ConnectionFactory connectionFactory = resolver.resolve(connectionFactoryDefinition); Destination destinationDefinition = metadata.getDestination(); javax.jms.Destination destination = resolver.resolve(destinationDefinition, connectionFactory); EventStream stream = connection.getEventStream(); JmsEventStreamHandler handler = new JmsEventStreamHandler(destination, connectionFactory, persistent); stream.addHandler(handler); }