You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by si...@apache.org on 2008/07/19 23:28:40 UTC

svn commit: r678220 - in /maven/sandbox/trunk/shared/maven-shared-model/src: main/java/org/apache/maven/shared/model/ main/java/org/apache/maven/shared/model/impl/ test/java/org/apache/maven/shared/model/impl/

Author: sisbell
Date: Sat Jul 19 14:28:40 2008
New Revision: 678220

URL: http://svn.apache.org/viewvc?rev=678220&view=rev
Log:
Fairly complete javadocs. Removed unneeded sort method.

Modified:
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DataSourceException.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelContainer.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelDataSource.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelMarshaller.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelProperty.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java
    maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/impl/DefaultModelDataSource.java
    maven/sandbox/trunk/shared/maven-shared-model/src/test/java/org/apache/maven/shared/model/impl/DefaultModelDataSourceTest.java

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DataSourceException.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DataSourceException.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DataSourceException.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DataSourceException.java Sat Jul 19 14:28:40 2008
@@ -21,16 +21,27 @@
 
 import java.io.IOException;
 
+/**
+ * Exeception class whose instance is thrown if there is an illegal state within a data source.
+ */
 public class DataSourceException
     extends IOException
 {
     static final long serialVersionUID = 8738495672439L;
 
+    /**
+     * Default constructor
+     */
     public DataSourceException()
     {
         super();
     }
 
+    /**
+     * Constructor
+     *
+     * @param message exception message
+     */
     public DataSourceException( String message )
     {
         super( message );

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java Sat Jul 19 14:28:40 2008
@@ -27,7 +27,17 @@
 public interface DomainModel
 {
 
+    /**
+     * Returns event history of joins and deletes used in constructing this domain model.
+     *
+     * @return event history of joins and deletes used in constructing this domain model
+     */
     String getEventHistory();
 
+    /**
+     * Sets event history of joins and deletes used in constructing this domain model
+     *
+     * @param history history of joins and deletes used in constructing this domain model
+     */
     void setEventHistory( String history );
 }

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java Sat Jul 19 14:28:40 2008
@@ -19,13 +19,27 @@
  * under the License.
  */
 
+/**
+ * Provides interpolator property information.
+ */
 public final class InterpolatorProperty
 {
-
+    /**
+     * The key (or name) of the property
+     */
     private final String key;
 
+    /**
+     * The value of the property
+     */
     private final String value;
 
+    /**
+     * Constructor
+     *
+     * @param key   the key (or name) of the property. May not be null
+     * @param value the value of the property. May not be null.
+     */
     public InterpolatorProperty( String key, String value )
     {
         if ( key == null )
@@ -41,16 +55,32 @@
         this.value = value;
     }
 
+    /**
+     * Returns key (or name) of property.
+     *
+     * @return key (or name) of property
+     */
     public String getKey()
     {
         return key;
     }
 
+    /**
+     * Returns value of property.
+     *
+     * @return value of property
+     */
     public String getValue()
     {
         return value;
     }
 
+    /**
+     * Returns true if key values match, otherwise returns false.
+     *
+     * @param o interpolator property to compare
+     * @return true if key values match, otherwise returns false
+     */
     public boolean equals( Object o )
     {
         if ( this == o )
@@ -72,6 +102,11 @@
         return true;
     }
 
+    /**
+     * Returns hash code of interpolator property key.
+     *
+     * @return hash code of interpolator property key
+     */
     public int hashCode()
     {
         return key.hashCode();

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelContainer.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelContainer.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelContainer.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelContainer.java Sat Jul 19 14:28:40 2008
@@ -56,6 +56,4 @@
      */
     ModelContainer createNewInstance( List<ModelProperty> modelProperties );
 
-    void sort( List<ModelProperty> modelProperties );
-
 }

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelDataSource.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelDataSource.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelDataSource.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelDataSource.java Sat Jul 19 14:28:40 2008
@@ -72,5 +72,10 @@
      */
     void init( List<ModelProperty> modelProperties, Collection<ModelContainerFactory> modelContainerFactories );
 
+    /**
+     * Return history of all joins and deletes
+     *
+     * @return history of all joins and deletes
+     */
     String getEventHistory();
 }

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelMarshaller.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelMarshaller.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelMarshaller.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelMarshaller.java Sat Jul 19 14:28:40 2008
@@ -40,10 +40,22 @@
 public final class ModelMarshaller
 {
 
+    /**
+     * Private Constructor
+     */
     private ModelMarshaller()
     {
     }
 
+    /**
+     * Returns list of model properties transformed from the specified input stream.
+     *
+     * @param inputStream input stream containing the xml document. May not be null.
+     * @param baseUri     the base uri of every model property. May not be null or empty.
+     * @param collections set of uris that are to be treated as a collection (multiple entries). May be null.
+     * @return list of model properties transformed from the specified input stream.
+     * @throws IOException if there was a problem doing the transform
+     */
     public static List<ModelProperty> marshallXmlToModelProperties( InputStream inputStream, String baseUri,
                                                                     Set<String> collections )
         throws IOException
@@ -53,7 +65,7 @@
             throw new IllegalArgumentException( "inputStream: null" );
         }
 
-        if ( baseUri == null )
+        if ( baseUri == null || baseUri.trim().length() == 0 )
         {
             throw new IllegalArgumentException( "baseUri: null" );
         }
@@ -184,6 +196,14 @@
         }
     }
 
