package org.geoserver.rest; import org.restlet.Finder; import org.restlet.data.Request; import org.restlet.data.Response; import org.restlet.resource.Resource; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; public class BeanResourceFinder extends Finder implements ApplicationContextAware{ ApplicationContext myContext; String myBeanName; public void setApplicationContext(ApplicationContext con){ myContext = con; } public BeanResourceFinder(ApplicationContext con, String beanName){ myContext = con; myBeanName = beanName; } public void setBeanToFind(String name){ myBeanName = name; } public String getBeanToFind(){ return myBeanName; } public Resource findTarget(Request request, Response response){ Resource res = (Resource) myContext.getBean(getBeanToFind()); res.init(getContext(), request, response); return res; } }