Author: rineholt
Date: Mon Oct 16 12:57:15 2006
New Revision: 464646

URL: http://svn.apache.org/viewvc?view=rev&rev=464646
Log:
move offline patch to branch. See r464051 commit

Modified:
    
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenArtifactRepository.java
    
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenHelper.java
    
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/test/java/org/apache/tuscany/services/maven/MavenArtifactRepositoryTestCase.java

Modified: 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenArtifactRepository.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenArtifactRepository.java?view=diff&rev=464646&r1=464645&r2=464646
==============================================================================
--- 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenArtifactRepository.java
 (original)
+++ 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenArtifactRepository.java
 Mon Oct 16 12:57:15 2006
@@ -50,7 +50,7 @@
     public MavenArtifactRepository(@Property(name = "remoteRepoUrl")
     String remoteRepoUrl, @Autowire
     RuntimeInfo runtimeInfo) {
-        mavenHelper = new MavenHelper(remoteRepoUrl);
+        mavenHelper = new MavenHelper(remoteRepoUrl, runtimeInfo.isOnline());
         warRepositoryHelper = new 
WarRepositoryHelper(runtimeInfo.getBaseURL());
         mavenHelper.start();
     }

Modified: 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenHelper.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenHelper.java?view=diff&rev=464646&r1=464645&r2=464646
==============================================================================
--- 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenHelper.java
 (original)
+++ 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/main/java/org/apache/tuscany/services/maven/MavenHelper.java
 Mon Oct 16 12:57:15 2006
@@ -75,6 +75,9 @@
     /** Artifact resolver */
     private ArtifactResolver artifactResolver;
 
+    /** Online */
+    private boolean online;
+
     /**
      * Initialize the remote repository URLs.
      * 
@@ -83,8 +86,9 @@
      * @param runtimeInfo
      *            Runtime information.
      */