+    /**
+     * Returns XML string unmarshalled from the specified list of model properties
+     *
+     * @param modelProperties the model properties to unmarshal. May not be null or empty
+     * @param baseUri         the base uri of every model property. May not be null or empty.
+     * @return XML string unmarshalled from the specified list of model properties
+     * @throws IOException if there was a problem with unmarshalling
+     */
     public static String unmarshalModelPropertiesToXml( List<ModelProperty> modelProperties, String baseUri )
         throws IOException
     {
@@ -258,14 +278,29 @@
         return sb.toString();
     }
 
+    /**
+     * Returns list of tag names parsed from the specified uri. All #collection parts of the tag are removed from the
+     * tag names.
+     *
+     * @param basePosition the base position in the specified URI to start the parse
+     * @param uri          the uri to parse for tag names
+     * @return list of tag names parsed from the specified uri
+     */
     private static List<String> getTagNamesFromUri( int basePosition, String uri )
     {
         return Arrays.asList( uri.substring( basePosition ).replaceAll( "#collection", "" ).split( "/" ) );
     }
 
+    /**
+     * Returns the XML formatted start tag for the specified value and the specified attribute.
+     *
+     * @param value     the value to use for the start tag
+     * @param attribute the attribute to use in constructing of start tag
+     * @return the XML formatted start tag for the specified value and the specified attribute
+     */
     private static String toStartTag( String value, ModelProperty attribute )
     {
-        StringBuffer sb = new StringBuffer();
+        StringBuffer sb = new StringBuffer(); //TODO: Support more than one attribute
         sb.append( "\r\n<" ).append( value );
         if ( attribute != null )
         {
@@ -277,6 +312,12 @@
         return sb.toString();
     }
 
+    /**
+     * Returns XML formatted end tag for the specified value.
+     *
+     * @param value the value to use for the end tag
+     * @return xml formatted end tag for the specified value
+     */
     private static String toEndTag( String value )
     {
         if ( value.trim().length() == 0 )
@@ -288,6 +329,9 @@
         return sb.toString();
     }
 
+    /**
+     * Class for storing information about URIs.
+     */
     private static class Uri
     {
 

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelProperty.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelProperty.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelProperty.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelProperty.java Sat Jul 19 14:28:40 2008
@@ -30,6 +30,9 @@
 public final class ModelProperty
 {
 
+    /**
+     * A pattern used for finding pom, project and env properties
+     */
     private static final Pattern EXPRESSION_PATTERN = Pattern.compile( "\\$\\{(pom\\.|project\\.|env\\.)?([^}]+)\\}" );
 
     /**
@@ -42,11 +45,20 @@
      */
     private final String value;
 
+    /**
+     * The count of '/' within this model property's uri, which is the depth of its XML nodes.
+     */
     private final int depth;
 
+    /**
+     * Value of this model property after interpolation
+     */
     private String resolvedValue;
 
-    private final List<String> expressions;
+    /**
+     * List of unresolved expressions within this model property's value
+     */
+    private final List<String> unresolvedExpressions;
 
     /**
      * Constructor
@@ -64,13 +76,13 @@
         this.value = value;
         resolvedValue = value;
 
-        expressions = new ArrayList<String>();
+        unresolvedExpressions = new ArrayList<String>();
         if ( value != null )
         {
             Matcher matcher = EXPRESSION_PATTERN.matcher( value );
             while ( matcher.find() )
             {
-                expressions.add( matcher.group( 0 ) );
+                unresolvedExpressions.add( matcher.group( 0 ) );
             }
         }
         depth = uri.split( "/" ).length;
@@ -87,35 +99,61 @@
     }
 
     /**
-     * Returns value for the key. Value may be null.
+     * Returns value for the URI key. Value may be null.
      *
-     * @return value for the key. Value may be null.
+     * @return value for the URI key. Value may be null
      */
     public String getValue()
     {
         return value;
     }
 
+    /**
+     * Value of this model property after interpolation.
+     *
+     * @return value of this model property after interpolation
+     */
     public String getResolvedValue()
     {
         return resolvedValue;
     }
 
+    /**
+     * Returns true if model property is completely interpolated, otherwise returns false.
+     *
+     * @return true if model property is completely interpolated, otherwise returns false
+     */
     public boolean isResolved()
     {
-        return expressions.isEmpty();
+        return unresolvedExpressions.isEmpty();
     }
 
+    /**
+     * Returns copy of the uninterpolated model property
+     *
+     * @return copy of the uninterpolated model property
+     */
     public ModelProperty createCopyOfOriginal()
     {
         return new ModelProperty( uri, value );
     }
 
+    /**
+     * Returns the count of '/' within this model property's uri, which is the depth of its XML nodes.
+     *
+     * @return the count of '/' within this model property's uri, which is the depth of its XML nodes
+     */
     public int getDepth()
     {
         return depth;
     }
 
+    /**
+     * Returns true if this model property is a direct parent of the specified model property, otherwise returns false.
+     *
+     * @param modelProperty the model property
+     * @return true if this model property is a direct parent of the specified model property, otherwise returns false
+     */
     public boolean isParentOf( ModelProperty modelProperty )
     {
         if ( Math.abs( depth - modelProperty.getDepth() ) > 1 )
@@ -128,13 +166,15 @@
         }
         return ( modelProperty.getUri().startsWith( uri ) );
     }
-    /*
-        public boolean isParentOf(ModelProperty modelProperty) {
-        return !(uri.equals(modelProperty.getUri()) || uri.startsWith(modelProperty.getUri()))
-                && (modelProperty.getUri().startsWith(uri));
-    }
-     */
 
+    /**
+     * Returns this model property as an interpolator property, allowing the interpolation of model elements within
+     * other model elements.
+     *
+     * @param baseUri the base uri of the model property
+     * @return this model property as an interpolator property, allowing the interpolation of model elements within
+     *         other model elements
+     */
     public InterpolatorProperty asInterpolatorProperty( String baseUri )
     {
         if ( uri.contains( "#collection" ) || value == null )
@@ -145,6 +185,11 @@
         return new InterpolatorProperty( key, value );
     }
 
+    /**
+     * Resolves any unresolved model property expressions using the specified interpolator property
+     *
+     * @param property the interpolator property used to resolve
+     */
     public void resolveWith( InterpolatorProperty property )
     {
         if ( property == null )
@@ -155,16 +200,16 @@
         {
             return;
         }
-        for ( String expression : expressions )
+        for ( String expression : unresolvedExpressions )
         {
             if ( property.getKey().equals( expression ) )
             {
                 resolvedValue = resolvedValue.replace( property.getKey(), property.getValue() );
-                expressions.clear();
+                unresolvedExpressions.clear();
                 Matcher matcher = EXPRESSION_PATTERN.matcher( resolvedValue );
                 while ( matcher.find() )
                 {
-                    expressions.add( matcher.group( 0 ) );
+                    unresolvedExpressions.add( matcher.group( 0 ) );
                 }
                 break;
             }

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java Sat Jul 19 14:28:40 2008
@@ -28,7 +28,6 @@
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
-import java.util.logging.Logger;
 
 
 /**
@@ -37,13 +36,17 @@
 public final class ModelTransformerContext
 {
 
+    /**
+     * Factories to use for construction of model containers
+     */
     private final Collection<ModelContainerFactory> factories;
 
+    /**
+     * List of system and environmental properties to use during interpolation
+     */
     private final static List<InterpolatorProperty> systemInterpolatorProperties =
         new ArrayList<InterpolatorProperty>();
 
-    private static Logger logger = Logger.getAnonymousLogger();
-
     static
     {
         for ( Map.Entry<Object, Object> e : System.getProperties().entrySet() )
@@ -166,16 +169,17 @@
             }
         }
 
+        /*
         for ( InterpolatorProperty ip : properties )
         {
             for ( ModelProperty mp : unresolvedProperties )
             {
-                //  mp.resolveWith(ip);
-                //  System.out.println(mp);
-                // System.out.println("-------------------");
+                  mp.resolveWith(ip);
+                  System.out.println(mp);
+                 System.out.println("-------------------");
             }
         }
-
+        */
         mps = sort( mps, baseUriForModel );
 
         try
@@ -196,11 +200,11 @@
      * Transforms and interpolates specified hierarchical list of domain models (inheritence) to target domain model.
      * Uses standard environmental and system properties for intepolation.
      *
-     * @param domainModels
-     * @param fromModelTransformer
-     * @param toModelTransformer
-     * @return
-     * @throws IOException
+     * @param domainModels         the domain model list to transform
+     * @param fromModelTransformer transformer that transforms from specified domain models to canonical data model
+     * @param toModelTransformer   transformer that transforms from canonical data model to returned domain model
+     * @return processed domain model
+     * @throws IOException if there was a problem with the transform
      */
     public DomainModel transform( List<DomainModel> domainModels, ModelTransformer fromModelTransformer,
                                   ModelTransformer toModelTransformer )
@@ -217,7 +221,7 @@
      * a #collection (http://apache.org/model/project/dependencyManagement/dependencies#collection/dependency)
      *
      * @param properties unsorted list of model properties. List may not be null.
-     * @param baseUri
+     * @param baseUri    the base URI of every model property
      * @return sorted list of model properties
      */
     protected List<ModelProperty> sort( List<ModelProperty> properties, String baseUri )

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/impl/DefaultModelDataSource.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/impl/DefaultModelDataSource.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/impl/DefaultModelDataSource.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/main/java/org/apache/maven/shared/model/impl/DefaultModelDataSource.java Sat Jul 19 14:28:40 2008
@@ -33,7 +33,6 @@
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
-import java.util.logging.Logger;
 
 /**
  * Default implementation of the ModelDataSource.
@@ -42,16 +41,36 @@
     implements ModelDataSource
 {
 
+    /**
+     * List of current model properties underlying the data source
+     */
     private List<ModelProperty> modelProperties;
 
+    /**
+     * Copy of the model properties used during initialization of the data source
+     */
     private List<ModelProperty> originalModelProperties;
 
-    private List<DeleteEvent> deleteEvents;
+    /**
+     * History of joins and deletes
+     */
+    private List<DataEvent> dataEvents;
 
+    /**
+     * Map of model container factories used in creation of model containers
+     */
     private Map<String, ModelContainerFactory> modelContainerFactoryMap;
 
-    private static Logger logger = Logger.getAnonymousLogger();
+    /**
+     * Default constructor
+     */
+    public DefaultModelDataSource()
+    {
+    }
 
+    /**
+     * @see ModelDataSource#join(org.apache.maven.shared.model.ModelContainer, org.apache.maven.shared.model.ModelContainer)
+     */
     public ModelContainer join( ModelContainer a, ModelContainer b )
         throws DataSourceException
     {
@@ -75,8 +94,8 @@
                 }
             }
 
-            List<DeleteEvent> des = new ArrayList<DeleteEvent>();
-            for ( DeleteEvent de : deleteEvents )
+            List<DataEvent> des = new ArrayList<DataEvent>();
+            for ( DataEvent de : dataEvents )
             {
                 if ( aContainsAnyOfB( de.getRemovedModelProperties(), unknownProperties ) )
                 {
@@ -119,12 +138,15 @@
         deletedProperties.removeAll( joinedProperties );
         if ( deletedProperties.size() > 0 )
         {
-            deleteEvents.add( new DeleteEvent( a, b, deletedProperties, "join" ) );
+            dataEvents.add( new DataEvent( a, b, deletedProperties, "join" ) );
         }
 
         return a.createNewInstance( joinedProperties );
     }
 
+    /**
+     * @see ModelDataSource#delete(org.apache.maven.shared.model.ModelContainer)
+     */
     public void delete( ModelContainer modelContainer )
     {
         if ( modelContainer == null )
@@ -136,14 +158,20 @@
             throw new IllegalArgumentException( "modelContainer.properties: null" );
         }
         modelProperties.removeAll( modelContainer.getProperties() );
-        deleteEvents.add( new DeleteEvent( modelContainer, null, modelContainer.getProperties(), "delete" ) );
+        dataEvents.add( new DataEvent( modelContainer, null, modelContainer.getProperties(), "delete" ) );
     }
 
+    /**
+     * @see org.apache.maven.shared.model.ModelDataSource#getModelProperties()
+     */
     public List<ModelProperty> getModelProperties()
     {
         return new ArrayList<ModelProperty>( modelProperties );
     }
 
+    /**
+     * @see ModelDataSource#queryFor(String)
+     */
     public List<ModelContainer> queryFor( String uri )
         throws DataSourceException
     {
@@ -239,6 +267,9 @@
         return modelContainers;
     }
 
+    /**
+     * @see ModelDataSource#init(java.util.List, java.util.Collection)
+     */
     public void init( List<ModelProperty> modelProperties, Collection<ModelContainerFactory> modelContainerFactories )
     {
         if ( modelProperties == null )
@@ -251,7 +282,7 @@
         }
         this.modelProperties = new LinkedList<ModelProperty>( modelProperties );
         this.modelContainerFactoryMap = new HashMap<String, ModelContainerFactory>();
-        this.deleteEvents = new ArrayList<DeleteEvent>();
+        this.dataEvents = new ArrayList<DataEvent>();
         this.originalModelProperties = new ArrayList<ModelProperty>( modelProperties );
 
         for ( ModelContainerFactory factory : modelContainerFactories )
@@ -269,6 +300,9 @@
         }
     }
 
