FeaturePackRuntime build(ProvisioningRuntimeBuilder rt) throws ProvisioningException { return new FeaturePackRuntime(this, rt); } }
public FeatureSpec getFeatureSpec(String name) throws ProvisioningException { if (featureSpecs.containsKey(name)) { return featureSpecs.get(name).xmlSpec; } return loadFeatureSpec(name); }
gavs.put(Identity.buildOrigin(rt.getFPID().getProducer()), rt); for (FeaturePackRuntime rt : runtime.getFeaturePacks()) { pkgBuilder.resetRoots(); for (PackageRuntime pkg : rt.getPackages()) { pkgBuilder.buildGroups(new PackageInfo(pkg, Identity. fromChannel(rt.getFPID().getProducer(), pkg.getName()), plugin), new PackageGroupsBuilder.PackageInfoBuilder() { @Override public PackageInfo build(Identity identity, PackageInfo parent) { fp.setPackagesRoot(Identity.buildOrigin(rt.getFPID().getProducer()), pkgBuilder.getPackagesRoot()); rt.getFPID(), fp.getFPID(), pkgBuilder.getPackages(), allSpecs, null); fp.setFeatureSpecRoot(Identity.buildOrigin(rt.getFPID().getProducer()), specsRoot);
if (identity.getOrigin().equals(Identity.EMPTY)) { p = currentRuntime.getPackage(identity.getName()); if (p == null) { for (FeaturePackConfig fpdep : currentRuntime.getSpec().getFeaturePackDeps()) { if (currentRuntime.getSpec().originOf(fpdep.getLocation().getProducer()) == null) { FeaturePackRuntime depRuntime = gavs.get(Identity.buildOrigin(fpdep.getLocation().getProducer())); p = depRuntime.getPackage(identity.getName()); if (p != null) { resolvedIdentity = Identity.fromChannel(fpdep.getLocation().getProducer(), identity.getName()); resolvedIdentity = Identity.fromChannel(currentRuntime.getFPID().getProducer(), identity.getName()); FeaturePackConfig fpdep = currentRuntime.getSpec().getFeaturePackDep(identity.getOrigin()); if (fpdep != null) { resolvedIdentity = Identity.fromChannel(fpdep.getLocation().getProducer(), identity.getName()); p = extRt.getPackage(identity.getName()); + ", unknown dependency " + identity + " local is " + currentRuntime.getFPID());
PackageInfo(PackageRuntime pkg, Identity identity, CliPlugin plugin) throws IOException, ProvisioningException { this.pkg = pkg; this.fpid = pkg.getFeaturePackRuntime().getFPID(); this.identity = identity; this.contentDir = pkg.getContentDir(); this.spec = pkg.getSpec(); customContent = plugin == null ? null : plugin.handlePackageContent(pkg); if (customContent == null) { fillContent(); } }
for (ResolvedFeatureSpec resolvedSpec : layout.getFeaturePack(fpid.getProducer()).getFeatureSpecs()) { ResolvedSpecId resolved = resolvedSpec.getId(); if (wantedSpecs == null || wantedSpecs.contains(resolved)) {
messageWriter.verbose("Installing %s", fp.getFPID()); for(PackageRuntime pkg : fp.getPackages()) { final Path pkgSrcDir = pkg.getContentDir(); if (Files.exists(pkgSrcDir)) {
private ProvisioningConfig buildNewConfig(PmSession pmSession) throws ProvisioningException, IOException { ProvisioningConfig tmp = builder.build(); if (runtime != null) { runtime.close(); } runtime = ProvisioningRuntimeBuilder.newInstance(pmSession.getMessageWriter(false)) .initLayout(pmSession.getLayoutFactory(), tmp) .setEncoding(ProvisioningManager.Builder.ENCODING) .build(); Set<FeaturePackLocation.FPID> dependencies = new HashSet<>(); for (FeaturePackRuntime rt : runtime.getFeaturePacks()) { dependencies.add(rt.getFPID()); } FeatureContainer tmpContainer = FeatureContainers.fromProvisioningRuntime(pmSession, runtime); // Need to have in sync the current with the full. // If fullConainer creation is a failure, the container will be not updated. Map<String, FeatureContainer> tmpDeps = new HashMap<>(); if (container != null) { tmpDeps.putAll(container.getFullDependencies()); } buildDependencies(pmSession, dependencies, tmpDeps); container = tmpContainer; container.setEdit(true); container.setFullDependencies(tmpDeps); return tmp; }