mcconnell    2004/01/03 17:19:28

  Modified:    merlin/composition/api/src/java/org/apache/avalon/composition/model
                        Tag: Ver_3_4 Composite.java
               
merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl
                        Tag: Ver_3_4 DefaultContainmentModel.java
                        DefaultDeploymentModel.java DefaultModel.java
               
merlin/composition/impl/src/test/org/apache/avalon/composition/model/test
                        Tag: Ver_3_4 AssemblyTestCase.java
  Log:
  Improve assembly test case reporting.
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.1.2.2   +13 -1     
avalon/merlin/composition/api/src/java/org/apache/avalon/composition/model/Attic/Composite.java
  
  Index: Composite.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/merlin/composition/api/src/java/org/apache/avalon/composition/model/Attic/Composite.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- Composite.java    3 Jan 2004 22:08:21 -0000       1.1.2.1
  +++ Composite.java    4 Jan 2004 01:19:28 -0000       1.1.2.2
  @@ -71,6 +71,18 @@
        */
       void assemble() throws AssemblyException;
   
  +   /**
  +    * Return the set of models consuming this model.
  +    * @return the consumers
  +    */
  +    Model[] getConsumerGraph();
  +
  +   /**
  +    * Return the set of models supplying this model.
  +    * @return the providers
  +    */
  +    Model[] getProviderGraph();
  +
       /**
        * Disassemble the model.
        */
  
  
  
  No                   revision
  No                   revision
  1.13.2.6  +2 -2      
avalon/merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModel.java
  
  Index: DefaultContainmentModel.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModel.java,v
  retrieving revision 1.13.2.5
  retrieving revision 1.13.2.6
  diff -u -r1.13.2.5 -r1.13.2.6
  --- DefaultContainmentModel.java      3 Jan 2004 23:18:55 -0000       1.13.2.5
  +++ DefaultContainmentModel.java      4 Jan 2004 01:19:28 -0000       1.13.2.6
  @@ -182,7 +182,7 @@
         throws ModelException
       {
           super( context.getLogger(), getPath( context ), context.getName(), 
  -          context.getContainmentProfile().getMode() );
  +          context.getContainmentProfile().getMode(), context.getDependencyGraph() );
   
           m_context = context;
           if( context.getPartitionName() == null )
  
  
  
  1.9.2.3   +3 -2      
avalon/merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultDeploymentModel.java
  
  Index: DefaultDeploymentModel.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultDeploymentModel.java,v
  retrieving revision 1.9.2.2
  retrieving revision 1.9.2.3
  diff -u -r1.9.2.2 -r1.9.2.3
  --- DefaultDeploymentModel.java       3 Jan 2004 18:14:58 -0000       1.9.2.2
  +++ DefaultDeploymentModel.java       4 Jan 2004 01:19:28 -0000       1.9.2.3
  @@ -153,7 +153,8 @@
             context.getLogger(), 
             context.getPartitionName(), 
             context.getProfile().getName(), 
  -          context.getProfile().getMode() );
  +          context.getProfile().getMode(),
  +          context.getContainmentContext().getDependencyGraph() );
   
           m_context = context;
           m_activation = m_context.getProfile().getActivationPolicy();
  
  
  
  1.1.1.1.2.1 +25 -2     
avalon/merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultModel.java
  
  Index: DefaultModel.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/merlin/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultModel.java,v
  retrieving revision 1.1.1.1
  retrieving revision 1.1.1.1.2.1
  diff -u -r1.1.1.1 -r1.1.1.1.2.1
  --- DefaultModel.java 24 Sep 2003 09:32:10 -0000      1.1.1.1
  +++ DefaultModel.java 4 Jan 2004 01:19:28 -0000       1.1.1.1.2.1
  @@ -51,6 +51,7 @@
   package org.apache.avalon.composition.model.impl;
   
   import org.apache.avalon.composition.model.Model;
  +import org.apache.avalon.composition.model.DependencyGraph;
   import org.apache.avalon.framework.logger.Logger;
   import org.apache.avalon.excalibur.i18n.ResourceManager;
   import org.apache.avalon.excalibur.i18n.Resources;
  @@ -85,6 +86,8 @@
   
       private final Mode m_mode;
   
  +    private final DependencyGraph m_graph;
  +
       //==============================================================
       // constructor
       //==============================================================
  @@ -97,12 +100,13 @@
       * @param name the profile name
       */
       public DefaultModel( 
  -      final Logger logger, String path, final String name, Mode mode )
  +      final Logger logger, String path, final String name, Mode mode, 
DependencyGraph graph )
       {
           m_logger = logger;
           m_name = name;
           m_path = path;
           m_mode = mode;
  +        m_graph = graph;
       }
   
       //==============================================================
  @@ -144,6 +148,25 @@
       {
           return m_mode;
       }
  +
  +   /**
  +    * Return the set of models consuming this model.
  +    * @return the consumers
  +    */
  +    public Model[] getConsumerGraph()
  +    {
  +        return m_graph.getConsumerGraph( this );
  +    }
  +
  +   /**
  +    * Return the set of models supplying this model.
  +    * @return the providers
  +    */
  +    public Model[] getProviderGraph()
  +    {
  +        return m_graph.getProviderGraph( this );
  +    }
  +
   
       //==============================================================
       // implementation
  
  
  
  No                   revision
  No                   revision
  1.1.2.2   +57 -25    
