private Iterable<ProjectProvider> getProviders() { AddonRegistry addonRegistry = getAddonRegistry(); if (addonRegistry.getVersion() != version) { version = addonRegistry.getVersion(); providers.clear(); for (ProjectProvider provider : addonRegistry.getServices(ProjectProvider.class)) { providers.add(provider); } } return providers; }
private Iterable<ResourceGenerator> getGenerators() { if (getAddonRegistry().getVersion() != version) { version = getAddonRegistry().getVersion(); generators.clear(); for (ResourceGenerator generator : getAddonRegistry().getServices(ResourceGenerator.class)) { generators.add(generator); } } return generators; }
@Override public Set<ClassLoader> call() throws Exception { if (furnace.getStatus().isStarted()) { long registryVersion = furnace.getAddonRegistry().getVersion(); if (registryVersion != lastRegistryVersion) { result.clear(); lastRegistryVersion = registryVersion; for (Addon addon : furnace.getAddonRegistry().getAddons()) { ClassLoader classLoader = addon.getClassLoader(); if (classLoader != null) result.add(classLoader); } } } return result; } };
@Override public Set<ClassLoader> call() throws Exception { if (furnace.getStatus().isStarted()) { long registryVersion = furnace.getAddonRegistry().getVersion(); if (registryVersion != lastRegistryVersion) { result.clear(); lastRegistryVersion = registryVersion; for (Addon addon : furnace.getAddonRegistry().getAddons()) { ClassLoader classLoader = addon.getClassLoader(); if (classLoader != null) result.add(classLoader); } } } return result; } };