/** * {@inheritDoc} */ @Override public ResourceIterator findResources(ResourceNameIterator resourceNames) { return findResourceClasses(resourceNames); }
public boolean hasNext() { if (resource == null) { resource = getNextResource(); } return resource != null; }
public boolean hasNext() { if (resource == null) { resource = getNextClass(); } return resource != null; }
public static ResourceClassIterator getResourceClassIterator(Class spi) { ResourceNameIterator it = getNameDiscoverer().findResourceNames(spi.getName()); return new DiscoverClasses(loaders).findResourceClasses(it); }
/** * @return the DiscoverClasses instance to use to locate services. * This object is lazily created if it has not been configured. */ public DiscoverClasses getDiscoverClasses() { if ( discovery == null ) { ClassLoaders loaders = ClassLoaders.getAppLoaders(TagLibrary.class, getClass(), false); discovery = new DiscoverClasses(loaders); } return discovery; }
ResourceClassIterator iter = discovery.findResourceClasses(name); while (iter.hasNext()) { ResourceClass resource = iter.nextResourceClass();
public static ResourceClassIterator getResourceClassIterator(Class spi) { ResourceNameIterator it = getNameDiscoverer().findResourceNames(spi.getName()); return new DiscoverClasses(loaders).findResourceClasses(it); }
/** * @return the DiscoverClasses instance to use to locate services. * This object is lazily created if it has not been configured. */ public DiscoverClasses getDiscoverClasses() { if ( discovery == null ) { ClassLoaders loaders = ClassLoaders.getAppLoaders(TagLibrary.class, getClass(), false); discovery = new DiscoverClasses(loaders); } return discovery; }
ResourceClassIterator iter = discovery.findResourceClasses(name); while (iter.hasNext()) { ResourceClass resource = iter.nextResourceClass();
/** * {@inheritDoc} */ @Override public ResourceIterator findResources(String resourceName) { return findResourceClasses(resourceName); }
public static ResourceClassIterator getResourceClassIterator(Class spi) { ResourceNameIterator it = getNameDiscoverer().findResourceNames(spi.getName()); return new DiscoverClasses(loaders).findResourceClasses(it); }
/** * @return the DiscoverClasses instance to use to locate services. * This object is lazily created if it has not been configured. */ public DiscoverClasses getDiscoverClasses() { if ( discovery == null ) { ClassLoaders loaders = ClassLoaders.getAppLoaders(TagLibrary.class, getClass(), false); discovery = new DiscoverClasses(loaders); } return discovery; }
ResourceClassIterator iter = discovery.findResourceClasses(name); while (iter.hasNext()) { ResourceClass resource = iter.nextResourceClass();
/** * {@inheritDoc} */ @Override public ResourceNameIterator findResourceNames(String resourceName) { return findResourceClasses(resourceName); }
/** * Returns the default class, loading it if necessary * and verifying that it implements the SPI * (this forces the check, no way out..). * * @param <S> Any type extends the SPI type * @param spi non-null SPI * @param loaders Used only if class needs to be loaded. * @return The default Class. */ public <S extends T> Class<S> getDefaultClass(SPInterface<T> spi, ClassLoaders loaders) { if (defaultClass == null) { DiscoverClasses<T> classDiscovery = new DiscoverClasses<T>(loaders); ResourceClassIterator<T> classes = classDiscovery.findResourceClasses(getDefaultName()); if (classes.hasNext()) { ResourceClass<T> info = classes.nextResourceClass(); try { defaultClass = info.loadClass(); } catch (Exception e) { // ignore } } } if (defaultClass != null) { spi.verifyAncestory(defaultClass); } @SuppressWarnings("unchecked") // the SPInterface.verifyAncestory already asserted Class<S> returned = (Class<S>) defaultClass; return returned; }
/** * @return the DiscoverClasses instance to use to locate services. * This object is lazily created if it has not been configured. */ public DiscoverClasses getDiscoverClasses() { if ( discovery == null ) { ClassLoaders loaders = ClassLoaders.getAppLoaders(TagLibrary.class, getClass(), false); discovery = new DiscoverClasses(loaders); } return discovery; }
/** * {@inheritDoc} */ @Override public ResourceNameIterator findResourceNames(ResourceNameIterator resourceNames) { return findResourceClasses(resourceNames); }
(new DiscoverClasses<T>(loaders)).findResourceClasses(servicesIter);
ResourceNameIterator classes = new DiscoverClasses().findResourceClasses(Object.class); while (classes.hasNext()) { String className = classes.nextResourceClass().getName(); Class clazz = classes.nextResourceClass().loadClass(); }
private ResourceClass<T> getNextResource() { while (inputNames.hasNext() && (classes == null || !classes.hasNext())) { classes = findResourceClasses(inputNames.nextResourceName()); } return (classes != null && classes.hasNext()) ? classes.nextResourceClass() : null; } };