avalon/merlin/composition/impl/src/test/org/apache/avalon/composition/model/test/Attic/AssemblyTestCase.java
  
  Index: AssemblyTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/merlin/composition/impl/src/test/org/apache/avalon/composition/model/test/Attic/AssemblyTestCase.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- AssemblyTestCase.java     3 Jan 2004 23:18:55 -0000       1.1.2.1
  +++ AssemblyTestCase.java     4 Jan 2004 01:19:28 -0000       1.1.2.2
  @@ -3,6 +3,7 @@
   package org.apache.avalon.composition.model.test;
   
   import org.apache.avalon.composition.model.Model;
  +import org.apache.avalon.composition.model.Composite;
   import org.apache.avalon.composition.model.ContainmentModel;
   import org.apache.avalon.composition.model.DeploymentModel;
   import org.apache.avalon.composition.model.DependencyModel;
  @@ -32,10 +33,8 @@
           try
           {
               m_model.assemble();
  -            System.out.println( "\tstartup graph ");
  -            printStartupGraph( "\t", m_model );
  -            System.out.println( "\tshutdown graph ");
  -            printShutdownGraph( "\t", m_model );
  +            System.out.println( "" );
  +            printModel( "", m_model );
           }
           catch( Throwable e )
           {
  @@ -46,46 +45,79 @@
           }
       }
   
  -    private void printStartupGraph( String lead, Model model )
  +    private void printModel( String lead, Model model )
       {
           if( model instanceof ContainmentModel )
           {
  -            Model[] models = ((ContainmentModel)model).getStartupGraph();
  -            printStartupGraph( lead, models );
  +            printContainmentModel( lead, (ContainmentModel) model );
  +        }
  +        else if( model instanceof DeploymentModel ) 
  +        {
  +            printDeploymentModel( lead, (DeploymentModel) model );
           }
       }
  -    private void printStartupGraph( String lead, Model[] models )
  +
  +    private void printContainmentModel( String lead, ContainmentModel model )
       {
  -        for( int i=0; i<models.length; i++ )
  +        System.out.println( lead + "model:" + model );
  +        if( model instanceof Composite )
  +        {
  +            printCompositeModel( "\t" + lead, (Composite) model );
  +        }
  +        Model[] models = model.getModels();
  +        if( models.length > 0 )
  +        {
  +            System.out.println( lead + "\tchildren:" );
  +            for( int i=0; i<models.length; i++ )
  +            {
  +                Model m = models[i];
  +                printModel( "\t\t" + lead, m );
  +            }
  +        }
  +        models = model.getStartupGraph();
  +        if( models.length > 0 )
  +        {
  +            System.out.println( lead + "\tstartup:" );
  +            for( int i=0; i<models.length; i++ )
  +            {
  +                Model m = models[i];
  +                System.out.println( "\t\t" + lead + (i+1) + ": " + m );
  +            }
  +        }
  +        models = ((ContainmentModel)model).getShutdownGraph();
  +        if( models.length > 0 )
           {
  -            Model model = models[i];
  -            System.out.println( lead + (i+1) + ": " + model );
  -            if( model instanceof ContainmentModel )
  +            System.out.println( lead + "\tshutdown:" );
  +            for( int i=0; i<models.length; i++ )
               {
  -                printStartupGraph( lead + "\t", (ContainmentModel) model );
  +                Model m = models[i];
  +                System.out.println( "\t\t" + lead + (i+1) + ": " + m );
               }
           }
       }
   
  -    private void printShutdownGraph( String lead, Model model )
  +    private void printDeploymentModel( String lead, DeploymentModel model )
       {
  -        if( model instanceof ContainmentModel )
  +        System.out.println( lead + "model:" + model );
  +        if( model instanceof Composite )
           {
  -            Model[] models = ((ContainmentModel)model).getShutdownGraph();
  -            printShutdownGraph( lead, models );
  +            printCompositeModel( lead, (Composite) model );
           }
       }
  -    private void printShutdownGraph( String lead, Model[] models )
  +
  +    private void printCompositeModel( String lead, Composite model )
       {
  +        Model[] models = model.getProviderGraph();
           for( int i=0; i<models.length; i++ )
           {
  -            Model model = models[i];
  -            System.out.println( lead + (i+1) + ": " + model );
  -            if( model instanceof ContainmentModel )
  -            {
  -                printShutdownGraph( lead + "\t", (ContainmentModel) model );
  -            }
  +            Model m = models[i];
  +            System.out.println( "\t" + lead + (i+1) + ": " + m + " (provider)" );
  +        }
  +        models = model.getConsumerGraph();
  +        for( int i=0; i<models.length; i++ )
  +        {
  +            Model m = models[i];
  +            System.out.println( "\t" + lead + (i+1) + ": " + m + " (consumer)" );
           }
       }
  -
   }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to