Author: mkleint
Date: Tue Jan 29 10:55:29 2008
New Revision: 616477

URL: http://svn.apache.org/viewvc?rev=616477&view=rev
Log:
make the toolchains components compilable and runnable against 2.0.6. Please 
note that it will not actually work in 2.0.6+, since the 
maven-toolchains-plugin will only work in 3.0.9+. But it allows other plugins 
adopting toolchains to use them without bumping the version up to 3.0.9 just 
yet,

Modified:
    maven/shared/trunk/maven-toolchain/pom.xml
    
maven/shared/trunk/maven-toolchain/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
    maven/shared/trunk/maven-toolchain/src/main/mdo/toolchains.xml

Modified: maven/shared/trunk/maven-toolchain/pom.xml
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-toolchain/pom.xml?rev=616477&r1=616476&r2=616477&view=diff
==============================================================================
--- maven/shared/trunk/maven-toolchain/pom.xml (original)
+++ maven/shared/trunk/maven-toolchain/pom.xml Tue Jan 29 10:55:29 2008
@@ -20,12 +20,12 @@
         <dependency>
             <groupId>org.apache.maven</groupId>
             <artifactId>maven-core</artifactId>
-            <version>2.0.9-SNAPSHOT</version>
+            <version>2.0.6</version>
         </dependency>
         <dependency>
             <groupId>org.apache.maven</groupId>
             <artifactId>maven-artifact</artifactId>
-            <version>2.0.9-SNAPSHOT</version>
+            <version>2.0.6</version>
         </dependency>
     </dependencies>
     <build>
@@ -33,6 +33,7 @@
             <plugin>
                 <groupId>org.codehaus.modello</groupId>
                 <artifactId>modello-maven-plugin</artifactId>
+                <version>1.0-alpha-14</version>
                 <executions>
                     <execution>
                         <goals>
@@ -51,7 +52,7 @@
                 <plugin>
                     <artifactId>maven-shade-plugin</artifactId>
                     <groupId>org.apache.maven.plugins</groupId>
-                    <version>1.0-alpha-13-SNAPSHOT</version>
+                    <version>1.0-alpha-15</version>
                     <executions>
                         <execution>
                             <id>shading</id>                                

Modified: 
maven/shared/trunk/maven-toolchain/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-toolchain/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java?rev=616477&r1=616476&r2=616477&view=diff
==============================================================================
--- 
maven/shared/trunk/maven-toolchain/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
 (original)
+++ 
maven/shared/trunk/maven-toolchain/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
 Tue Jan 29 10:55:29 2008
@@ -22,14 +22,19 @@
 import java.io.BufferedInputStream;
 import java.io.File;
 import java.io.FileInputStream;
+import java.io.IOException;
 import java.io.InputStreamReader;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.descriptor.PluginDescriptor;
+import org.apache.maven.project.MavenProject;
 import org.apache.maven.toolchain.model.PersistedToolchains;
 import org.apache.maven.toolchain.model.ToolchainModel;
 import org.apache.maven.toolchain.model.io.xpp3.MavenToolchainsXpp3Reader;
@@ -40,7 +45,6 @@
 import org.codehaus.plexus.context.ContextException;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
-import org.codehaus.plexus.util.IOUtil;
 
 /**
  *
@@ -146,19 +150,38 @@
         }
         return null;
     }
+
+    private MavenProject getCurrentProject(MavenSession session) {
+        //use reflection since MavenSession.getCurrentProject() is not part of 
3.0.8
+        try 
+        {
+            Method meth = session.getClass().getMethod("getCurrentProject", 
new Class[0]);
+            return (MavenProject) meth.invoke(session, null);
+        } catch (Exception ex) 
+        {
+            //just ignore, we're running in pre- 3.0.9
+        }
+        return null;
+    }
     
     private Map retrieveContext( MavenSession session ) 
     {
-        if (session == null) {
-            return Collections.EMPTY_MAP;
+        if (session == null) 
+        {
+            return new HashMap();
         }
         PluginDescriptor desc = new PluginDescriptor();
         desc.setGroupId( PluginDescriptor.getDefaultPluginGroupId() );
         desc.setArtifactId( PluginDescriptor.getDefaultPluginArtifactId 
("toolchains") );
-        
-        return  session.getPluginContext( desc, session.getCurrentProject() );
-        
+        MavenProject current = getCurrentProject(session);
+        if ( current != null ) 
+        {
+            return session.getPluginContext( desc, current );
+            
+        }
+        return new HashMap();
     }
+    
 
     public void storeToolchainToBuildContext( ToolchainPrivate toolchain,
                                               MavenSession session )
@@ -195,7 +218,16 @@
             }
             finally
             {
-                IOUtil.close( in );
+                if (in != null) 
+                {
+                    try 
+                    {
+                        in.close();
+                    } 
+                    catch (IOException ex) 
+                    { }
+                }
+//                IOUtil.close( in );
             }
         }
         else

Modified: maven/shared/trunk/maven-toolchain/src/main/mdo/toolchains.xml
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-toolchain/src/main/mdo/toolchains.xml?rev=616477&r1=616476&r2=616477&view=diff
==============================================================================
--- maven/shared/trunk/maven-toolchain/src/main/mdo/toolchains.xml (original)
+++ maven/shared/trunk/maven-toolchain/src/main/mdo/toolchains.xml Tue Jan 29 
10:55:29 2008
@@ -32,7 +32,7 @@
         </default>
     </defaults>
     <classes>
-        <class rootElement="true" xml.tagName="toolchains">
+        <class rootElement="true" xml.tagName="toolchains" 
xsd.compositor="sequence">
             <name>PersistedToolchains</name>
             <description><![CDATA[
          The <code>&lt;project&gt;</code> element is the root of the 
descriptor.


Reply via email to