-    public MavenHelper(String remoteRepositoryUrl) {
+    public MavenHelper(String remoteRepositoryUrl, boolean online) {
         this.remoteRepositoryUrls = remoteRepositoryUrl.split(",");
+        this.online = online;
     }
 
     /**
@@ -99,31 +103,31 @@
 
             Embedder embedder = new Embedder();
             ClassWorld classWorld = new ClassWorld();
-            
+
             classWorld.newRealm("plexus.core", getClass().getClassLoader());
-            
+
             // Evil hack for Tomcat classloader issue - starts
             Field realmsField = ClassWorld.class.getDeclaredField("realms");
             realmsField.setAccessible(true);
-            Map realms = (Map)realmsField.get(classWorld);
+            Map realms = (Map) realmsField.get(classWorld);
             DefaultClassRealm realm = (DefaultClassRealm) 
realms.get("plexus.core");
 
             Class clazz = 
Class.forName("org.codehaus.classworlds.RealmClassLoader");
-            Constructor ctr = clazz.getDeclaredConstructor(new Class[] 
{DefaultClassRealm.class, ClassLoader.class});
+            Constructor ctr = clazz.getDeclaredConstructor(new Class[] { 
DefaultClassRealm.class, ClassLoader.class });
             ctr.setAccessible(true);
             Object realmClassLoader = ctr.newInstance(realm, 
getClass().getClassLoader());
-            
+
             Field realmClassLoaderField = 
DefaultClassRealm.class.getDeclaredField("classLoader");
             realmClassLoaderField.setAccessible(true);
             realmClassLoaderField.set(realm, realmClassLoader);
             // Evil hack for Tomcat classloader issue - ends
-            
+
             embedder.start(classWorld);
 
             metadataSource = (ArtifactMetadataSource) 
embedder.lookup(ArtifactMetadataSource.ROLE);
             artifactFactory = (ArtifactFactory) 
embedder.lookup(ArtifactFactory.ROLE);
             artifactResolver = (ArtifactResolver) 
embedder.lookup(ArtifactResolver.ROLE);
-            
+
             setUpRepositories(embedder);
 
             embedder.stop();
@@ -173,10 +177,10 @@
                 rootArtifact.getVersion(), 
org.apache.maven.artifact.Artifact.SCOPE_RUNTIME, rootArtifact.getType());
 
         try {
-            
+
             if (resolve(mavenRootArtifact)) {
                 rootArtifact.setUrl(mavenRootArtifact.getFile().toURL());
-                if(resolveDependencies(rootArtifact, mavenRootArtifact)) {
+                if (resolveDependencies(rootArtifact, mavenRootArtifact)) {
                     return true;
                 } else {
                     return false;
@@ -194,7 +198,7 @@
      * Resolves the artifact.
      */
     private boolean resolve(org.apache.maven.artifact.Artifact 
mavenRootArtifact) {
-        
+
         try {
             artifactResolver.resolve(mavenRootArtifact, remoteRepositories, 
localRepository);
             return true;
@@ -203,7 +207,7 @@
         } catch (ArtifactNotFoundException ex) {
             return false;
         }
-        
+
     }
 
     /*
@@ -217,20 +221,23 @@
 
             ArtifactRepositoryLayout layout = (ArtifactRepositoryLayout) 
embedder.lookup(ArtifactRepositoryLayout.ROLE, "default");
 
-            ArtifactRepositoryPolicy snapshotsPolicy = new 
ArtifactRepositoryPolicy(true, ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS,
-                    ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN);
-            ArtifactRepositoryPolicy releasesPolicy = new 
ArtifactRepositoryPolicy(true, ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS,
-                    ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN);
+            String updatePolicy = online ? 
ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS : 
ArtifactRepositoryPolicy.UPDATE_POLICY_NEVER;
+            ArtifactRepositoryPolicy snapshotsPolicy = new 
ArtifactRepositoryPolicy(true, updatePolicy, 
ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN);
+            ArtifactRepositoryPolicy releasesPolicy = new 
ArtifactRepositoryPolicy(true, updatePolicy, 
ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN);
 
             localRepository = 
artifactRepositoryFactory.createArtifactRepository("local", 
LOCAL_REPO.toURL().toExternalForm(), layout,
                     snapshotsPolicy, releasesPolicy);
 
-            for(String remoteRepositoryUrl : remoteRepositoryUrls) {
-                String repoid= remoteRepositoryUrl.replace(':', '_');
-                repoid= repoid.replace('/', '_');
-                repoid= repoid.replace('\\', '_');
-                
remoteRepositories.add(artifactRepositoryFactory.createArtifactRepository(repoid,
 remoteRepositoryUrl, layout,
-                    snapshotsPolicy, releasesPolicy));
+            if (!online) {
+                return;
+            }
+
+            for (String remoteRepositoryUrl : remoteRepositoryUrls) {
+                String repoid = remoteRepositoryUrl.replace(':', '_');
+                repoid = repoid.replace('/', '_');
+                repoid = repoid.replace('\\', '_');
+                
remoteRepositories.add(artifactRepositoryFactory.createArtifactRepository(repoid,
 remoteRepositoryUrl, layout, snapshotsPolicy,
+                        releasesPolicy));
             }
 
         } catch (MalformedURLException ex) {
@@ -253,7 +260,7 @@
 
             resolutionGroup = metadataSource.retrieve(mavenRootArtifact, 
localRepository, remoteRepositories);
             result = 
artifactResolver.resolveTransitively(resolutionGroup.getArtifacts(), 
mavenRootArtifact, remoteRepositories, localRepository,
-                        metadataSource);
+                    metadataSource);
 
             // Add the artifacts to the deployment unit
             for (Object obj : result.getArtifacts()) {
@@ -276,7 +283,7 @@
         } catch (ArtifactNotFoundException ex) {
             return false;
         }
-        
+
         return true;
 
     }

Modified: 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/test/java/org/apache/tuscany/services/maven/MavenArtifactRepositoryTestCase.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/test/java/org/apache/tuscany/services/maven/MavenArtifactRepositoryTestCase.java?view=diff&rev=464646&r1=464645&r2=464646
==============================================================================
--- 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/test/java/org/apache/tuscany/services/maven/MavenArtifactRepositoryTestCase.java
 (original)
+++ 
incubator/tuscany/branches/sca-java-M2/sca/services/maven/src/test/java/org/apache/tuscany/services/maven/MavenArtifactRepositoryTestCase.java
 Mon Oct 16 12:57:15 2006
@@ -69,16 +69,18 @@
             }
         });
         Artifact artifact = new Artifact();
-        artifact.setGroup("org.apache.maven");
-        artifact.setName("maven-artifact");
-        artifact.setVersion("2.0.4");
+        artifact.setGroup("junit");
+        artifact.setName("junit");
+        artifact.setVersion("3.8.1");
         artifact.setType("jar");
 
         repository.resolve(artifact);
 
         Set<URL> urls = artifact.getUrls();
+        
+        System.err.println(urls);
 
-        assertEquals(2, urls.size());
+        assertEquals(1, urls.size());
 
     }
 



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

Reply via email to