private boolean displayConfigs(PmCommandInvocation commandInvocation, ProvisioningLayout<FeaturePackLayout> pLayout) throws ProvisioningException, IOException { Map<String, List<ConfigInfo>> configs = new HashMap<>(); try (ProvisioningRuntime rt = ProvisioningRuntimeBuilder. newInstance(commandInvocation.getPmSession().getMessageWriter(false)) .initRtLayout(pLayout.transform(ProvisioningRuntimeBuilder.FP_RT_FACTORY)) .setEncoding(ProvisioningManager.Builder.ENCODING) .build()) { for (ProvisionedConfig m : rt.getConfigs()) { String model = m.getModel(); List<ConfigInfo> names = configs.get(model); if (names == null) { names = new ArrayList<>(); configs.put(model, names); } if (m.getName() != null) { names.add(new ConfigInfo(model, m.getName(), m.getLayers())); } } String str = StateInfoUtil.buildConfigs(configs, pLayout); if (str != null) { commandInvocation.print(str); } return str != null; } }
baseConfigs = baseRt.getConfigs();
for (ProvisionedConfig c : runtime.getConfigs()) { ConfigInfo config = new ConfigInfo(c.getModel(), c.getName(), c.getLayers()); fp.addFinalConfig(config);
private ProvisionedConfig getDefaultProvisionedConfig(ProvisioningLayout<?> layout, final ConfigModel definedConfig) throws ProvisioningException { final ProvisioningConfig originalConfig = layout.getConfig(); final ProvisioningConfig.Builder baseBuilder = ProvisioningConfig.builder().initUniverses(originalConfig) .addOptions(originalConfig.getOptions()); if (originalConfig.hasTransitiveDeps()) { for (FeaturePackConfig fp : originalConfig.getTransitiveDeps()) { baseBuilder.addFeaturePackDep(originalConfig.originOf(fp.getLocation().getProducer()), fp); } } for (FeaturePackConfig fp : originalConfig.getFeaturePackDeps()) { baseBuilder.addFeaturePackDep(originalConfig.originOf(fp.getLocation().getProducer()), fp); } baseBuilder.setInheritConfigs(false); baseBuilder.includeDefaultConfig(model, name); baseBuilder.addConfig(getBaseConfig(definedConfig)); ProvisioningConfig baseC = baseBuilder.build(); try(ProvisioningRuntime baseRt = ProvisioningRuntimeBuilder.newInstance(log).initLayout(layout.getFactory(), baseC).build()) { return getRequiredProvisionedConfig(baseRt.getConfigs(), model, name); } } }