public static void AddMetadata(int serviceKey, ServiceTypeMetadata metadata) { if (!_serviceTypesMetadataList.ContainsKey(serviceKey)) { if (metadata != null) { _serviceTypesMetadataList.TryAdd(serviceKey, metadata); } } }
public static void AddMetadata(Type serviceType, ServiceTypeMetadata metadata) { var serviceKey = serviceType.GetServiceTypeKey(); if (!_serviceTypesMetadataList.ContainsKey(serviceKey)) { if (metadata != null) { _serviceTypesMetadataList.TryAdd(serviceKey, metadata); } else { _serviceTypesMetadataList.TryAdd(serviceKey, GetDefaultServiceTypeMetadata(serviceType)); } } }
public static ServiceTypeMetadata GetServiceTypeMetadata(Type serviceType, int serviceKey) { int key = serviceKey; if (key == 0) { key = serviceType.GetHashCode(); } ServiceTypeMetadata metadata = null; if (!_serviceTypesMetadataList.TryGetValue(key, out metadata)) { metadata = GetDefaultServiceTypeMetadata(serviceType); } return(metadata); }