Skip to content

io microsphere spring cloud client service registry MultipleServiceRegistry

github-actions[bot] edited this page Jun 21, 2026 · 6 revisions

MultipleServiceRegistry

Type: Class | Module: microsphere-spring-cloud-commons | Package: io.microsphere.spring.cloud.client.service.registry | Since: 1.0.0

Source: microsphere-spring-cloud-commons/src/main/java/io/microsphere/spring/cloud/client/service/registry/MultipleServiceRegistry.java

Overview

The Delegating ServiceRegistry for the multiple service registration

Declaration

public class MultipleServiceRegistry implements ServiceRegistry<MultipleRegistration>

Author: 韩超

Version Information

  • Introduced in: 1.0.0
  • Current Project Version: 0.2.20-SNAPSHOT

Version Compatibility

This component is tested and compatible with the following Java versions:

Java Version Status
Java 17 ✅ Compatible
Java 21 ✅ Compatible
Java 25 ✅ Compatible

Examples

Method Examples

register

ServiceRegistry<DefaultRegistration> simpleRegistry = new InMemoryServiceRegistry();
MultipleServiceRegistry registry =
    new MultipleServiceRegistry(Map.of("default", simpleRegistry));
MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
MultipleRegistration registration = new MultipleRegistration(registrations);
registry.register(registration);

deregister

MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
MultipleRegistration registration = new MultipleRegistration(registrations);
registry.register(registration);
registry.deregister(registration);

close

MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.close();

setStatus

MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.register(registration);
registry.setStatus(registration, "UP");

getStatus

MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.register(registration);
registry.setStatus(registration, "UP");
Object status = registry.getStatus(registration); // "UP"

Usage

Maven Dependency

Add the following dependency to your pom.xml:

<dependency>
    <groupId>io.github.microsphere-projects</groupId>
    <artifactId>microsphere-spring-cloud-commons</artifactId>
    <version>${microsphere-spring-cloud.version}</version>
</dependency>

Tip: Use the BOM (microsphere-spring-cloud-dependencies) for consistent version management. See the Getting Started guide.

Import

import io.microsphere.spring.cloud.client.service.registry.MultipleServiceRegistry;

API Reference

Public Methods

Method Description
register Spring Bean Name -> Registration.class
deregister Deregisters the given MultipleRegistration by delegating to each underlying
close Closes all underlying ServiceRegistry instances.
setStatus Sets the status of the given MultipleRegistration by delegating to each
getStatus Retrieves the status of the given MultipleRegistration from the default

Method Details

register

public void register(MultipleRegistration registration)

Spring Bean Name -> Registration.class / private final Map> beanNameToRegistrationTypesMap;

private ServiceRegistry defaultServiceRegistry;

private String defaultRegistrationBeanName;

/** Constructs a new MultipleServiceRegistry from the given map of bean names to ServiceRegistry instances. Each registry is mapped to its corresponding Registration type.

Example Usage:

`ServiceRegistry simpleRegistry = new InMemoryServiceRegistry();
MultipleServiceRegistry registry =
    new MultipleServiceRegistry(Map.of("default", simpleRegistry));
`

deregister

public void deregister(MultipleRegistration registration)

Deregisters the given MultipleRegistration by delegating to each underlying ServiceRegistry with the corresponding specific Registration.

Example Usage:

`MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
MultipleRegistration registration = new MultipleRegistration(registrations);
registry.register(registration);
registry.deregister(registration);
`

close

public void close()

Closes all underlying ServiceRegistry instances.

Example Usage:

`MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.close();
`

setStatus

public void setStatus(MultipleRegistration registration, String status)

Sets the status of the given MultipleRegistration by delegating to each underlying ServiceRegistry with the corresponding specific Registration.

Example Usage:

`MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.register(registration);
registry.setStatus(registration, "UP");
`

getStatus

public <T> T getStatus(MultipleRegistration registration)

Retrieves the status of the given MultipleRegistration from the default ServiceRegistry.

Example Usage:

`MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.register(registration);
registry.setStatus(registration, "UP");
Object status = registry.getStatus(registration); // "UP"
`

See Also

  • MultipleRegistration
  • MultipleAutoServiceRegistration

This documentation was auto-generated from the source code of microsphere-spring-cloud.

Home

spring-cloud-commons

spring-cloud-openfeign

Clone this wiki locally