Example usage for org.springframework.web.servlet.handler SimpleUrlHandlerMapping getHandlerMap

List of usage examples for org.springframework.web.servlet.handler SimpleUrlHandlerMapping getHandlerMap

Introduction

In this page you can find the example usage for org.springframework.web.servlet.handler SimpleUrlHandlerMapping getHandlerMap.

Prototype

public final Map<String, Object> getHandlerMap() 

Source Link

Document

Return the registered handlers as an unmodifiable Map, with the registered path as key and the handler object (or handler bean name in case of a lazy-init handler) as value.

Usage

From source file:org.openmrs.module.pagecheck.Pages.java

/**
 * Gets all URLs which have been mapped to controllers in Spring
 * @return the URLs/*from   www . j  a  v  a2  s . co m*/
 */
@SuppressWarnings("unchecked")
public static Set<String> getMappedURLs() {
    Set<String> urls = new TreeSet<String>();

    Map<String, SimpleUrlHandlerMapping> simpleHandlers = ContextProvider.getApplicationContext()
            .getBeansOfType(SimpleUrlHandlerMapping.class);
    Map<String, DefaultAnnotationHandlerMapping> annotationBeans = ContextProvider.getApplicationContext()
            .getBeansOfType(DefaultAnnotationHandlerMapping.class);

    for (SimpleUrlHandlerMapping handler : simpleHandlers.values())
        urls.addAll(handler.getHandlerMap().keySet());

    for (DefaultAnnotationHandlerMapping handler : annotationBeans.values())
        urls.addAll(handler.getHandlerMap().keySet());

    return urls;
}

From source file:org.springframework.web.servlet.resource.ResourceUrlProvider.java

protected void detectResourceHandlers(ApplicationContext appContext) {
    logger.debug("Looking for resource handler mappings");

    Map<String, SimpleUrlHandlerMapping> beans = appContext.getBeansOfType(SimpleUrlHandlerMapping.class);
    List<SimpleUrlHandlerMapping> mappings = new ArrayList<>(beans.values());
    AnnotationAwareOrderComparator.sort(mappings);

    for (SimpleUrlHandlerMapping mapping : mappings) {
        for (String pattern : mapping.getHandlerMap().keySet()) {
            Object handler = mapping.getHandlerMap().get(pattern);
            if (handler instanceof ResourceHttpRequestHandler) {
                ResourceHttpRequestHandler resourceHandler = (ResourceHttpRequestHandler) handler;
                if (logger.isDebugEnabled()) {
                    logger.debug("Found resource handler mapping: URL pattern=\"" + pattern + "\", "
                            + "locations=" + resourceHandler.getLocations() + ", " + "resolvers="
                            + resourceHandler.getResourceResolvers());
                }/*from   ww  w.j ava 2  s .  c o  m*/
                this.handlerMap.put(pattern, resourceHandler);
            }
        }
    }
}