+    /**
+     * @see org.apache.maven.shared.model.ModelDataSource#getEventHistory()
+     */
     public String getEventHistory()
     {
         StringBuffer sb = new StringBuffer();
@@ -278,7 +312,7 @@
             sb.append( mp ).append( "\r\n" );
         }
 
-        for ( DeleteEvent de : deleteEvents )
+        for ( DataEvent de : dataEvents )
         {
             sb.append( de.toString() );
         }
@@ -291,48 +325,6 @@
         return sb.toString();
     }
 
-    private List<ModelProperty> findUnknownModelPropertiesFrom( List<ModelContainer> modelContainers )
-    {
-        List<ModelProperty> unknownProperties = new ArrayList<ModelProperty>();
-        for ( ModelContainer mc : modelContainers )
-        {
-            if ( !modelProperties.containsAll( mc.getProperties() ) )
-            {
-                for ( ModelProperty mp : mc.getProperties() )
-                {
-                    if ( !modelProperties.contains( mp ) )
-                    {
-                        unknownProperties.add( mp );
-                    }
-                }
-            }
-        }
-        return unknownProperties;
-    }
-
-    private static int findLastIndexOfParent( ModelProperty modelProperty, List<ModelProperty> modelProperties )
-    {
-        for ( int i = modelProperties.size() - 1; i >= 0; i-- )
-        {
-            if ( modelProperties.get( i ).getUri().equals( modelProperty.getUri() ) )
-            {
-                for ( int j = i; j < modelProperties.size(); j++ )
-                {
-                    if ( !modelProperties.get( j ).getUri().startsWith( modelProperty.getUri() ) )
-                    {
-                        return j - 1;
-                    }
-                }
-                return modelProperties.size() - 1;
-            }
-            else if ( modelProperties.get( i ).isParentOf( modelProperty ) )
-            {
-                return i;
-            }
-        }
-        return -1;
-    }
-
     /**
      * Removes duplicate model properties from the containers and return list.
      *
@@ -380,6 +372,72 @@
         return processedProperties;
     }
 
+    /**
+     * Returns list of model properties (from the specified list of model containers) that are not contained in the data
+     * source
+     *
+     * @param modelContainers the model containers (containing model properties) to check for unknown model properties
+     * @return list of model properties (from the specified list of model containers) that are not contained in the data
+     *         source
+     */
+    private List<ModelProperty> findUnknownModelPropertiesFrom( List<ModelContainer> modelContainers )
+    {
+        List<ModelProperty> unknownProperties = new ArrayList<ModelProperty>();
+        for ( ModelContainer mc : modelContainers )
+        {
+            if ( !modelProperties.containsAll( mc.getProperties() ) )
+            {
+                for ( ModelProperty mp : mc.getProperties() )
+                {
+                    if ( !modelProperties.contains( mp ) )
+                    {
+                        unknownProperties.add( mp );
+                    }
+                }
+            }
+        }
+        return unknownProperties;
+    }
+
+    /**
+     * Returns the last position of the uri of the specified model property (ModelProperty.getUri) from within the specified
+     * list of model properties.
+     *
+     * @param modelProperty   the model property
+     * @param modelProperties the list of model properties used in determining the returned index
+     * @return the last position of the uri of the specified model property (ModelProperty.getUri) from within the specified
+     *         list of model properties.
+     */
+    private static int findLastIndexOfParent( ModelProperty modelProperty, List<ModelProperty> modelProperties )
+    {
+        for ( int i = modelProperties.size() - 1; i >= 0; i-- )
+        {
+            if ( modelProperties.get( i ).getUri().equals( modelProperty.getUri() ) )
+            {
+                for ( int j = i; j < modelProperties.size(); j++ )
+                {
+                    if ( !modelProperties.get( j ).getUri().startsWith( modelProperty.getUri() ) )
+                    {
+                        return j - 1;
+                    }
+                }
+                return modelProperties.size() - 1;
+            }
+            else if ( modelProperties.get( i ).isParentOf( modelProperty ) )
+            {
+                return i;
+            }
+        }
+        return -1;
+    }
+
+    /**
+     * Returns true if specified list 'a' contains one or more elements of specified list 'b', otherwise returns false.
+     *
+     * @param a list of model containers
+     * @param b list of model containers
+     * @return true if specified list 'a' contains one or more elements of specified list 'b', otherwise returns false.
+     */
     private static boolean aContainsAnyOfB( List<ModelProperty> a, List<ModelProperty> b )
     {
         for ( ModelProperty mp : b )
@@ -392,7 +450,10 @@
         return false;
     }
 
