This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to annotated tag org.apache.sling.provisioning.model-1.0.0 in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-provisioning-model.git
commit 98736d5714c8389b3a0ee1e587ef97db8a2e194a Author: Carsten Ziegeler <[email protected]> AuthorDate: Wed Oct 1 16:26:14 2014 +0000 Consistent method naming and javadocs git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/tooling/support/slingstart-model@1628753 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/sling/provisioning/model/Artifact.java | 9 +- .../sling/provisioning/model/ArtifactGroup.java | 18 +++- .../sling/provisioning/model/Commentable.java | 2 +- .../sling/provisioning/model/Configuration.java | 15 ++- .../apache/sling/provisioning/model/Feature.java | 23 +++-- .../apache/sling/provisioning/model/ItemList.java | 16 +++ .../sling/provisioning/model/KeyValueMap.java | 22 +++++ .../org/apache/sling/provisioning/model/Model.java | 4 +- .../sling/provisioning/model/ModelConstants.java | 3 +- .../sling/provisioning/model/ModelUtility.java | 40 +++++--- .../apache/sling/provisioning/model/RunMode.java | 109 +++++++++++++++------ .../sling/provisioning/model/io/ModelReader.java | 4 +- .../sling/provisioning/model/io/ModelWriter.java | 6 +- 13 files changed, 202 insertions(+), 69 deletions(-) diff --git a/src/main/java/org/apache/sling/provisioning/model/Artifact.java b/src/main/java/org/apache/sling/provisioning/model/Artifact.java index 432c4bf..371ce2b 100644 --- a/src/main/java/org/apache/sling/provisioning/model/Artifact.java +++ b/src/main/java/org/apache/sling/provisioning/model/Artifact.java @@ -22,17 +22,23 @@ import java.util.Map; /** * Description of an artifact. * An artifact is described by it's Apache Maven coordinates consisting of group id, artifact id, and version. - * In addition, the classifier and type can be specified as well. + * In addition, the classifier and type can be specified as well. If no type is specified, "jar" is assumed. * An artifact can have any metadata. */ public class Artifact extends Commentable { + /** The required group id. */ private final String groupId; + /** The required artifact id. */ private final String artifactId; + /** The required version. */ private final String version; + /** The optional classifier. */ private final String classifier; + /** The optional type. */ private final String type; + /** Artifact metadata. */ private final Map<String, String> metadata = new HashMap<String, String>(); /** @@ -198,6 +204,7 @@ public class Artifact extends Commentable { /** * Create a Maven like relative repository path. + * @return A relative repository path. */ public String getRepositoryPath() { final StringBuilder sb = new StringBuilder(); diff --git a/src/main/java/org/apache/sling/provisioning/model/ArtifactGroup.java b/src/main/java/org/apache/sling/provisioning/model/ArtifactGroup.java index 8cb3550..04a3815 100644 --- a/src/main/java/org/apache/sling/provisioning/model/ArtifactGroup.java +++ b/src/main/java/org/apache/sling/provisioning/model/ArtifactGroup.java @@ -19,24 +19,36 @@ package org.apache.sling.provisioning.model; /** * A artifact group holds a set of artifacts. + * * A valid start level is positive, start level 0 means the default OSGi start level. */ public class ArtifactGroup extends ItemList<Artifact> implements Comparable<ArtifactGroup> { + /** The start level. */ private final int level; - public ArtifactGroup(final int level) { - this.level = level; + /** + * Create a new artifact group with the level. + * @param startLevel The start level. + */ + public ArtifactGroup(final int startLevel) { + this.level = startLevel; } - public int getLevel() { + /** + * Get the start level. + * @return The start level. + */ + public int getStartLevel() { return this.level; } /** * Search an artifact with the same groupId, artifactId, version, type and classifier. * Version is not considered. + * @param template A template artifact + * @return The artifact or {@code null}. */ public Artifact search(final Artifact template) { Artifact found = null; diff --git a/src/main/java/org/apache/sling/provisioning/model/Commentable.java b/src/main/java/org/apache/sling/provisioning/model/Commentable.java index b966a91..7b10651 100644 --- a/src/main/java/org/apache/sling/provisioning/model/Commentable.java +++ b/src/main/java/org/apache/sling/provisioning/model/Commentable.java @@ -17,7 +17,7 @@ package org.apache.sling.provisioning.model; /** - * A traceable has a comment and a location. + * A commentable has a comment and a location. * Both are optional. */ public abstract class Commentable extends Traceable { diff --git a/src/main/java/org/apache/sling/provisioning/model/Configuration.java b/src/main/java/org/apache/sling/provisioning/model/Configuration.java index b317a14..5cf98c8 100644 --- a/src/main/java/org/apache/sling/provisioning/model/Configuration.java +++ b/src/main/java/org/apache/sling/provisioning/model/Configuration.java @@ -21,16 +21,25 @@ import java.util.Hashtable; /** - * Configuration + * A configuration has either + * - a pid + * - or a factory pid and an alias (pid) + * and properties. */ public class Configuration extends Commentable { + /** The pid. */ private final String pid; - + /** The factory pid. */ private final String factoryPid; - + /** The properties. */ private final Dictionary<String, Object> properties = new Hashtable<String, Object>(); + /** + * Create a new configuration + * @param pid The pid or alias for a factory pid + * @param factoryPid The factory pid + */ public Configuration(final String pid, final String factoryPid) { this.pid = (pid != null ? pid.trim() : null); this.factoryPid = (factoryPid != null ? factoryPid.trim() : null); diff --git a/src/main/java/org/apache/sling/provisioning/model/Feature.java b/src/main/java/org/apache/sling/provisioning/model/Feature.java index f333888..d04b1d0 100644 --- a/src/main/java/org/apache/sling/provisioning/model/Feature.java +++ b/src/main/java/org/apache/sling/provisioning/model/Feature.java @@ -24,6 +24,7 @@ import java.util.List; /** * A feature is a collection of + * - a name * - variables * - run modes */ @@ -37,6 +38,7 @@ public class Feature /** Variables. */ private final KeyValueMap<String> variables = new KeyValueMap<String>(); + /** Feature name. */ private final String name; /** @@ -57,6 +59,7 @@ public class Feature /** * Special feature? + * @return true if the feature is special */ public boolean isSpecial() { return this.name.startsWith(":"); @@ -70,20 +73,24 @@ public class Feature return this.variables; } + /** + * Get all run modes. + * @return The list of run modes. + */ public List<RunMode> getRunModes() { return this.runModes; } /** * Find the run mode if available - * @param runModes - * @return The feature or null. + * @param runModes The run modes or {@code null} + * @return The feature or {@code null}. */ public RunMode getRunMode(final String[] runModes) { final String[] sortedRunModes = RunMode.getSortedRunModesArray(runModes); RunMode result = null; for(final RunMode current : this.runModes) { - if ( Arrays.equals(sortedRunModes, current.getRunModes()) ) { + if ( Arrays.equals(sortedRunModes, current.getNames()) ) { result = current; break; } @@ -93,13 +100,13 @@ public class Feature /** * Get or create the run mode. - * @param runModes The run modes. - * @return The feature for the given run modes. + * @param names The run modes. + * @return The run mode for the given run modes names. */ - public RunMode getOrCreateRunMode(final String[] runModes) { - RunMode result = getRunMode(runModes); + public RunMode getOrCreateRunMode(final String[] names) { + RunMode result = getRunMode(names); if ( result == null ) { - result = new RunMode(runModes); + result = new RunMode(names); this.runModes.add(result); Collections.sort(this.runModes); } diff --git a/src/main/java/org/apache/sling/provisioning/model/ItemList.java b/src/main/java/org/apache/sling/provisioning/model/ItemList.java index 85ea138..8aa2a0a 100644 --- a/src/main/java/org/apache/sling/provisioning/model/ItemList.java +++ b/src/main/java/org/apache/sling/provisioning/model/ItemList.java @@ -20,16 +20,28 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; +/** + * Helper class to hold a list of items. + */ public class ItemList<T> extends Commentable implements Iterable<T> { + /** The list holding the items. */ protected final List<T> items = new ArrayList<T>(); + /** + * Add a new item + * @param item The new item + */ public void add(final T item) { this.items.add(item); } + /** + * Remove an item. + * @param item The item to remove. + */ public void remove(final T item) { this.items.remove(item); } @@ -39,6 +51,10 @@ public class ItemList<T> return this.items.iterator(); } + /** + * Check if the list is empty. + * @return {@code true} if the list is empty. + */ public boolean isEmpty() { return this.items.isEmpty(); } diff --git a/src/main/java/org/apache/sling/provisioning/model/KeyValueMap.java b/src/main/java/org/apache/sling/provisioning/model/KeyValueMap.java index aa6598c..7e64732 100644 --- a/src/main/java/org/apache/sling/provisioning/model/KeyValueMap.java +++ b/src/main/java/org/apache/sling/provisioning/model/KeyValueMap.java @@ -21,20 +21,38 @@ import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; +/** + * Helper class to hold key value pairs. + */ public class KeyValueMap<T> extends Commentable implements Iterable<Map.Entry<String, T>> { + /** The map holding the actual key value pairs. */ private final Map<String, T> properties = new HashMap<String, T>(); + /** + * Get an item from the map. + * @param key The key of the item. + * @return The item or {@code null}. + */ public T get(final String key) { return this.properties.get(key); } + /** + * Put an item in the map + * @param key The key of the item. + * @param value The value + */ public void put(final String key, final T value) { this.properties.put(key, value); } + /** + * Put all items from the other map in this map + * @param map The other map + */ public void putAll(final KeyValueMap<T> map) { this.properties.putAll(map.properties); } @@ -44,6 +62,10 @@ public class KeyValueMap<T> return this.properties.entrySet().iterator(); } + /** + * Check whether this map is empty. + * @return {@code true} if the map is empty. + */ public boolean isEmpty() { return this.properties.isEmpty(); } diff --git a/src/main/java/org/apache/sling/provisioning/model/Model.java b/src/main/java/org/apache/sling/provisioning/model/Model.java index ee80611..a9aed51 100644 --- a/src/main/java/org/apache/sling/provisioning/model/Model.java +++ b/src/main/java/org/apache/sling/provisioning/model/Model.java @@ -34,7 +34,7 @@ public class Model extends Traceable { * @param name The feature name * @return The feature or {@code null}. */ - public Feature findFeature(final String name) { + public Feature getFeature(final String name) { for(final Feature f : this.features) { if ( name.equals(f.getName()) ) { return f; @@ -49,7 +49,7 @@ public class Model extends Traceable { * @return The feature for the given run modes. */ public Feature getOrCreateFeature(final String name) { - Feature result = findFeature(name); + Feature result = getFeature(name); if ( result == null ) { result = new Feature(name); this.features.add(result); diff --git a/src/main/java/org/apache/sling/provisioning/model/ModelConstants.java b/src/main/java/org/apache/sling/provisioning/model/ModelConstants.java index 744c71e..e5f8301 100644 --- a/src/main/java/org/apache/sling/provisioning/model/ModelConstants.java +++ b/src/main/java/org/apache/sling/provisioning/model/ModelConstants.java @@ -27,7 +27,6 @@ public abstract class ModelConstants { /** Name of the boot feature */ public static final String FEATURE_BOOT = ":boot"; - /** * Name of the configuration containing the web.xml. This configuration * is used by the launchpad feature. @@ -46,8 +45,10 @@ public abstract class ModelConstants { /** Format of the unprocessed configuration values. */ public static final String CFG_UNPROCESSED_FORMAT = ":rawconfig.format"; + /** Format of the Apache Felix Config Admin. */ public static final String CFG_FORMAT_FELIX_CA = "felixca"; + /** Property file format. */ public static final String CFG_FORMAT_PROPERTIES = "properties"; /** Name of the webapp run mode. */ diff --git a/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java b/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java index d42f727..c97f92e 100644 --- a/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java +++ b/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java @@ -49,11 +49,11 @@ public abstract class ModelUtility { // run modes for(final RunMode runMode : feature.getRunModes()) { - final RunMode baseRunMode = baseFeature.getOrCreateRunMode(runMode.getRunModes()); + final RunMode baseRunMode = baseFeature.getOrCreateRunMode(runMode.getNames()); // artifact groups for(final ArtifactGroup group : runMode.getArtifactGroups()) { - final ArtifactGroup baseGroup = baseRunMode.getOrCreateArtifactGroup(group.getLevel()); + final ArtifactGroup baseGroup = baseRunMode.getOrCreateArtifactGroup(group.getStartLevel()); for(final Artifact artifact : group) { final Artifact found = baseGroup.search(artifact); @@ -92,12 +92,12 @@ public abstract class ModelUtility { * Resolve the variable. * An implementation might get the value of a variable from the system properties, * or the environment etc. - * As a fallback, the resolver should check the variables of the model. - * @param model The model + * As a fallback, the resolver should check the variables of the feature. + * @param feature The feature * @param name The variable name * @return The variable value or null. */ - String resolve(final Feature model, final String name); + String resolve(final Feature feature, final String name); } /** @@ -109,19 +109,23 @@ public abstract class ModelUtility { */ public static Model getEffectiveModel(final Model model, final VariableResolver resolver) { final Model result = new Model(); + result.setLocation(model.getLocation()); for(final Feature feature : model.getFeatures()) { final Feature newFeature = result.getOrCreateFeature(feature.getName()); newFeature.setComment(feature.getComment()); newFeature.setLocation(feature.getLocation()); + newFeature.getVariables().setComment(feature.getVariables().getComment()); + newFeature.getVariables().setLocation(feature.getVariables().getLocation()); newFeature.getVariables().putAll(feature.getVariables()); for(final RunMode runMode : feature.getRunModes()) { - final RunMode newRunMode = newFeature.getOrCreateRunMode(runMode.getRunModes()); + final RunMode newRunMode = newFeature.getOrCreateRunMode(runMode.getNames()); + newRunMode.setLocation(runMode.getLocation()); for(final ArtifactGroup group : runMode.getArtifactGroups()) { - final ArtifactGroup newGroup = newRunMode.getOrCreateArtifactGroup(group.getLevel()); + final ArtifactGroup newGroup = newRunMode.getOrCreateArtifactGroup(group.getStartLevel()); newGroup.setComment(group.getComment()); newGroup.setLocation(group.getLocation()); @@ -138,6 +142,8 @@ public abstract class ModelUtility { } } + newRunMode.getConfigurations().setComment(runMode.getConfigurations().getComment()); + newRunMode.getConfigurations().setLocation(runMode.getConfigurations().getLocation()); for(final Configuration config : runMode.getConfigurations()) { final Configuration newConfig = new Configuration(config.getPid(), config.getFactoryPid()); newConfig.setComment(config.getComment()); @@ -197,6 +203,8 @@ public abstract class ModelUtility { newRunMode.getConfigurations().add(newConfig); } + newRunMode.getSettings().setComment(runMode.getSettings().getComment()); + newRunMode.getSettings().setLocation(runMode.getSettings().getLocation()); for(final Map.Entry<String, String> entry : runMode.getSettings() ) { newRunMode.getSettings().put(entry.getKey(), replace(feature, entry.getValue(), resolver)); } @@ -209,13 +217,13 @@ public abstract class ModelUtility { /** * Replace properties in the string. * - * @param model The model + * @param feature The feature * @param v The variable name * @param resolver Optional resolver * @result The value of the variable - * @throws IllegalArgumentException + * @throws IllegalArgumentException If variable can't be found. */ - private static String replace(final Feature model, final String v, final VariableResolver resolver) { + private static String replace(final Feature feature, final String v, final VariableResolver resolver) { if ( v == null ) { return null; } @@ -232,9 +240,9 @@ public abstract class ModelUtility { final String name = msg.substring(pos + 2, endPos); final String value; if ( resolver != null ) { - value = resolver.resolve(model, name); + value = resolver.resolve(feature, name); } else { - value = model.getVariables().get(name); + value = feature.getVariables().get(name); } if ( value == null ) { throw new IllegalArgumentException("Unknown variable: " + name); @@ -250,7 +258,7 @@ public abstract class ModelUtility { /** * Validates the model. - * @param model + * @param model The model to validate * @return A map with errors or {@code null}. */ public static Map<Traceable, String> validate(final Model model) { @@ -262,7 +270,7 @@ public abstract class ModelUtility { errors.put(feature, "Name is required for a feature."); } for(final RunMode runMode : feature.getRunModes()) { - final String[] rm = runMode.getRunModes(); + final String[] rm = runMode.getNames(); if ( rm != null ) { boolean hasSpecial = false; for(final String m : rm) { @@ -277,8 +285,8 @@ public abstract class ModelUtility { } for(final ArtifactGroup sl : runMode.getArtifactGroups()) { - if ( sl.getLevel() < 0 ) { - errors.put(sl, "Invalid start level " + sl.getLevel()); + if ( sl.getStartLevel() < 0 ) { + errors.put(sl, "Invalid start level " + sl.getStartLevel()); } for(final Artifact a : sl) { String error = null; diff --git a/src/main/java/org/apache/sling/provisioning/model/RunMode.java b/src/main/java/org/apache/sling/provisioning/model/RunMode.java index 72a8b23..66a9240 100644 --- a/src/main/java/org/apache/sling/provisioning/model/RunMode.java +++ b/src/main/java/org/apache/sling/provisioning/model/RunMode.java @@ -23,13 +23,12 @@ import java.util.List; import java.util.Set; /** - * A feature is a collection of + * A run mode is a collection of * - artifacts (through start levels) * - configurations * - settings * - * A feature might be tied to run modes. Only if all run modes are active, - * this feature is active. + * Only if all run modes are active, this run mode is active. * In addition to custom, user defined run modes, special run modes exists. * A special run mode name starts with a colon. */ @@ -37,23 +36,36 @@ public class RunMode extends Traceable implements Comparable<RunMode> { - private final String[] runModes; + /** The array of run mode names. */ + private final String[] names; + /** The artifact groups. */ private final List<ArtifactGroup> groups = new ArrayList<ArtifactGroup>(); + /** The configurations. */ private final ItemList<Configuration> configurations = new ItemList<Configuration>(); + /** The settings. */ private final KeyValueMap<String> settings = new KeyValueMap<String>(); - public RunMode(final String[] runModes) { - this.runModes = getSortedRunModesArray(runModes); + /** + * Create a new run mode + * @param names The run mode names + */ + public RunMode(final String[] names) { + this.names = getSortedRunModesArray(names); } - public static String[] getSortedRunModesArray(final String[] runModes) { + /** + * Get an alphabetical sorted array of the run mode names. + * @param names The run mode names + * @return The sorted run mode names + */ + public static String[] getSortedRunModesArray(final String[] names) { // sort run modes - if ( runModes != null ) { + if ( names != null ) { final List<String> list = new ArrayList<String>(); - for(final String m : runModes) { + for(final String m : names) { if ( m != null ) { if ( !m.trim().isEmpty() ) { list.add(m.trim()); @@ -68,17 +80,23 @@ public class RunMode return null; } - public String[] getRunModes() { - return this.runModes; + /** + * Return the run mode names. + * @return The array of run mode names or {@code null}. + */ + public String[] getNames() { + return this.names; } /** - * Check if this feature is active wrt the given set of active run modes. + * Check if this run mode is active wrt the given set of active run modes. + * @param activeRunModes The set of active run modes. + * @return {@code true} if the run mode is active. */ public boolean isActive(final Set<String> activeRunModes) { boolean active = true; - if ( runModes != null ) { - for(final String mode : runModes) { + if ( names != null ) { + for(final String mode : names) { if ( !activeRunModes.contains(mode) ) { active = false; break; @@ -89,26 +107,29 @@ public class RunMode } /** - * Check whether this feature is a special one + * Check whether this run mode is a special one + * @return {@code true} if it is special */ public boolean isSpecial() { - if ( runModes != null && runModes.length == 1 && runModes[0].startsWith(":") ) { + if ( names != null && names.length == 1 && names[0].startsWith(":") ) { return true; } return false; } /** - * Check if this feature is tied to a single specific run mode. + * Check if this run mode is tied to a single specific run mode name. + * @param mode The name of the run mode + * @return {@code true} if this run mode is tied to exactly the single one. */ public boolean isRunMode(final String mode) { - if ( mode == null && this.runModes == null ) { + if ( mode == null && this.names == null ) { return true; } if ( mode != null - && this.runModes != null - && this.runModes.length == 1 - && this.runModes[0].equals(mode) ) { + && this.names != null + && this.names.length == 1 + && this.names[0].equals(mode) ) { return true; } return false; @@ -116,10 +137,12 @@ public class RunMode /** * Find the artifact group. + * @param startLevel the start level + * @return The artifact group for that level or {@code null}. */ - public ArtifactGroup findArtifactGroup(final int startLevel) { + public ArtifactGroup getArtifactGroup(final int startLevel) { for(final ArtifactGroup g : this.groups) { - if ( g.getLevel() == startLevel ) { + if ( g.getStartLevel() == startLevel ) { return g; } } @@ -128,9 +151,11 @@ public class RunMode /** * Get or create an artifact group + * @param startLevel The start level + * @return The artifact group. */ public ArtifactGroup getOrCreateArtifactGroup(final int startLevel) { - ArtifactGroup result = this.findArtifactGroup(startLevel); + ArtifactGroup result = this.getArtifactGroup(startLevel); if ( result == null ) { result = new ArtifactGroup(startLevel); this.groups.add(result); @@ -141,6 +166,8 @@ public class RunMode /** * Search a configuration with a pid + * @param pid The configuration pid + * @return The configuration or {@code null} */ public Configuration getConfiguration(final String pid) { for(final Configuration c : this.configurations) { @@ -151,6 +178,12 @@ public class RunMode return null; } + /** + * Search a configuration with pid and factory pid + * @param pid The pid + * @param factoryPid The optional factory pid + * @return The configuration or {@code null}. + */ public Configuration getConfiguration(final String pid, final String factoryPid) { Configuration found = null; for(final Configuration current : this.configurations) { @@ -169,6 +202,12 @@ public class RunMode return found; } + /** + * Get or create the configuration + * @param pid The pid + * @param factoryPid The optional factory pid + * @return The configuration + */ public Configuration getOrCreateConfiguration(final String pid, final String factoryPid) { Configuration found = getConfiguration(pid, factoryPid); if ( found == null ) { @@ -178,14 +217,26 @@ public class RunMode return found; } + /** + * Get all artifact groups + * @return List of artifact groups + */ public List<ArtifactGroup> getArtifactGroups() { return this.groups; } + /** + * Get all configurations + * @return List of configurations + */ public ItemList<Configuration> getConfigurations() { return this.configurations; } + /** + * Get the settings + * @return Map with the settings. + */ public KeyValueMap<String> getSettings() { return this.settings; } @@ -195,21 +246,21 @@ public class RunMode */ @Override public int compareTo( RunMode o2) { - if ( this.runModes == null ) { - if ( o2.runModes == null ) { + if ( this.names == null ) { + if ( o2.names == null ) { return 0; } return -1; } - if ( o2.runModes == null ) { + if ( o2.names == null ) { return 1; } - return Arrays.toString(this.runModes).compareTo(Arrays.toString(o2.runModes)); + return Arrays.toString(this.names).compareTo(Arrays.toString(o2.names)); } @Override public String toString() { - return "RunMode [runModes=" + Arrays.toString(runModes) + ", groups=" + return "RunMode [names=" + Arrays.toString(names) + ", groups=" + groups + ", configurations=" + configurations + ", settings=" + settings + "]"; diff --git a/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java b/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java index 948f3e6..15bf545 100644 --- a/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java +++ b/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java @@ -160,7 +160,7 @@ public class ModelReader { if ( name == null ) { throw new IOException(exceptionPrefix + "Feature name missing in line " + this.lineNumberReader.getLineNumber() + ": " + line); } - if ( model.findFeature(name) != null ) { + if ( model.getFeature(name) != null ) { throw new IOException(exceptionPrefix + "Duplicate feature in line " + this.lineNumberReader.getLineNumber() + ": " + line); } this.feature = model.getOrCreateFeature(name); @@ -186,7 +186,7 @@ public class ModelReader { throw new IOException(exceptionPrefix + "Invalid start level in line " + this.lineNumberReader.getLineNumber() + ": " + line + ":" + level); } } - if ( this.runMode.findArtifactGroup(startLevel) != null ) { + if ( this.runMode.getArtifactGroup(startLevel) != null ) { throw new IOException(exceptionPrefix + "Duplicate artifact group in line " + this.lineNumberReader.getLineNumber() + ": " + line); } this.artifactGroup = this.runMode.getOrCreateArtifactGroup(startLevel); diff --git a/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java b/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java index 09c8423..3f371c6 100644 --- a/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java +++ b/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java @@ -56,7 +56,7 @@ public class ModelWriter { } private static void writeRunMode(final PrintWriter pw, final RunMode runMode) { - final String[] rm = runMode.getRunModes(); + final String[] rm = runMode.getNames(); if ( rm != null && rm.length > 0 ) { pw.print(" runModes="); boolean first = true; @@ -129,9 +129,9 @@ public class ModelWriter { } writeComment(pw, group); pw.print("[artifacts"); - if ( group.getLevel() > 0 ) { + if ( group.getStartLevel() > 0 ) { pw.print(" startLevel="); - pw.print(String.valueOf(group.getLevel())); + pw.print(String.valueOf(group.getStartLevel())); } writeRunMode(pw, runMode); pw.println("]"); -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
