mcconnell 2003/07/18 23:16:43 Modified: merlin/composition/src/java/org/apache/avalon/composition/model/impl DefaultContainmentModel.java DefaultDependencyModel.java DefaultDeploymentModel.java DefaultModel.java Resources.properties merlin/composition/src/test/conf dependency.xml merlin/composition/src/test/org/apache/avalon/composition/model/test DependencyTestCase.java merlin/composition/src/test/org/apache/avalon/composition/model/testc TestC.java TestC.xinfo Log: Validation of explicit selection under the test case including relative references. Revision Changes Path 1.14 +2 -2 avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModel.java Index: DefaultContainmentModel.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModel.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- DefaultContainmentModel.java 17 Jul 2003 21:21:57 -0000 1.13 +++ DefaultContainmentModel.java 19 Jul 2003 06:16:42 -0000 1.14 @@ -403,6 +403,6 @@ public String toString() { - return "[containment model: " + getFQN() + "]"; + return "[containment model: " + getQualifiedName() + "]"; } } 1.2 +11 -5 avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultDependencyModel.java Index: DefaultDependencyModel.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultDependencyModel.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- DefaultDependencyModel.java 19 Jul 2003 05:25:35 -0000 1.1 +++ DefaultDependencyModel.java 19 Jul 2003 06:16:42 -0000 1.2 @@ -153,7 +153,6 @@ */ public Model select( String key, Model[] candidates ) { - getLogger().debug( "handling dependency for key: " + key ); DependencyDirective directive = getDirective( key ); if( directive != null ) { @@ -162,16 +161,16 @@ if( directive.getSource() != null ) { String path = directive.getSource(); - getLogger().debug( "located path: " + path ); String source = resolvePath( m_partition, path ); - getLogger().debug( "resolved path: " + source ); for( int i=0; i<candidates.length; i++ ) { final Model candidate = candidates[i]; final String name = candidate.getQualifiedName(); - getLogger().debug( "candidate: " + name ); if( source.equals( name ) ) { + getLogger().debug( + "selected [" + name + "] for key [" + + key + "] using [" + path + "]."); return candidate; } } @@ -208,7 +207,14 @@ if( n > 0 ) { int index = partition.substring( 0, n-1 ).lastIndexOf( "/" ); - return partition.substring( 0, index ); + if( index == 0 ) + { + return "/"; + } + else + { + return partition.substring( 0, index ); + } } else { 1.15 +2 -2 avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultDeploymentModel.java Index: DefaultDeploymentModel.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultDeploymentModel.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- DefaultDeploymentModel.java 19 Jul 2003 05:25:35 -0000 1.14 +++ DefaultDeploymentModel.java 19 Jul 2003 06:16:42 -0000 1.15 @@ -214,7 +214,7 @@ m_dependencyModel = new DefaultDependencyModel( - context.getLogger().getChildLogger( "dependencies" ), + context.getLogger().getChildLogger( "deps" ), context.getPartitionName(), context.getProfile().getName(), context.getType().getDependencies(), @@ -628,6 +628,6 @@ public String toString() { - return "[deployment model : " + getFQN() + "]"; + return "[deployment model : " + getQualifiedName() + "]"; } } 1.8 +1 -13 avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultModel.java Index: DefaultModel.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/DefaultModel.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- DefaultModel.java 19 Jul 2003 05:25:35 -0000 1.7 +++ DefaultModel.java 19 Jul 2003 06:16:42 -0000 1.8 @@ -102,13 +102,6 @@ m_name = name; m_path = path; m_mode = mode; - - if( getLogger().isDebugEnabled() ) - { - final String message = - REZ.getString( "created", this.toString() ); - getLogger().debug( message ); - } } //============================================================== @@ -162,11 +155,6 @@ protected Logger getLogger() { return m_logger; - } - - protected String getFQN() - { - return getPath() + getName(); } public String toString() 1.12 +0 -6 avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/Resources.properties Index: Resources.properties =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/java/org/apache/avalon/composition/model/impl/Resources.properties,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- Resources.properties 19 Jul 2003 05:25:35 -0000 1.11 +++ Resources.properties 19 Jul 2003 06:16:42 -0000 1.12 @@ -38,12 +38,6 @@ deployment.context.internal.error=The context key [{0}] was recognized but could not be fulfilled as no context entry model has be assigned to handle the request. deployment.registration.override.error=Illegal attempt to override an existing model entry [{0}]. - -# DefaultModel -# ============ -created=created: {0} - - # DefaultSystemContext # ==================== system.context.base.not-a-directory.error="Base directory argument is not a directory: {0}. 1.2 +12 -7 avalon-sandbox/merlin/composition/src/test/conf/dependency.xml Index: dependency.xml =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/test/conf/dependency.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- dependency.xml 19 Jul 2003 05:25:35 -0000 1.1 +++ dependency.xml 19 Jul 2003 06:16:42 -0000 1.2 @@ -31,13 +31,18 @@ </context> </component> - <component name="test-b" class="org.apache.avalon.composition.model.testb.TestB"/> + <container name="fred"> - <component name="test-c" class="org.apache.avalon.composition.model.testc.TestC"> - <dependencies> - <dependency key="a" source="test-a"/> - <dependency key="b" source="test-b"/> - </dependencies> - </component> + <component name="test-b" class="org.apache.avalon.composition.model.testb.TestB"/> + + <component name="test-c" class="org.apache.avalon.composition.model.testc.TestC"> + <dependencies> + <dependency key="a" source="../test-a"/> + <dependency key="a2" source="/test-a"/> + <dependency key="b" source="test-b"/> + </dependencies> + </component> + + </container> </container> 1.2 +8 -6 avalon-sandbox/merlin/composition/src/test/org/apache/avalon/composition/model/test/DependencyTestCase.java Index: DependencyTestCase.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/test/org/apache/avalon/composition/model/test/DependencyTestCase.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- DependencyTestCase.java 19 Jul 2003 05:25:35 -0000 1.1 +++ DependencyTestCase.java 19 Jul 2003 06:16:42 -0000 1.2 @@ -8,6 +8,7 @@ import java.util.Date; import org.apache.avalon.composition.model.Model; +import org.apache.avalon.composition.model.ContainmentModel; import org.apache.avalon.composition.model.DeploymentModel; import org.apache.avalon.composition.model.DependencyModel; import org.apache.avalon.composition.model.AbstractTestCase; @@ -34,16 +35,17 @@ public void testStandardDependencyModel() throws Exception { DeploymentModel a = (DeploymentModel) m_model.getModel( "test-a" ); - DeploymentModel b = (DeploymentModel) m_model.getModel( "test-b" ); - DeploymentModel model = (DeploymentModel) m_model.getModel( "test-c" ); + ContainmentModel fred = (ContainmentModel) m_model.getModel( "fred" ); + DeploymentModel b = (DeploymentModel) fred.getModel( "test-b" ); + DeploymentModel c = (DeploymentModel) fred.getModel( "test-c" ); - if( model == null ) + if( c == null ) { fail( "null deployment model 'test-c'" ); } - DependencyModel dependencyModel = model.getDependencyModel(); + DependencyModel dependencyModel = c.getDependencyModel(); if( dependencyModel == null ) { fail( "null dependency model" ); @@ -52,7 +54,7 @@ DependencyDescriptor[] deps = dependencyModel.getDependencies(); if( deps != null ) { - assertTrue( "dependency count", deps.length == 2 ); + assertTrue( "dependency count", deps.length == 3 ); } else { @@ -66,7 +68,7 @@ try { Model selection = dependencyModel.select( key, candidates ); - System.out.println( "selection: " + selection ); + assertNotNull( "selection for key: " + key, selection ); } catch( Throwable e ) { 1.2 +2 -0 avalon-sandbox/merlin/composition/src/test/org/apache/avalon/composition/model/testc/TestC.java Index: TestC.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/test/org/apache/avalon/composition/model/testc/TestC.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- TestC.java 4 Jul 2003 07:27:43 -0000 1.1 +++ TestC.java 19 Jul 2003 06:16:43 -0000 1.2 @@ -24,6 +24,8 @@ Logger logger = getLogger().getChildLogger( "service" ); logger.info( "lookup A" ); manager.lookup( "a" ); + logger.info( "lookup A2" ); + manager.lookup( "a2" ); logger.info( "lookup B" ); manager.lookup( "b" ); logger.info( "ok" ); 1.2 +1 -0 avalon-sandbox/merlin/composition/src/test/org/apache/avalon/composition/model/testc/TestC.xinfo Index: TestC.xinfo =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/composition/src/test/org/apache/avalon/composition/model/testc/TestC.xinfo,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- TestC.xinfo 4 Jul 2003 07:27:43 -0000 1.1 +++ TestC.xinfo 19 Jul 2003 06:16:43 -0000 1.2 @@ -9,6 +9,7 @@ </services> <dependencies> <dependency type="org.apache.avalon.composition.model.testa.A" key="a"/> + <dependency type="org.apache.avalon.composition.model.testa.A" key="a2"/> <dependency type="org.apache.avalon.composition.model.testb.B" key="b"/> </dependencies>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]