类 NamingMetadataManager
- java.lang.Object
-
- com.alibaba.nacos.common.notify.listener.Subscriber
-
- com.alibaba.nacos.common.notify.listener.SmartSubscriber
-
- com.alibaba.nacos.naming.core.v2.metadata.NamingMetadataManager
-
@Component public class NamingMetadataManager extends com.alibaba.nacos.common.notify.listener.SmartSubscriberNacos naming metadata manager.- 作者:
- xiweng.yy
-
-
字段概要
字段 修饰符和类型 字段 说明 private java.util.Set<ExpiredMetadataInfo>expiredMetadataInfosprivate static intINITIAL_CAPACITYprivate java.util.concurrent.ConcurrentMap<Service,java.util.concurrent.ConcurrentMap<java.lang.String,InstanceMetadata>>instanceMetadataMapprivate java.util.concurrent.ConcurrentMap<Service,ServiceMetadata>serviceMetadataMap
-
构造器概要
构造器 构造器 说明 NamingMetadataManager()
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 booleancontainInstanceMetadata(Service service, java.lang.String metadataId)Whether instance metadata for instance ofService.booleancontainServiceMetadata(Service service)Whether contain service metadata forService.java.util.Set<ExpiredMetadataInfo>getExpiredMetadataInfos()java.util.Optional<InstanceMetadata>getInstanceMetadata(Service service, java.lang.String metadataId)Get instance metadata for instance ofService, which is the original metadata object.java.util.Map<Service,java.util.concurrent.ConcurrentMap<java.lang.String,InstanceMetadata>>getInstanceMetadataSnapshot()Get instance metadata snapshot.java.util.Optional<ServiceMetadata>getServiceMetadata(Service service)Get service metadata forService, which is the original metadata object.java.util.Map<Service,ServiceMetadata>getServiceMetadataSnapshot()Get service metadata snapshot.private voidhandleClientDisconnectEvent(ClientEvent.ClientDisconnectEvent event)private voidhandleInstanceMetadataEvent(MetadataEvent.InstanceMetadataEvent event)private voidhandleServiceMetadataEvent(MetadataEvent.ServiceMetadataEvent event)voidloadInstanceMetadataSnapshot(java.util.concurrent.ConcurrentMap<Service,java.util.concurrent.ConcurrentMap<java.lang.String,InstanceMetadata>> snapshot)Load instance metadata snapshot.voidloadServiceMetadataSnapshot(java.util.concurrent.ConcurrentMap<Service,ServiceMetadata> snapshot)Load service metadata snapshot.voidonEvent(com.alibaba.nacos.common.notify.Event event)voidremoveInstanceMetadata(Service service, java.lang.String metadataId)Remove instance metadata.voidremoveServiceMetadata(Service service)Remove service metadata.java.util.List<java.lang.Class<? extends com.alibaba.nacos.common.notify.Event>>subscribeTypes()private voidupdateExpiredInfo(boolean expired, ExpiredMetadataInfo expiredMetadataInfo)voidupdateInstanceMetadata(Service service, java.lang.String metadataId, InstanceMetadata instanceMetadata)Update instance metadata.voidupdateServiceMetadata(Service service, ServiceMetadata serviceMetadata)Update service metadata.
-
-
-
字段详细资料
-
expiredMetadataInfos
private final java.util.Set<ExpiredMetadataInfo> expiredMetadataInfos
-
serviceMetadataMap
private java.util.concurrent.ConcurrentMap<Service,ServiceMetadata> serviceMetadataMap
-
instanceMetadataMap
private java.util.concurrent.ConcurrentMap<Service,java.util.concurrent.ConcurrentMap<java.lang.String,InstanceMetadata>> instanceMetadataMap
-
INITIAL_CAPACITY
private static final int INITIAL_CAPACITY
- 另请参阅:
- 常量字段值
-
-
方法详细资料
-
containServiceMetadata
public boolean containServiceMetadata(Service service)
Whether contain service metadata forService.- 参数:
service- service- 返回:
- true if contain service metadata, otherwise false
-
containInstanceMetadata
public boolean containInstanceMetadata(Service service, java.lang.String metadataId)
Whether instance metadata for instance ofService.- 参数:
service- servicemetadataId- instance metadata id- 返回:
- true if contain instance metadata, otherwise false
-
getServiceMetadata
public java.util.Optional<ServiceMetadata> getServiceMetadata(Service service)
Get service metadata forService, which is the original metadata object.This method should use only query, can't modify metadata.
- 参数:
service- service- 返回:
- service metadata
-
getInstanceMetadata
public java.util.Optional<InstanceMetadata> getInstanceMetadata(Service service, java.lang.String metadataId)
Get instance metadata for instance ofService, which is the original metadata object.This method should use only query, can't modify metadata.
- 参数:
service- servicemetadataId- instance metadata id- 返回:
- instance metadata
-
updateServiceMetadata
public void updateServiceMetadata(Service service, ServiceMetadata serviceMetadata)
Update service metadata.- 参数:
service- serviceserviceMetadata- new service metadata
-
updateInstanceMetadata
public void updateInstanceMetadata(Service service, java.lang.String metadataId, InstanceMetadata instanceMetadata)
Update instance metadata.- 参数:
service- servicemetadataId- instance metadata idinstanceMetadata- new instance metadata
-
removeServiceMetadata
public void removeServiceMetadata(Service service)
Remove service metadata.- 参数:
service- service
-
removeInstanceMetadata
public void removeInstanceMetadata(Service service, java.lang.String metadataId)
Remove instance metadata.- 参数:
service- servicemetadataId- instance metadata id
-
getServiceMetadataSnapshot
public java.util.Map<Service,ServiceMetadata> getServiceMetadataSnapshot()
Get service metadata snapshot.- 返回:
- service metadata snapshot
-
getInstanceMetadataSnapshot
public java.util.Map<Service,java.util.concurrent.ConcurrentMap<java.lang.String,InstanceMetadata>> getInstanceMetadataSnapshot()
Get instance metadata snapshot.- 返回:
- service metadata snapshot
-
loadServiceMetadataSnapshot
public void loadServiceMetadataSnapshot(java.util.concurrent.ConcurrentMap<Service,ServiceMetadata> snapshot)
Load service metadata snapshot.Service metadata need load back the service.
- 参数:
snapshot- snapshot
-
loadInstanceMetadataSnapshot
public void loadInstanceMetadataSnapshot(java.util.concurrent.ConcurrentMap<Service,java.util.concurrent.ConcurrentMap<java.lang.String,InstanceMetadata>> snapshot)
Load instance metadata snapshot.- 参数:
snapshot- snapshot
-
getExpiredMetadataInfos
public java.util.Set<ExpiredMetadataInfo> getExpiredMetadataInfos()
-
subscribeTypes
public java.util.List<java.lang.Class<? extends com.alibaba.nacos.common.notify.Event>> subscribeTypes()
- 指定者:
subscribeTypes在类中com.alibaba.nacos.common.notify.listener.SmartSubscriber
-
onEvent
public void onEvent(com.alibaba.nacos.common.notify.Event event)
- 指定者:
onEvent在类中com.alibaba.nacos.common.notify.listener.Subscriber
-
handleClientDisconnectEvent
private void handleClientDisconnectEvent(ClientEvent.ClientDisconnectEvent event)
-
handleServiceMetadataEvent
private void handleServiceMetadataEvent(MetadataEvent.ServiceMetadataEvent event)
-
handleInstanceMetadataEvent
private void handleInstanceMetadataEvent(MetadataEvent.InstanceMetadataEvent event)
-
updateExpiredInfo
private void updateExpiredInfo(boolean expired, ExpiredMetadataInfo expiredMetadataInfo)
-
-