DynamicMethodsEndpointRegistrar.java 941 B

12345678910111213141516171819202122232425262728
  1. package cn.nosum.support.config;
  2. import cn.nosum.support.endpoint.DynamicMethodWrapper;
  3. import cn.nosum.support.endpoint.MethodEndpoint;
  4. import java.util.Map;
  5. import java.util.concurrent.ConcurrentHashMap;
  6. /**
  7. * Dynamic method registry.
  8. *
  9. * @author Young
  10. */
  11. public class DynamicMethodsEndpointRegistrar {
  12. private final static Map<String, Map<String, MethodEndpoint>> METHOD_ENDPOINT_MAP = new ConcurrentHashMap<>(64);
  13. public static void registerEndpoint(MethodEndpoint endpoint, DynamicMethodWrapper dynamicMethod) {
  14. if (null == METHOD_ENDPOINT_MAP.get(endpoint.getBeanName())) {
  15. METHOD_ENDPOINT_MAP.put(endpoint.getBeanName(),new ConcurrentHashMap<>(8));
  16. }
  17. METHOD_ENDPOINT_MAP.get(endpoint.getBeanName()).put(dynamicMethod.getName(), endpoint);
  18. }
  19. public static Map<String, MethodEndpoint> getEndpoint(String beanName) {
  20. return METHOD_ENDPOINT_MAP.get(beanName);
  21. }
  22. }