-    private static class DeleteEvent
+    /**
+     * Join or delete event
+     */
+    private static class DataEvent
     {
 
         private List<ModelProperty> removedModelProperties;
@@ -403,8 +464,8 @@
 
         private String methodName;
 
-        DeleteEvent( ModelContainer mcA, ModelContainer mcB, List<ModelProperty> removedModelProperties,
-                     String methodName )
+        DataEvent( ModelContainer mcA, ModelContainer mcB, List<ModelProperty> removedModelProperties,
+                   String methodName )
         {
             this.mcA = mcA;
             this.mcB = mcB;

Modified: maven/sandbox/trunk/shared/maven-shared-model/src/test/java/org/apache/maven/shared/model/impl/DefaultModelDataSourceTest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/shared/maven-shared-model/src/test/java/org/apache/maven/shared/model/impl/DefaultModelDataSourceTest.java?rev=678220&r1=678219&r2=678220&view=diff
==============================================================================
--- maven/sandbox/trunk/shared/maven-shared-model/src/test/java/org/apache/maven/shared/model/impl/DefaultModelDataSourceTest.java (original)
+++ maven/sandbox/trunk/shared/maven-shared-model/src/test/java/org/apache/maven/shared/model/impl/DefaultModelDataSourceTest.java Sat Jul 19 14:28:40 2008
@@ -430,10 +430,6 @@
                 return new DummyModelContainer( modelProperties );
             }
 
-            public void sort( List<ModelProperty> modelProperties )
-            {
-
-            }
         }
     }
 }