-
Notifications
You must be signed in to change notification settings - Fork 30
io microsphere spring cloud client service registry MultipleServiceRegistry
Type: Class | Module: microsphere-spring-cloud-commons | Package: io.microsphere.spring.cloud.client.service.registry | Since: 1.0.0
The Delegating ServiceRegistry for the multiple service registration
public class MultipleServiceRegistry implements ServiceRegistry<MultipleRegistration>Author: 韩超
-
Introduced in:
1.0.0 -
Current Project Version:
0.2.20-SNAPSHOT
This component is tested and compatible with the following Java versions:
| Java Version | Status |
|---|---|
| Java 17 | ✅ Compatible |
| Java 21 | ✅ Compatible |
| Java 25 | ✅ Compatible |
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);MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
MultipleRegistration registration = new MultipleRegistration(registrations);
registry.register(registration);
registry.deregister(registration);MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.close();MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.register(registration);
registry.setStatus(registration, "UP");MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap);
registry.register(registration);
registry.setStatus(registration, "UP");
Object status = registry.getStatus(registration); // "UP"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 io.microsphere.spring.cloud.client.service.registry.MultipleServiceRegistry;| 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 |
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));
`
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); `
public void close()Closes all underlying ServiceRegistry instances.
Example Usage:
`MultipleServiceRegistry registry = new MultipleServiceRegistry(registriesMap); registry.close(); `
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"); `
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" `
MultipleRegistrationMultipleAutoServiceRegistration
This documentation was auto-generated from the source code of microsphere-spring-cloud.
spring-cloud-commons
- AbstractServiceRegistrationEndpoint
- CommonsPropertyConstants
- ConditionalOnAutoServiceRegistrationAvailable
- ConditionalOnAutoServiceRegistrationEnabled
- ConditionalOnBlockingDiscoveryAvailable
- ConditionalOnFeaturesAvailable
- ConditionalOnFeaturesEnabled
- ConditionalOnLoadBalancerEnabled
- ConditionalOnMultipleRegistrationEnabled
- ConditionalOnReactiveDiscoveryAvailable
- ConditionalOnUtilEnabled
- ConfigurationPropertyHasFeaturesAutoConfiguration
- DefaultRegistration
- DiscoveryClientAutoConfiguration
- DiscoveryClientConstants
- DiscoveryUtils
- EventPublishingRegistrationAspect
- FaultTolerancePropertyConstants
- FeaturesConstants
- FeaturesProperties
- FeaturesUtils
- InMemoryServiceRegistry
- InstanceConstants
- LoadBalancerUtils
- MultipleAutoServiceRegistration
- MultipleRegistration
- MultipleServiceRegistry
- ReactiveDiscoveryClientAdapter
- ReactiveDiscoveryClientAutoConfiguration
- RegistrationCustomizer
- RegistrationDeregisteredEvent
- RegistrationEvent
- RegistrationMetaData
- RegistrationPreDeregisteredEvent
- RegistrationPreRegisteredEvent
- RegistrationRegisteredEvent
- ServiceDeregistrationEndpoint
- ServiceInstanceUtils
- ServiceInstancesChangedEvent
- ServiceRegistrationEndpoint
- ServiceRegistrationEndpointAutoConfiguration
- ServiceRegistryAutoConfiguration
- SimpleAutoServiceRegistration
- SimpleAutoServiceRegistrationAutoConfiguration
- SimpleServiceRegistry
- SpecificationAutoConfiguration
- SpecificationBeanPostProcessor
- SpecificationCustomizer
- SpringCloudPropertyConstants
- TomcatDynamicConfigurationListener
- TomcatFaultToleranceAutoConfiguration
- UnionDiscoveryClient
- WebFluxServiceRegistryAutoConfiguration
- WebMvcServiceRegistryAutoConfiguration
- WebServiceRegistryAutoConfiguration
- WeightedRoundRobin
spring-cloud-openfeign
- AutoRefreshCapability
- AutoRefreshCapabilityCustomizer
- CompositedRequestInterceptor
- DecoratedContract
- DecoratedDecoder
- DecoratedEncoder
- DecoratedErrorDecoder
- DecoratedFeignComponent
- DecoratedQueryMapEncoder
- DecoratedRetryer
- EnableFeignAutoRefresh
- FeignAutoConfiguration
- FeignClientAutoRefreshAutoConfiguration
- FeignClientConfigurationChangedListener
- FeignComponentRegistry
- NoOpRequestInterceptor
- Refreshable