public void registerProfile(Profile p) { if (registerProfileInternal(p)) { // this profile could have not been loaded when // the default profile configuration // was loaded at first, so we need to do it again loadDefaultProfilesfromConfiguration(); } resolver.resolve(); }
public void resolveDependencies() { if (context == null) { configure(); } // // any dependencies that need to be resolved (in case engine itself is a dependency) // log.info("Resolving dependencies..."); Timer dependencyTimer = new Timer(); // save which dependencies are already resolved List<Dependency> resolvedDependencies = (collectedDependencies != null ? collectedDependencies : DependencyHelper.alreadyBundled()); // any well known engines to include? List<Dependency> wellKnownEngineDependencies = DependencyHelper.wellKnownEngineDependencies(scriptExtension); // did script declare any dependencies we need to include? List<Dependency> applicationDependencies = DependencyHelper.applicationDependencies(config); // build dependencies to resolve (need collected so correct versions are picked) dependencies = new ArrayList<>(); DependencyHelper.collect(dependencies, resolvedDependencies); DependencyHelper.collect(dependencies, wellKnownEngineDependencies); DependencyHelper.collect(dependencies, applicationDependencies); if (!dependencies.isEmpty()) { try { // resolve dependencies against collected dependencies dependencyJarFiles = dependencyResolver.resolve(context, resolvedDependencies, dependencies); } catch (DependencyResolveException e) { throw e; } catch (IOException | ParseException e) { throw new BlazeException("Unable to cleanly resolve dependencies", e); } } log.info("Resolved dependencies in {} ms", dependencyTimer.stop().millis()); }
@Test public void resolve() { DefaultEntityMetaData e1 = new DefaultEntityMetaData("e1"); DefaultEntityMetaData e2 = new DefaultEntityMetaData("e2"); DefaultEntityMetaData e3 = new DefaultEntityMetaData("e3"); DefaultEntityMetaData e4 = new DefaultEntityMetaData("e4"); DefaultEntityMetaData e5 = new DefaultEntityMetaData("e5"); e1.addAttribute("ref").setDataType(MolgenisFieldTypes.XREF).setRefEntity(e5); e5.setExtends(e3); e3.addAttribute("ref").setDataType(MolgenisFieldTypes.XREF).setRefEntity(e4); e3.addAttribute("refSelf").setDataType(MolgenisFieldTypes.XREF).setRefEntity(e3); e4.addAttribute("ref").setDataType(MolgenisFieldTypes.XREF).setRefEntity(e2); List<EntityMetaData> resolved = DependencyResolver.resolve(Sets.<EntityMetaData>newHashSet(e1, e2, e3, e4, e5)); assertEquals(resolved, Arrays.asList(e2, e4, e3, e5, e1)); }
void loadProfiles(List<File> profileFiles) { resolver.resolve(profileFiles); }