mcconnell    2003/11/19 20:17:55

  Modified:    repository/impl project.xml
               repository/impl/src/java/org/apache/avalon/repository/impl
                        ArtifactDatabaseImpl.java
                        DefaultFileRepository.java
                        DefaultRepositoryFactory.java defaults.properties
  Log:
  Refactoring.
  
  Revision  Changes    Path
  1.5       +5 -0      avalon-sandbox/repository/impl/project.xml
  
  Index: project.xml
  ===================================================================
  RCS file: /home/cvs/avalon-sandbox/repository/impl/project.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- project.xml       13 Nov 2003 14:24:42 -0000      1.4
  +++ project.xml       20 Nov 2003 04:17:55 -0000      1.5
  @@ -25,6 +25,11 @@
         <version>1.2-dev</version>
       </dependency>
       <dependency>
  +      <groupId>avalon-repository</groupId>
  +      <artifactId>avalon-repository-util</artifactId>
  +      <version>1.2-dev</version>
  +    </dependency>
  +    <dependency>
         <groupId>avalon-util</groupId>
         <artifactId>avalon-util-defaults</artifactId>
         <version>1.0-dev</version>
  
  
  
  1.6       +4 -4      
avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/ArtifactDatabaseImpl.java
  
  Index: ArtifactDatabaseImpl.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/ArtifactDatabaseImpl.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- ArtifactDatabaseImpl.java 19 Nov 2003 17:28:37 -0000      1.5
  +++ ArtifactDatabaseImpl.java 20 Nov 2003 04:17:55 -0000      1.6
  @@ -62,8 +62,8 @@
   import org.apache.avalon.repository.ArtifactDatabase ;
   import org.apache.avalon.repository.Artifact;
   import org.apache.avalon.repository.RepositoryException ;
  -import org.apache.avalon.repository.RepositoryUtils ;
  -import org.apache.avalon.repository.MavenArtifactFactory ;
  +import org.apache.avalon.repository.util.MavenArtifactFactory ;
  +import org.apache.avalon.repository.util.RepositoryUtils ;
   
   
   /**
  
  
  
  1.12      +25 -5     
avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/DefaultFileRepository.java
  
  Index: DefaultFileRepository.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/DefaultFileRepository.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- DefaultFileRepository.java        19 Nov 2003 17:28:37 -0000      1.11
  +++ DefaultFileRepository.java        20 Nov 2003 04:17:55 -0000      1.12
  @@ -75,7 +75,8 @@
   import org.apache.avalon.repository.ArtifactDatabase;
   import org.apache.avalon.repository.RepositoryException;
   import org.apache.avalon.repository.RepositoryRuntimeException;
  -import org.apache.avalon.repository.MavenArtifactFactory;
  +import org.apache.avalon.repository.util.MavenArtifactFactory;
  +import org.apache.avalon.repository.util.LOADER;
   
   
   
  @@ -101,6 +102,11 @@
       * Sequence of remote hosts.
       */
       private final URL[] m_hosts;
  +
  +   /**
  +    * Sequence of remote hosts.
  +    */
  +    private final String[] m_roots;
       
       /** The database implementation. */
       private final ArtifactDatabase m_db;
  @@ -157,6 +163,12 @@
               }
           }
   
  +        m_roots = new String[ m_hosts.length ];
  +        for( int i=0; i<m_hosts.length; i++ )
  +        {
  +            m_roots[i] = m_hosts[i].toString();  
  +        }
  +
           if( context != null )
           {
               System.getProperties().put( "proxySet", "true" );
  @@ -236,9 +248,13 @@
               throw new NullPointerException( "artifact" );
           }
   
  +        return LOADER.getResource( artifact, m_roots, m_base, true );
  +
  +        /*
           final String path = artifact.getURL( "" );
           File file = new File( m_base, path );
           getFile( path );
  +System.out.println("RESOURCE: " + path + "(" + new File( m_base, path ).exists() + 
")" );
           try
           {
               return file.toURL();
  @@ -249,8 +265,10 @@
                 "Cannot covert file to url: " + file;
               throw new RepositoryRuntimeException( error, mue );
           }
  +        */
       }
   
  +    /*
       private boolean getFile( String path ) throws RepositoryException 
       {
           final File local = new File( m_base, path );
  @@ -278,6 +296,7 @@
               throw new RepositoryException( error, e );
           }
       }
  +    */
           
       /**
        * Get a resource relative to the supplied artifact name where the artifact 
  @@ -376,12 +395,12 @@
           return (URL[]) list.toArray( new URL[0] );
       }
   
  -    private URL[] getURLs( Artifact main, Artifact[] dependents ) 
  +    private URL[] getURLs( Artifact artifact, Artifact[] dependents ) 
         throws RepositoryException
       {
           ArrayList list = new ArrayList();
           getURLs( list, dependents );
  -        list.add( getResource( main ) );
  +        list.add( getResource( artifact ) );
           return (URL[]) list.toArray( new URL[0] );
       }
   
  @@ -409,7 +428,8 @@
            {
                File temp = File.createTempFile( "avalon-", "-bar" );
                temp.delete();
  -             HttpController.getFile( url.toString(), temp, true );
  +             LOADER.getResource( url.toString(), temp, true );
  +             //HttpController.getFile( url.toString(), temp, true );
                temp.deleteOnExit();
                return expand( temp.toURL(), buffer );
            }
  
  
  
  1.9       +22 -19    
avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/DefaultRepositoryFactory.java
  
  Index: DefaultRepositoryFactory.java
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/DefaultRepositoryFactory.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- DefaultRepositoryFactory.java     18 Nov 2003 07:36:57 -0000      1.8
  +++ DefaultRepositoryFactory.java     20 Nov 2003 04:17:55 -0000      1.9
  @@ -69,6 +69,7 @@
   import org.apache.avalon.repository.RepositoryContext ;
   import org.apache.avalon.repository.RepositoryFactory ;
   import org.apache.avalon.repository.RepositoryException ;
  +import org.apache.avalon.repository.util.DefaultRepositoryContext ;
   
   
   /**
  @@ -124,7 +125,7 @@
       {
           Properties l_bootstrap = new Properties() ;
           ProxyContext l_proxy = null ;
  -        RepositoryContext l_config = new DefaultRepositoryConfig() ;
  +        DefaultRepositoryContext context = new DefaultRepositoryContext() ;
           
           try
           {
  @@ -136,7 +137,8 @@
                     "Internal error, unable to locate enbedded resource: " 
                     + DEFAULTS 
                     + " from the resource: " 
  -                  + 
DefaultRepositoryFactory.class.getProtectionDomain().getCodeSource().getLocation();
  +                  + DefaultRepositoryFactory.class.getProtectionDomain()
  +                      .getCodeSource().getLocation();
                   throw new IllegalStateException( error );
               }
               l_bootstrap.load( input );
  @@ -145,14 +147,15 @@
           catch ( IOException e )
           {
               throw new RepositoryException( 
  -                    "Failed to load implementation defaults from jar's "
  -                    + DEFAULTS, e ) ;
  +             "Failed to load implementation defaults from jar's "
  +             + DEFAULTS, e ) ;
           }
           
  -        /*
  -         * Create the finder (discovery policy), construct the defaults, and
  -         * macro expand the values.
  -         */
  +        //
  +        // Create the finder (discovery policy), construct the defaults, and
  +        // macro expand the values.
  +        //
  +
           final DefaultsFinder [] l_finders = {
               new SimpleDefaultsFinder( new Properties[] { l_bootstrap }, false ),
               new SystemDefaultsFinder()
  @@ -161,17 +164,17 @@
           Defaults l_defaults = new Defaults( s_singles, s_multiple, l_finders ) ;
           Defaults.macroExpand( l_defaults, null ) ;
           
  -        /*
  -         * Here we start to populate the empty repository configuration using
  -         * the values stored in the defaults.
  -         */
  +        //
  +        // Here we start to populate the empty repository configuration using
  +        // the values stored in the defaults.
  +        //
           
  -        l_config.setCacheDir( l_defaults.getProperty( CACHE_DIR ) ) ;
  +        context.setCacheDir( l_defaults.getProperty( CACHE_DIR ) ) ;
           
           try
           {
  -            l_config.setRemoteRepositoryUrls( 
  -                    l_defaults.getEnumerated( REMOTE_REPO_BASE ) ) ;
  +            context.setRemoteRepositoryUrls( 
  +              l_defaults.getEnumerated( REMOTE_REPO_BASE ) ) ;
           }
           catch ( MalformedURLException e )
           {
  @@ -190,9 +193,9 @@
               l_proxy = new ProxyContext( l_host, l_port, l_authenticator) ;
           }
           
  -        l_config.setProxyContext( l_proxy ) ;
  +        context.setProxyContext( l_proxy ) ;
           
  -        return l_config ;
  +        return context ;
       }
   
   
  
  
  
  1.4       +1 -1      
avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/defaults.properties
  
  Index: defaults.properties
  ===================================================================
  RCS file: 
/home/cvs/avalon-sandbox/repository/impl/src/java/org/apache/avalon/repository/impl/defaults.properties,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- defaults.properties       18 Nov 2003 07:35:53 -0000      1.3
  +++ defaults.properties       20 Nov 2003 04:17:55 -0000      1.4
  @@ -1,5 +1,5 @@
   # Not used at the moment but can be used for defaults discovery 
   # 
  -cache.dir=.merlin 
  +cache.dir=.merlin
   remote.repository.url.0=http://dpml.net 
   remote.repository.url.1=http://ibiblio.org/maven 
  
  
  

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

Reply via email to