package org.oddjob.jmx.server; import java.net.URL; import org.oddjob.arooa.ArooaSession; /** * An {@link HandlerFactoryProvider} that provides actions from * any number of XML Configurations found on the class path. * * @author rob * */ public class ResourceFactoryProvider implements HandlerFactoryProvider { /** The resource name. */ public static final String ACTION_FILE = "META-INF/oj-jmx.xml"; /** The session to use for finding resources and parsing * the configurations. */ private final ArooaSession session; /** * Constructor. * * @param session */ public ResourceFactoryProvider(ArooaSession session) { this.session = session; } public ServerInterfaceHandlerFactory<?, ?>[] getHandlerFactories() { URL[] urls = session.getArooaDescriptor().getClassResolver().getResources( ACTION_FILE); return new URLFactoryProvider(urls, session).getHandlerFactories(); } }