All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.smallrye.reactive.messaging.ChannelRegistry Maven / Gradle / Ivy

The newest version!
package io.smallrye.reactive.messaging;

import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.Flow.Publisher;
import java.util.concurrent.Flow.Subscriber;

import org.eclipse.microprofile.reactive.messaging.Emitter;
import org.eclipse.microprofile.reactive.messaging.Message;

public interface ChannelRegistry {

    Publisher> register(String name, Publisher> stream,
            boolean broadcast);

    Subscriber> register(String name,
            Subscriber> subscriber, boolean merge);

    void register(String name, Emitter emitter);

    void register(String name, MutinyEmitter emitter);

     void register(String name, Class emitterType, T emitter);

    List>> getPublishers(String name);

    Emitter getEmitter(String name);

    MutinyEmitter getMutinyEmitter(String name);

     T getEmitter(String name, Class emitterType);

    List>> getSubscribers(String name);

    Set getIncomingNames();

    Set getOutgoingNames();

    Set getEmitterNames();

    Map getIncomingChannels();

    Map getOutgoingChannels();

    void register(String name, PausableChannel pausable);

    PausableChannel getPausable(String name);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy