protected Set<ProvisioningOption> getPluginOptions(ProvisioningRuntime runtime) throws ProvisioningException { Set<ProvisioningOption> pluginOptions = new HashSet<>(ProvisioningOption.getStandardList()); FeaturePackPluginVisitor<InstallPlugin> visitor = new FeaturePackPluginVisitor<InstallPlugin>() { @Override public void visitPlugin(InstallPlugin plugin) throws ProvisioningException { pluginOptions.addAll(plugin.getOptions().values()); } }; runtime.getLayout().visitPlugins(visitor, InstallPlugin.class); return pluginOptions; }
public static ResolvedPlugins resolvePlugins(ProvisioningLayout<FeaturePackLayout> layout) throws ProvisioningException { final Set<ProvisioningOption> installOptions = new HashSet<>(ProvisioningOption.getStandardList()); final Set<ProvisioningOption> diffOptions = new HashSet<>(ProvisioningOption.getStandardList()); if (layout.hasPlugins()) { FeaturePackPluginVisitor<InstallPlugin> visitor = new FeaturePackPluginVisitor<InstallPlugin>() { @Override public void visitPlugin(InstallPlugin plugin) throws ProvisioningException { installOptions.addAll(plugin.getOptions().values()); } }; layout.visitPlugins(visitor, InstallPlugin.class); FeaturePackPluginVisitor<StateDiffPlugin> diffVisitor = new FeaturePackPluginVisitor<StateDiffPlugin>() { @Override public void visitPlugin(StateDiffPlugin plugin) throws ProvisioningException { diffOptions.addAll(plugin.getOptions().values()); } }; layout.visitPlugins(diffVisitor, StateDiffPlugin.class); } return new ResolvedPlugins(installOptions, diffOptions); }
processOptions(ProvisioningOption.getStandardList(), extraOptions, recognizedOptions, overridenOptions);