
io.scalecube.services.discovery.api.ServiceDiscovery Maven / Gradle / Ivy
package io.scalecube.services.discovery.api;
import io.scalecube.net.Address;
import io.scalecube.services.ServiceEndpoint;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
public interface ServiceDiscovery {
/**
* Returns service discovery address.
*
* @return discovery address
*/
Address address();
/**
* Returns service endpoint.
*
* @return service endpoint
*/
ServiceEndpoint serviceEndpoint();
/**
* Function to subscribe and listen on {@code ServiceDiscoveryEvent} events.
*
* @return stream of {@code ServiceDiscoveryEvent} events
*/
Flux listenDiscovery();
/**
* Starting this {@code ServiceDiscovery} instance.
*
* @return started {@code ServiceDiscovery} instance
*/
Mono start();
/**
* Shutting down this {@code ServiceDiscovery} instance.
*
* @return async signal of the result
*/
Mono shutdown();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy