You are viewing a plain text version of this content. The canonical link for it is here.
Posted to npanday-commits@incubator.apache.org by ap...@apache.org on 2010/10/16 10:29:18 UTC

svn commit: r1023237 [1/2] - in /incubator/npanday/trunk: ./ components/dotnet-artifact/src/main/java/npanday/artifact/impl/ components/dotnet-artifact/src/main/resources/META-INF/plexus/ components/dotnet-core/src/main/java/npanday/ components/dotnet-...

Author: apadilla
Date: Sat Oct 16 10:29:17 2010
New Revision: 1023237

URL: http://svn.apache.org/viewvc?rev=1023237&view=rev
Log:
merged branch npanday-vs2010-support to trunk

Modified:
    incubator/npanday/trunk/   (props changed)
    incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactContextImpl.java
    incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactInstallerImpl.java
    incubator/npanday/trunk/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml
    incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactType.java
    incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java
    incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/PathUtil.java
    incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/compiler-plugins.xml
    incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/executable-plugins.xml
    incubator/npanday/trunk/components/dotnet-dao-project/src/main/java/npanday/dao/impl/ProjectDaoImpl.java
    incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java
    incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
    incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
    incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/NetExecutableFactoryImpl.java
    incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java
    incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/StateMachineProcessorImpl.java
    incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java
    incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoTransitionRuleFactory.java
    incubator/npanday/trunk/dotnet/assemblies/NPanday/   (props changed)
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/NormalPomConverter.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPanday/VisualStudio/Addin/Connect.cs
    incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxBinDependencyResolver.java
    incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxCompilerMojo.java
    incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java
    incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java
    incubator/npanday/trunk/plugins/maven-install-plugin/src/main/java/npanday/plugin/install/FileInstallerMojo.java
    incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ExistingResxGenerator.java
    incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java
    incubator/npanday/trunk/plugins/maven-test-plugin/src/main/java/npanday/plugin/test/TesterMojo.java
    incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java
    incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml
    incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/template/NPanday.VisualStudio.AddIn
    incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/SettingsGeneratorMojo.cs
    incubator/npanday/trunk/pom.xml

Propchange: incubator/npanday/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Sat Oct 16 10:29:17 2010
@@ -0,0 +1 @@
+/incubator/npanday/branches/npanday-vs2010-support:1002029-1022353

Modified: incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactContextImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactContextImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactContextImpl.java Sat Oct 16 10:29:17 2010
@@ -115,6 +115,7 @@ public final class ArtifactContextImpl
         List<Artifact> artifacts = repository.getArtifactsFor( groupId, artifactId, version, type );
         for ( Artifact artifact : artifacts )
         {
+            logger.debug("NPANDAY-000-002: set file");        
             artifact.setFile( PathUtil.getUserAssemblyCacheFileFor( artifact, getLocalRepository() ) );
         }
         return artifacts;

Modified: incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactInstallerImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactInstallerImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactInstallerImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-artifact/src/main/java/npanday/artifact/impl/ArtifactInstallerImpl.java Sat Oct 16 10:29:17 2010
@@ -314,8 +314,12 @@ public class ArtifactInstallerImpl
     public void installArtifactWithPom( Artifact artifact, File pomFile, boolean modifyProjectMetadata )
         throws ArtifactInstallationException
     {
+        logger.debug( "NPANDAY-001-031: artifact:" + artifact);
+        logger.debug( "NPANDAY-001-032: artifact file:" + artifact.getFile());    
         ApplicationConfig applicationConfig = artifactContext.getApplicationConfigFor( artifact );
         File configExeFile = applicationConfig.getConfigBuildPath();
+        logger.debug( "NPANDAY-001-032: config file:" + configExeFile);
+        
         if ( configExeFile.exists() )
         {
             try
@@ -343,7 +347,7 @@ public class ArtifactInstallerImpl
                         + ", Dest Directory = " + destFile.getParent());
                 try
                 {
-				    //this is previously using copyFile(File, File)
+                    //this is previously using copyFile(File, File)
                     FileUtils.copyFileToDirectory( artifactFile.getAbsolutePath(), destFile.getParent() );
                 }
                 catch ( IOException e )
@@ -372,7 +376,10 @@ public class ArtifactInstallerImpl
             Model model;
             try
             {
+                logger.debug( "NPANDAY-001-033: config file:" + artifact.getType());
+
                 model = reader.read( new FileReader( pomFile ) );
+
                 if ( configExeFile.exists() )
                 {
                     Dependency dependency = new Dependency();
@@ -396,6 +403,7 @@ public class ArtifactInstallerImpl
             dao.openConnection();
             try
             {
+                logger.debug( "NPANDAY-001-034: ProjectDao. Call storeModelAndResolveDependencies on :" + dao.getClass());        
                 dao.storeModelAndResolveDependencies( model, pomFile.getParentFile(), localRepository,
                                                       new ArrayList<ArtifactRepository>() );
             }
@@ -408,7 +416,7 @@ public class ArtifactInstallerImpl
             finally
             {
                 dao.closeConnection();
-				deleteTempDir(pomFile);
+                deleteTempDir(pomFile);
             }
         }
     }

Modified: incubator/npanday/trunk/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml (original)
+++ incubator/npanday/trunk/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml Sat Oct 16 10:29:17 2010
@@ -65,6 +65,15 @@
     </component>
     <component>
       <role>org.apache.maven.artifact.handler.ArtifactHandler</role>
+      <role-hint>gac_msil4</role-hint>
+      <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
+      <configuration>
+        <extension>dll</extension>
+        <type>gac_msil4</type>
+      </configuration>
+    </component>
+    <component>
+      <role>org.apache.maven.artifact.handler.ArtifactHandler</role>      
       <role-hint>gac_32</role-hint>
       <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
       <configuration>
@@ -73,6 +82,15 @@
       </configuration>
     </component>
     <component>
+      <role>org.apache.maven.artifact.handler.ArtifactHandler</role>      
+      <role-hint>gac_64</role-hint>
+      <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
+      <configuration>
+        <extension>dll</extension>
+        <type>gac_64</type>
+      </configuration>
+    </component>	
+    <component>
       <role>org.apache.maven.artifact.handler.ArtifactHandler</role>
       <role-hint>nar</role-hint>
       <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>

Modified: incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactType.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactType.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactType.java (original)
+++ incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactType.java Sat Oct 16 10:29:17 2010
@@ -26,19 +26,19 @@ package npanday;
  */
 public enum ArtifactType
 {
-	NULL( null, null, null ),
-	
-	DOTNET_MODULE("dotnet-module", "module", "netmodule"),
-	
-	/**
-	 * A dll-file compiled by any of the .NET compilers.
-	 */
-	DOTNET_LIBRARY("dotnet-library", "library", "dll"),
-	
-	/**
-	 * Configuration file attachable to a library
-	 * artifact.
-	 */
+    NULL( null, null, null ),
+
+    DOTNET_MODULE("dotnet-module", "module", "netmodule"),
+
+    /**
+     * A dll-file compiled by any of the .NET compilers.
+     */
+    DOTNET_LIBRARY("dotnet-library", "library", "dll"),
+
+    /**
+     * Configuration file attachable to a library
+     * artifact.
+    */
     DOTNET_LIBRARY_CONFIG("dotnet-library-config", null, "dll.config"),
 
     /**
@@ -47,9 +47,9 @@ public enum ArtifactType
     DOTNET_EXECUTABLE("dotnet-executable", "exe", "exe"),
     
     /**
-	 * Configuration file attachable to a executable
-	 * artifact.
-	 */
+     * Configuration file attachable to a executable
+     * artifact.
+    */
     DOTNET_EXECUTABLE_CONFIG("dotnet-executable-config", null, "exe.config"),
 
     /**
@@ -92,14 +92,16 @@ public enum ArtifactType
     // DOTNET_ASPX("dotnet-aspx", "library", "dll"),
     // DOTNET_("dotnet-gac_generic", "library", "dll"),
     // DOTNET_("dotnet-gac_msil", "library", "dll"),
+    // DOTNET_("dotnet-gac_msil4", "library", "dll"),
     // DOTNET_("dotnet-gac_32", "library", "dll"),
+    // DOTNET_("dotnet-gac_64", "library", "dll"),	
     // DOTNET_("dotnet-nar", "library", "nar"),
     // DOTNET_("dotnet-visual-studio-addin", "library", "dll"),
     
     /** 
      * Use DOTNET_MODULE instead
      */
-	@Deprecated
+    @Deprecated
     MODULE( "module", "module", "netmodule" ),
     
     /** 
@@ -111,7 +113,7 @@ public enum ArtifactType
     /** 
      * Use DOTNET_EXECUTABLE instead
      */
-	@Deprecated
+    @Deprecated
     EXE( "exe", "exe", "exe" ),
     
     /** 
@@ -149,11 +151,15 @@ public enum ArtifactType
     GAC_GENERIC ("gac_generic", null, "dll"),
     
     GAC_MSIL ("gac_msil", null, "dll"),
+
+    GAC_MSIL4 ("gac_msil4", null, "dll"),    
     
     GAC_32 ( "gac_32", null, "dll"),
 
+    GAC_64 ( "gac_64", null, "dll"),	
+
     COM_REFERENCE( "com_reference", null, "dll");
-	
+
     /**
      * The extension used for the artifact(netmodule, dll, exe)
      */

Modified: incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java (original)
+++ incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java Sat Oct 16 10:29:17 2010
@@ -104,6 +104,8 @@ public class ArtifactTypeHelper
                 || packaging.equals( ArtifactType.GAC_GENERIC )
                 || packaging.equals( ArtifactType.GAC )
                 || packaging.equals( ArtifactType.GAC_32)
-                || packaging.equals( ArtifactType.GAC_MSIL );
+                || packaging.equals( ArtifactType.GAC_64)				
+                || packaging.equals( ArtifactType.GAC_MSIL )
+                || packaging.equals( ArtifactType.GAC_MSIL4 );
     }
 }

Modified: incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/PathUtil.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/PathUtil.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/PathUtil.java (original)
+++ incubator/npanday/trunk/components/dotnet-core/src/main/java/npanday/PathUtil.java Sat Oct 16 10:29:17 2010
@@ -20,8 +20,13 @@ package npanday;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
+import npanday.ArtifactTypeHelper;
+import npanday.ArtifactType;
+import org.codehaus.plexus.util.DirectoryScanner;
+import org.codehaus.plexus.util.FileUtils;
 
 import java.io.File;
+import java.util.*;
 import java.util.logging.Logger;
 
 /**
@@ -32,6 +37,22 @@ public final class PathUtil
 {
     private static final Logger logger = Logger.getAnonymousLogger();
 
+    public static File getGACFile4Artifact(Artifact artifact) {
+
+        File gacFile;
+        String type = artifact.getType();
+        if (type.equals(ArtifactType.GAC_MSIL4.getPackagingType())) {
+            String gacRoot = System.getenv( "SystemRoot" ) + "\\Microsoft.NET\\assembly\\GAC_MSIL\\";
+            gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + "v4.0" + "_" + artifact.getVersion() + "__" +
+                artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
+        }
+        else {
+            gacFile = artifact.getFile();
+        }
+
+        return gacFile;
+    } 
+ 
     /**
      * Returns the path of the artifact within the global assembly cache.
      *
@@ -47,13 +68,13 @@ public final class PathUtil
             logger.warning( "NPANDAY-040-000: Artifact is null - Cannot get application file." );
             return null;
         }
-		
+
         if ( gacRepository == null )
         {
             logger.warning( "NPANDAY-040-001: GAC Repository is null - Cannot get application file." );
             return null;
         }
-		
+
         if ( artifact.getClassifier() == null )
         {
             logger.warning( "NPANDAY-040-002: Assembly must be signed - Cannot get application file." );
@@ -64,6 +85,8 @@ public final class PathUtil
         {
             version = version + ".0";
         }
+
+        logger.finest( "NPANDAY-040-003: Read global assembly cache folder for: " + artifact);        
         //TODO: gac_generic
         //String processArchitecture = ( artifact.getType().equals( "gac_generic" ) );
         return new File( gacRepository, File.separator + artifact.getType() + File.separator + artifact.getArtifactId()
@@ -148,7 +171,7 @@ public final class PathUtil
 //                artifact.getType() );
 //            return null;
 //        }
-
+        logger.finest( "NPANDAY-040-007: Read global assembly cache folder for(getUserAssemblyCacheFileFor): " + artifact);
         return new File( localRepository.getParentFile(), "uac" + File.separator + "gac_msil" + File.separator
             + artifact.getArtifactId() + File.separator + artifact.getBaseVersion() + "__" + artifact.getGroupId()
             + File.separator + artifact.getArtifactId() + "."

Modified: incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/compiler-plugins.xml
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/compiler-plugins.xml?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/compiler-plugins.xml (original)
+++ incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/compiler-plugins.xml Sat Oct 16 10:29:17 2010
@@ -58,6 +58,7 @@
     <language>C_SHARP</language>
     <profile>FULL</profile>
     <frameworkVersions>
+      <frameworkVersion>4.0</frameworkVersion>    
       <frameworkVersion>3.5</frameworkVersion>
       <frameworkVersion>3.0</frameworkVersion>
       <frameworkVersion>2.0.50727</frameworkVersion>
@@ -120,6 +121,7 @@
     <frameworkVersions>
       <frameworkVersion>3.0</frameworkVersion>
       <frameworkVersion>3.5</frameworkVersion>
+      <frameworkVersion>4.0</frameworkVersion>      
       <frameworkVersion>2.0.50727</frameworkVersion>
     </frameworkVersions>
     <platforms>
@@ -196,6 +198,7 @@
     <language>VB</language>
     <profile>FULL</profile>
     <frameworkVersions>
+      <frameworkVersion>4.0</frameworkVersion>
       <frameworkVersion>3.5</frameworkVersion>
       <frameworkVersion>3.0</frameworkVersion>
       <frameworkVersion>2.0.50727</frameworkVersion>
@@ -264,6 +267,7 @@
       <frameworkVersion>2.0.50727</frameworkVersion>
       <frameworkVersion>3.0</frameworkVersion>
       <frameworkVersion>3.5</frameworkVersion>
+      <frameworkVersion>4.0</frameworkVersion>      
     </frameworkVersions>
     <platforms>
       <platform>
@@ -305,6 +309,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>     
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -360,6 +367,9 @@
     <platforms>
       <platform>
         <operatingSystem>Windows</operatingSystem>
+      </platform>      
+      <platform>
+        <operatingSystem>Windows 7</operatingSystem>        
       </platform>
       <platform>
         <operatingSystem>Mac OS X</operatingSystem>
@@ -434,6 +444,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -490,6 +503,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -537,6 +553,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -570,4 +589,4 @@
     </platforms>
   </compilerPlugin>
   -->
-</compilerPlugins>
\ No newline at end of file
+</compilerPlugins>

Modified: incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/executable-plugins.xml
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/executable-plugins.xml?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/executable-plugins.xml (original)
+++ incubator/npanday/trunk/components/dotnet-core/src/main/resources/META-INF/npanday/executable-plugins.xml Sat Oct 16 10:29:17 2010
@@ -104,6 +104,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -132,6 +135,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -173,6 +179,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -291,6 +300,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -319,6 +331,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -363,6 +378,9 @@
         <operatingSystem>Windows</operatingSystem>
       </platform>
       <platform>
+        <operatingSystem>Windows 7</operatingSystem>
+      </platform>
+      <platform>      
         <operatingSystem>Mac OS X</operatingSystem>
       </platform>
       <platform>
@@ -376,4 +394,4 @@
       </platform>
     </platforms>
   </executablePlugin>
-</executablePlugins>
\ No newline at end of file
+</executablePlugins>

Modified: incubator/npanday/trunk/components/dotnet-dao-project/src/main/java/npanday/dao/impl/ProjectDaoImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-dao-project/src/main/java/npanday/dao/impl/ProjectDaoImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-dao-project/src/main/java/npanday/dao/impl/ProjectDaoImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-dao-project/src/main/java/npanday/dao/impl/ProjectDaoImpl.java Sat Oct 16 10:29:17 2010
@@ -644,6 +644,9 @@ public final class ProjectDaoImpl
 
                 if ( !projectDependency.isResolved() )
                 {
+                    logger.finest("NPANDAY-180-055: dependency:" + projectDependency.getClass());
+                    logger.finest("NPANDAY-180-056: dependency:" + assembly.getClass());
+                    
                     if ( assembly.getType().equals( "jar" ) )
                     {
                         logger.info( "Detected jar dependency - skipping: Artifact Dependency ID = "
@@ -661,6 +664,8 @@ public final class ProjectDaoImpl
                                                        new DefaultRepositoryLayout() );
                     if ( !ArtifactTypeHelper.isDotnetExecutableConfig( type ))// TODO: Generalize to any attached artifact
                     {
+                        logger.finest( "NPANDAY-180-016: set file....");
+                    
                         Artifact pomArtifact =
                             artifactFactory.createProjectArtifact( projectDependency.getGroupId(),
                                                                    projectDependency.getArtifactId(),
@@ -739,13 +744,14 @@ public final class ProjectDaoImpl
                         }
 
                     }
-
+                    logger.finest( "NPANDAY-180-019: set file...");
                     if ( snapshotVersion != null )
                     {
                         assembly.setVersion( snapshotVersion );
                     }
 
                     File uacFile = PathUtil.getUserAssemblyCacheFileFor( assembly, localRepository );
+                    logger.finest( "NPANDAY-180-0181: P = " + projectDependency);                    
                     logger.info( "NPANDAY-180-018: Not found in UAC, now retrieving artifact from wagon:"
                             + assembly.getId()
                             + ", Failed UAC Path Check = " + uacFile.getAbsolutePath());
@@ -768,6 +774,7 @@ public final class ProjectDaoImpl
                         }
                         catch ( ArtifactNotFoundException e )
                         {
+                            logger.log(Level.SEVERE, "NPANDAY-180-0201: Error resolving artifact. Reason:", e);                        
                             throw new IOException(
                                                    "NPANDAY-180-020: Problem in resolving artifact: Artifact = "
                                                        + assembly.getId()

Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java Sat Oct 16 10:29:17 2010
@@ -113,6 +113,11 @@ public final class DefaultCompiler
         }
         for ( String arg : compilerContext.getEmbeddedResourceArgs() )
         {
+            if (logger.isDebugEnabled()) 
+            {
+                logger.debug( "NPANDAY-168-001 add resource: " + arg );
+            }
+        
             commands.add( "/resource:" + arg );
         }
         for ( File file : compilerContext.getLinkedResources() )
@@ -147,8 +152,8 @@ public final class DefaultCompiler
             //commands.add( wcfRef + "System.Runtime.Serialization.dll" );
             commands.add( wcfRef + "SMDiagnostics.dll" );
         }
-		
-		if ( compilerContext.getCompilerRequirement().getVendor().equals( Vendor.MICROSOFT ) &&
+
+        if ( compilerContext.getCompilerRequirement().getVendor().equals( Vendor.MICROSOFT ) &&
             compilerContext.getCompilerRequirement().getFrameworkVersion().equals( "3.5" ) )
         {
             String wcfRef = "/reference:" + System.getenv( "SystemRoot" ) +
@@ -159,7 +164,17 @@ public final class DefaultCompiler
             commands.add( wcfRef + "Microsoft.Data.Entity.Build.Tasks.dll" );
             commands.add( wcfRef + "Microsoft.VisualC.STLCLR.dll" );
         }
-
+ 
+        if ( compilerContext.getCompilerRequirement().getVendor().equals( Vendor.MICROSOFT ) &&
+            compilerContext.getCompilerRequirement().getFrameworkVersion().equals( "4.0" ) )
+        {
+            String wcfRef = "/reference:" + System.getenv( "SystemRoot" ) +
+                "\\Microsoft.NET\\Framework\\v4.0.30319\\";
+            //TODO: This is a hard-coded path: Don't have a registry value either.
+            commands.add( wcfRef + "Microsoft.Build.Tasks.v4.0.dll" );
+            commands.add( wcfRef + "Microsoft.Data.Entity.Build.Tasks.dll" );
+            commands.add( wcfRef + "Microsoft.VisualC.STLCLR.dll" );
+        } 
         if ( compilerContext.getKeyInfo().getKeyFileUri() != null )
         {
             commands.add( "/keyfile:" + compilerContext.getKeyInfo().getKeyFileUri() );
@@ -263,13 +278,13 @@ public final class DefaultCompiler
         }
         String responseFilePath = TempDir + File.separator + "responcefile.rsp";
         try
-    	{
-        	for(String command : filteredCommands)
-        	{
-    	        FileUtils.fileAppend(responseFilePath, escapeCmdParams(command) + " ");
-        	}
-    	} catch (java.io.IOException e) {
-    		throw new ExecutionException( "Error while creating response file for the commands.", e );
+        {
+            for(String command : filteredCommands)
+            {
+                FileUtils.fileAppend(responseFilePath, escapeCmdParams(command) + " ");
+            }
+        } catch (java.io.IOException e) {
+            throw new ExecutionException( "Error while creating response file for the commands.", e );
         }
         filteredCommands.clear();
         filteredCommands.add("@" + escapeCmdParams(responseFilePath) );

Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java Sat Oct 16 10:29:17 2010
@@ -385,22 +385,12 @@ public final class CompilerContextImpl
             for ( Artifact artifact : artifacts )
             {
                 String type = artifact.getType();
+                logger.debug( "NPANDAY-061-006: Artifact Type:" + type);
+                logger.debug( "NPANDAY-061-007: Artifact Type:" + ArtifactTypeHelper.isDotnetGenericGac( type ));
                 ArtifactType artifactType = ArtifactType.getArtifactTypeForPackagingName( type );
-                if ( ArtifactTypeHelper.isDotnetModule( type ))
-                {
-                    modules.add( artifact );
-                }
-                else if ( (artifactType != null && (
-                            StringUtils.equals( artifactType.getTargetCompileType(), "library" )
-                            || artifactType.getExtension().equals( "dll" )
-                            || artifactType.getExtension().equals( "exe" ))
-                          )
-                          || type.equals( "jar" ) )
-                {
-                    libraries.add( artifact );
-                }
+
                 //Resolving here since the GAC path is vendor and framework aware
-                else if ( ArtifactTypeHelper.isDotnetGenericGac( type ) )
+                if ( ArtifactTypeHelper.isDotnetGenericGac( type ) )                
                 {
                     // TODO: Duplicate code with VendorInfoRepositoryImpl.getGlobalAssemblyCacheDirectoryFor
                     String gacRoot = null;
@@ -424,6 +414,11 @@ public final class CompilerContextImpl
                         setArtifactGacFile( gacRoot, artifact );
                         libraries.add( artifact );
                     }
+                }                
+                else if (type.equals(ArtifactType.GAC_MSIL4.getPackagingType())) {
+                    String gacRoot = System.getenv( "SystemRoot" ) + "\\Microsoft.NET\\assembly\\GAC_MSIL\\";
+                    setArtifactGacFile( gacRoot, artifact );
+                    libraries.add( artifact );
                 }
                 else if ( type.equals( ArtifactType.GAC.getPackagingType() ) )
                 {
@@ -439,6 +434,13 @@ public final class CompilerContextImpl
                     setArtifactGacFile( gacRoot, artifact );
                     libraries.add( artifact );
                 }
+                else if ( type.equals( ArtifactType.GAC_64.getPackagingType() ) )
+                {
+                    String gacRoot = ( compilerRequirement.getVendor().equals( Vendor.MONO ) ) ? getGacRootForMono()
+                        : System.getenv( "SystemRoot" ) + "\\assembly\\GAC_64\\";
+                    setArtifactGacFile( gacRoot, artifact );
+                    libraries.add( artifact );
+                }		 							
                 else if ( type.equals( ArtifactType.GAC_MSIL.getPackagingType() ) )
                 {
                     String gacRoot = ( compilerRequirement.getVendor().equals( Vendor.MONO ) ) ? getGacRootForMono()
@@ -451,6 +453,16 @@ public final class CompilerContextImpl
                     moveInteropDllToBuildDirectory( artifact );
                     libraries.add( artifact );
                 }
+                else if ( (artifactType != null && (
+                            "library".equals(artifactType.getTargetCompileType()  )
+                            || "dll".equals(artifactType.getExtension()  )
+                            || "exe".equals(artifactType.getExtension()  ))
+                          )
+                          || "jar".equals(type  ) )
+                {
+                   libraries.add( artifact );
+                }
+                
             }
         }
 
@@ -619,8 +631,21 @@ public final class CompilerContextImpl
     {
         // TODO: Refactor to PathUtil.getGlobalAssemblyCacheFileFor
 
-        File gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + artifact.getVersion() + "__" +
-            artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
+        String type = artifact.getType();
+        logger.debug( "NPANDAY-061-001: Gac Root:" + gacRoot);
+        logger.debug( "NPANDAY-061-003: Artifact Type:" + type);
+        File gacFile;
+        if ("gac_msil4".equalsIgnoreCase(type)) {
+            gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + "v" + compilerRequirement.getFrameworkVersion() + "_" + artifact.getVersion() + "__" +
+                artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
+        }
+        else {
+            gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + artifact.getVersion() + "__" +
+                artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
+        }
+
+        logger.debug( "NPANDAY-061-001: gacFile to:" + gacFile.getAbsolutePath() );
+
         // first check if the artifact is not yet installed
         if ( !gacFile.exists() )
         {

Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java Sat Oct 16 10:29:17 2010
@@ -98,7 +98,8 @@ public class DefaultRepositoryNetExecuta
                 ( ( getExecutionPath() != null ) ? getExecutionPath().getAbsolutePath() : "unknown" ) + ", Command = " +
                 commands, e );
         }
-        if ( commandExecutor.getStandardOut().contains( "error" ) )
+        if ( commandExecutor.getStandardOut().contains( "error" )
+          && !commandExecutor.getStandardOut().contains( "exit code = 0" ) )        
         {
             throw new ExecutionException(
                 "NPANDAY-063-001: Executable = " + getExecutable() + ",Command = " + commands );

Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/NetExecutableFactoryImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/NetExecutableFactoryImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/NetExecutableFactoryImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/NetExecutableFactoryImpl.java Sat Oct 16 10:29:17 2010
@@ -92,11 +92,12 @@ public class NetExecutableFactoryImpl
     {
 
         VendorInfo vendorInfo = VendorInfo.Factory.createDefaultVendorInfo();
-	    vendorInfo.setVendorVersion( compilerRequirement.getVendorVersion() );
+        vendorInfo.setVendorVersion( compilerRequirement.getVendorVersion() );
         vendorInfo.setFrameworkVersion( compilerRequirement.getFrameworkVersion() );
         vendorInfo.setVendor( compilerRequirement.getVendor() );
         try
         {
+            logger.debug("NPANDAY-066-025 - Try to find executable for vendor:" + vendorInfo + ":processor:" + processor);        
             processor.process( vendorInfo );
         }
         catch ( IllegalStateException e )

Modified: incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java (original)
+++ incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java Sat Oct 16 10:29:17 2010
@@ -85,7 +85,8 @@ public class StandardRegistryLoader
             while ( parser.nextTag() == XmlPullParser.START_TAG )
             {
                 parser.require( XmlPullParser.START_TAG, null, "repository" );
-                repositories.add( getRepositoryObject( parser ) );
+                RepositoryObject rep = getRepositoryObject( parser );
+                repositories.add( rep );                
             }
         }
         catch ( XmlPullParserException e )
@@ -146,7 +147,13 @@ public class StandardRegistryLoader
                 filePath.append( (char) path[i++] );
             }
         }//end for:i
-        return filePath.toString();
+        String str = filePath.toString();
+        if (!str.startsWith("/")) {
+            str = str.replaceAll("/", "\\\\");
+            str = str.replaceAll("\\\\:", ":");
+            str = str.replaceAll("\\\\\\\\", "\\\\");
+        }
+        return str;
     }
 
     /**

Modified: incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/StateMachineProcessorImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/StateMachineProcessorImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/StateMachineProcessorImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/StateMachineProcessorImpl.java Sat Oct 16 10:29:17 2010
@@ -83,6 +83,7 @@ public final class StateMachineProcessor
         transitionRules.put( VendorInfoState.POST_PROCESS, factory.createPostProcessRule() );
         try
         {
+            logger.debug( "NPANDAY-102-012: Initialized rule factory repositoryRegistry:" + repositoryRegistry );        
             factory.init( repositoryRegistry, vendorInfoRepository, logger );
             logger.debug( "NPANDAY-102-000: Initialized rule factory." );
             transitionRules.put( VendorInfoState.MFF, factory.createVendorInfoSetterForMFF() );
@@ -126,7 +127,9 @@ public final class StateMachineProcessor
         }
         for ( VendorInfoState state = VendorInfoState.START; !state.equals( VendorInfoState.EXIT ); )
         {
+            logger.debug( "NPANDAY-102-002: Apply rule:" + rule );        
             state = rule.process( vendorInfo );
+            logger.debug( "NPANDAY-102-003: Vendor info after rule:" + vendorInfo );            
             rule = transitionRules.get( state );
             if ( rule == null && !state.equals( VendorInfoState.EXIT ) )
             {

Modified: incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java (original)
+++ incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java Sat Oct 16 10:29:17 2010
@@ -252,6 +252,10 @@ public class VendorInfoRepositoryImpl
         {
             return new File(System.getenv("SystemRoot"), "\\assembly\\GAC_32\\" );
         }
+        else if ( artifactType.equals( ArtifactType.GAC_64.getPackagingType() ) )
+        {
+            return new File(System.getenv("SystemRoot"), "\\assembly\\GAC_64\\" );
+        }		
         else if ( artifactType.equals( ArtifactType.GAC_MSIL.getPackagingType() ) )
         {
             return new File( System.getenv("SystemRoot"), "\\assembly\\GAC_MSIL\\" );

Modified: incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoTransitionRuleFactory.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoTransitionRuleFactory.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoTransitionRuleFactory.java (original)
+++ incubator/npanday/trunk/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoTransitionRuleFactory.java Sat Oct 16 10:29:17 2010
@@ -92,7 +92,8 @@ final class VendorInfoTransitionRuleFact
         {
             throw new InitializationException( "NPANDAY-103-000: Unable to find the repository registry" );
         }
-
+        logger.debug( "NPANDAY-103-036.0: Respository registry: " + repositoryRegistry);
+        
         SettingsRepository settingsRepository = (SettingsRepository) repositoryRegistry.find( "npanday-settings" );
         if ( settingsRepository == null )
         {
@@ -180,9 +181,11 @@ final class VendorInfoTransitionRuleFact
             public VendorInfoState process( VendorInfo vendorInfo )
             {
                 logger.debug( "NPANDAY-103-004: Entering State = NFF" );
+                logger.debug( "NPANDAY-103-041: Vendor:" + vendorInfo.getVendor() + ":default vendor:" + defaultVendor );
                 if ( vendorInfo.getVendor().equals( defaultVendor ) )
                 {
                     vendorInfo.setVendorVersion( defaultVendorVersion );
+                    logger.debug( "NPANDAY-103-042: Set default framework:" + defaultFrameworkVersion );
                     vendorInfo.setFrameworkVersion( defaultFrameworkVersion );
                     return VendorInfoState.POST_PROCESS;
                 }
@@ -193,9 +196,11 @@ final class VendorInfoTransitionRuleFact
                     {
                         for ( VendorInfo vi : v )
                         {
+                            logger.debug( "NPANDAY-103-043: Compare vendor:" + vi.getVendor() + ":with vendor:" + vendorInfo.getVendor() );
                             if ( vi.getVendor().equals( vendorInfo.getVendor() ) )
                             {
                                 vendorInfo.setVendorVersion( vi.getVendorVersion() );
+                                logger.debug( "NPANDAY-103-044: Hard code the frameworkd (default framework:" + defaultFrameworkVersion + ")" );
                                 vendorInfo.setFrameworkVersion( "2.0.50727" );
                                 return VendorInfoState.POST_PROCESS;
                             }
@@ -206,9 +211,11 @@ final class VendorInfoTransitionRuleFact
                         v = vendorInfoRepository.getVendorInfosFor( vendorInfo, false );
                         for ( VendorInfo vi : v )
                         {
+                            logger.debug( "NPANDAY-103-046: Compare vendor:" + vi.getVendor() + ":with vendor:" + vendorInfo.getVendor() );
                             if ( vi.getVendor().equals( vendorInfo.getVendor() ) )
                             {
                                 vendorInfo.setVendorVersion( vi.getVendorVersion() );
+                                logger.debug( "NPANDAY-103-045: Hard code the frameworkd (default framework:" + defaultFrameworkVersion + ")" );
                                 vendorInfo.setFrameworkVersion(
                                     "2.0.50727" );  //TODO: this should be according to max version
                                 return VendorInfoState.POST_PROCESS;
@@ -228,6 +235,7 @@ final class VendorInfoTransitionRuleFact
             public VendorInfoState process( VendorInfo vendorInfo )
             {
                 logger.debug( "NPANDAY-103-005: Entering State = NFF" );
+                logger.debug( "NPANDAY-103-047: Hard code the frameworkd (default framework:" + defaultFrameworkVersion + ")" );
                 vendorInfo.setFrameworkVersion( "2.0.50727" );
                 return VendorInfoState.NFT;
             }
@@ -343,8 +351,11 @@ final class VendorInfoTransitionRuleFact
             public VendorInfoState process( VendorInfo vendorInfo )
             {
                 logger.debug( "NPANDAY-103-009: Entering State = NTF" );
+                logger.debug( "NPANDAY-103-049: Compare vendor version :" + defaultVendorVersion + ":width:" + vendorInfo.getVendorVersion());
+                
                 if ( vendorInfo.getVendorVersion().equals( defaultVendorVersion ) )
                 {
+                    logger.debug( "NPANDAY-103-049: Set to default framework:" + defaultFrameworkVersion + ")" );
                     vendorInfo.setFrameworkVersion( defaultFrameworkVersion );
                     vendorInfo.setVendor( defaultVendor );
                     return VendorInfoState.NTT;
@@ -447,8 +458,12 @@ final class VendorInfoTransitionRuleFact
             public VendorInfoState process( VendorInfo vendorInfo )
             {
                 logger.debug( "NPANDAY-103-011: Entering State = FTF" );
+                logger.debug( "NPANDAY-103-050: Compare vendor version :" + defaultVendorVersion + ":width:" + vendorInfo.getVendorVersion());
+
                 if ( vendorInfo.getVendorVersion().equals( defaultVendorVersion ) )
                 {
+                    logger.debug( "NPANDAY-103-050: Set to default version:" + defaultFrameworkVersion);
+
                     vendorInfo.setFrameworkVersion( defaultFrameworkVersion );
                     vendorInfo.setVendor( defaultVendor );
                     if ( defaultVendor.equals( Vendor.MICROSOFT ) )
@@ -471,8 +486,12 @@ final class VendorInfoTransitionRuleFact
                     {
                         for ( VendorInfo vi : v )
                         {
+                            logger.debug( "NPANDAY-103-050: Compare vendor version :" + vi.getVendorVersion() + ":width:" + vendorInfo.getVendorVersion());
+
                             if ( vi.getVendorVersion().equals( vendorInfo.getVendorVersion() ) )
                             {
+                                logger.debug( "NPANDAY-103-050: Set framework version:" + vi.getFrameworkVersion());
+
                                 vendorInfo.setFrameworkVersion( vi.getFrameworkVersion() );
                                 vendorInfo.setVendor( vi.getVendor() );
                                 if ( vi.getVendor().equals( Vendor.MICROSOFT ) )
@@ -496,8 +515,12 @@ final class VendorInfoTransitionRuleFact
                         v = vendorInfoRepository.getVendorInfosFor( vendorInfo, false );
                         for ( VendorInfo vi : v )
                         {
+                            logger.debug( "NPANDAY-103-050: Compare vendor version :" + vi.getVendorVersion() + ":width:" + vendorInfo.getVendorVersion());
+                        
                             if ( vi.getVendorVersion().equals( vendorInfo.getVendorVersion() ) )
                             {
+                                logger.debug( "NPANDAY-103-050: Set framework version:" + vi.getFrameworkVersion());
+                            
                                 vendorInfo.setFrameworkVersion( vi.getFrameworkVersion() );
                                 vendorInfo.setVendor( vi.getVendor() );
                                 if ( vi.getVendor().equals( Vendor.MICROSOFT ) )
@@ -717,6 +740,7 @@ final class VendorInfoTransitionRuleFact
                 logger.debug( "NPANDAY-103-017: Entering State = FFF" );
                 vendorInfo.setVendor( defaultVendor );
                 vendorInfo.setVendorVersion( defaultVendorVersion );
+                logger.debug( "NPANDAY-103-052: Set to default framework version:" + defaultFrameworkVersion);
                 vendorInfo.setFrameworkVersion( defaultFrameworkVersion );
                 return VendorInfoState.POST_PROCESS;
             }
@@ -743,6 +767,7 @@ final class VendorInfoTransitionRuleFact
             public VendorInfoState process( VendorInfo vendorInfo )
             {
                 logger.debug( "NPANDAY-103-019: Entering State = MTF" );
+                logger.debug( "NPANDAY-103-053: Set to framework version:" + vendorInfo.getVendorVersion());
                 vendorInfo.setFrameworkVersion( vendorInfo.getVendorVersion() );
                 return VendorInfoState.MTT;
             }
@@ -779,6 +804,7 @@ final class VendorInfoTransitionRuleFact
 
                 if ( v2.exists() )
                 {
+                    logger.debug( "NPANDAY-103-055: Hardcode framework version (default:" + defaultFrameworkVersion + ")");
                     vendorInfo.setFrameworkVersion( "2.0.50727" );
                     executablePaths.add( v2 );
                     if ( v4.exists() )
@@ -788,6 +814,7 @@ final class VendorInfoTransitionRuleFact
                 }
                 else if ( v1.exists() )
                 {
+                    logger.debug( "NPANDAY-103-056: Hardcode framework version (default:" + defaultFrameworkVersion + ")");
                     vendorInfo.setFrameworkVersion( "1.1.4322" );
                     executablePaths.add( v1 );
                     if ( v3.exists() )
@@ -797,6 +824,7 @@ final class VendorInfoTransitionRuleFact
                 }
                 else
                 {
+                    logger.debug( "NPANDAY-103-057: Hardcode framework version:");
                     vendorInfo.setFrameworkVersion( "2.0.50727" );
                 }
 
@@ -858,6 +886,7 @@ final class VendorInfoTransitionRuleFact
             public VendorInfoState process( VendorInfo vendorInfo )
             {
                 logger.debug( "NPANDAY-103-023: Entering State = GFF" );
+                logger.debug( "NPANDAY-103-058: Hardcode framework version:");
                 vendorInfo.setFrameworkVersion( "2.0.50727" );
                 vendorInfo.setVendorVersion( "2.0.50727" );
                 return VendorInfoState.POST_PROCESS;
@@ -875,6 +904,7 @@ final class VendorInfoTransitionRuleFact
                 if ( vendorInfo.getVendor().equals( defaultVendor ) )
                 {
                     vendorInfo.setVendorVersion( defaultVendorVersion );
+                    logger.debug( "NPANDAY-103-059: Hardcode framework version (default:" + defaultFrameworkVersion + ")" );
                     vendorInfo.setFrameworkVersion( "2.0.50727" );
                     return VendorInfoState.POST_PROCESS;
                 }
@@ -894,6 +924,7 @@ final class VendorInfoTransitionRuleFact
                     {
                         String maxVersion = vendorInfoRepository.getMaxVersion( versions );
                         vendorInfo.setVendorVersion( maxVersion );
+                        logger.debug( "NPANDAY-103-060: Hardcode framework version (default:" + defaultFrameworkVersion + ")" );
                         vendorInfo.setFrameworkVersion( "2.0.50727" );
                         return VendorInfoState.POST_PROCESS;
                     }

Propchange: incubator/npanday/trunk/dotnet/assemblies/NPanday/
            ('svn:mergeinfo' removed)

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs Sat Oct 16 10:29:17 2010
@@ -746,7 +746,11 @@ namespace NPanday.ProjectImporter.Conver
                 {
                     refDependency.type = "gac_32";
                 }
-
+                //check if Project is imported on a 64bit machine			
+                else if ("AMD64".Equals(reference.ProcessorArchitecture, StringComparison.OrdinalIgnoreCase))
+                {
+                    refDependency.type = "gac_64";
+                }
 				//Assemblies that with null ProcessorArchitecture esp ASP.net assmblies (e.g MVC)
                 else if ((reference.ProcessorArchitecture == null) && ("31bf3856ad364e35".Equals(reference.PublicKeyToken.ToLower(), StringComparison.OrdinalIgnoreCase)))
                 {
@@ -760,9 +764,10 @@ namespace NPanday.ProjectImporter.Conver
                 
                 refDependency.version = reference.Version ?? "1.0.0.0";
                 
-                System.Reflection.Assembly a = System.Reflection.Assembly.Load(gacUtil.GetAssemblyInfo(reference.Name));
-
-                if (reference.PublicKeyToken != null)
+				//exclude ProcessArchitecture when loading assembly on a non-32 bit machine
+                System.Reflection.Assembly a = System.Reflection.Assembly.Load(new System.Reflection.AssemblyName(gacUtil.GetAssemblyInfo(reference.Name)).FullName);
+                
+				if (reference.PublicKeyToken != null)
                 {
                     refDependency.classifier = reference.PublicKeyToken;
                 }

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/NormalPomConverter.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/NormalPomConverter.cs?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/NormalPomConverter.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/NormalPomConverter.cs Sat Oct 16 10:29:17 2010
@@ -102,8 +102,18 @@ namespace NPanday.ProjectImporter.Conver
                         msBuildPluginAdded = true;
                     }
                     
+                    string gFile;
+ 
+                    //if project is imported in 64-bit path should include "x86"
+                    if (projectDigest.Platform.Contains("x86"))
+                    {
+                        gFile = @"obj\x86\Debug";
+                    }
+                    else
+                    {
+                        gFile = @"obj\Debug\";
+                    }
 
-                    string gFile = @"obj\Debug\";
                     if (compilesFile.EndsWith(".cs"))
                         gFile += compilesFile.Replace(".xaml.cs", ".g.cs");
                     else

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPanday/VisualStudio/Addin/Connect.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPanday/VisualStudio/Addin/Connect.cs?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPanday/VisualStudio/Addin/Connect.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPanday/VisualStudio/Addin/Connect.cs Sat Oct 16 10:29:17 2010
@@ -978,7 +978,12 @@ namespace NPanday.VisualStudio.Addin
             buildControls = new List<CommandBarControl>();
             foreach (CommandBar commandBar in (CommandBars)dte2.CommandBars)
             {
-                foreach (CommandBarControl control in commandBar.Controls)
+				IList<CommandBarControl> barControls = new List<CommandBarControl>();
+				foreach (CommandBarControl control in commandBar.Controls)
+				{
+					barControls.Add(control);
+				}
+				foreach (CommandBarControl control in barControls)
                 {
                     if (control.Caption.Equals(Messages.MSG_C_ADD_REFERENCE))
                     {
@@ -1074,7 +1079,7 @@ namespace NPanday.VisualStudio.Addin
                 System.Type.Missing, System.Type.Missing, 1, true);
             buildButton.Caption = Messages.MSG_C_BUILD;
             buildButton.Visible = true;
-            buildButton.FaceId = 645;
+            //buildButton.FaceId = 645;
             buildButton.Click += new _CommandBarButtonEvents_ClickEventHandler(cbBuild_Click);
 
 
@@ -1228,7 +1233,7 @@ namespace NPanday.VisualStudio.Addin
                 System.Type.Missing, System.Type.Missing, 1, true);
             buildAllButton.Caption = Messages.MSG_C_BUILD;
             buildAllButton.Visible = true;
-            buildAllButton.FaceId = 645;
+            //buildAllButton.FaceId = 645;
             buildAllButton.Click += new _CommandBarButtonEvents_ClickEventHandler(cbBuildAll_Click);
 
             buildControls.Add(buildAllButton);

Modified: incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxBinDependencyResolver.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxBinDependencyResolver.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxBinDependencyResolver.java (original)
+++ incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxBinDependencyResolver.java Sat Oct 16 10:29:17 2010
@@ -19,9 +19,11 @@ package npanday.plugin.aspx;
  * under the License.
  */
 
+import java.lang.StackTraceElement; 
 import java.io.File;
 import java.io.IOException;
 import java.util.Set;
+import java.util.ArrayList;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.plugin.AbstractMojo;
@@ -29,6 +31,8 @@ import org.apache.maven.plugin.MojoExecu
 import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.util.FileUtils;
+import npanday.PathUtil;
+
 
 /**
  * Maven Mojo for copying ASPx project dependencies to sourceDirectory\Bin folder
@@ -63,13 +67,18 @@ public class AspxBinDependencyResolver
                 File targetFile = new File(binDir, filename);
 
                 if (!targetFile.exists()) {
-                    getLog().info("NPANDAY-000-0000: copying " + dependency.getFile().getAbsolutePath() + " to " + targetFile);
+                    getLog().debug("NPANDAY-000-0001: copy dependency: typeof:" +  dependency.getClass());
+                    getLog().debug("NPANDAY-000-0001: copy dependency: " + dependency);
+                    getLog().debug("NPANDAY-000-0002: copying " + dependency.getFile().getAbsolutePath() + " to " + targetFile);
+                    File sourceFile = PathUtil.getGACFile4Artifact(dependency);
 
-                    FileUtils.copyFile(dependency.getFile(), targetFile);
+                    FileUtils.copyFile(sourceFile, targetFile);
+                    
                 }
             }
             catch (IOException ioe) {
-                throw new MojoExecutionException("NPANDAY-000-0000: Error copying dependency " + dependency, ioe);
+                throw new MojoExecutionException("NPANDAY-000-00002: Error copying dependency " + dependency, ioe);
+                
             }
         }
     }

Modified: incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxCompilerMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxCompilerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxCompilerMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-aspx-plugin/src/main/java/npanday/plugin/aspx/AspxCompilerMojo.java Sat Oct 16 10:29:17 2010
@@ -256,8 +256,8 @@ public class AspxCompilerMojo
             /* keep only the files needed to run the app */
             List<File> allFiles = FileUtils.getFiles( tmpDir, "**", null );
             List<File> filesToKeep = FileUtils.getFiles( tmpDir, DEFAULT_INCLUDES, DEFAULT_EXCLUDES );
-        	
-        	for ( File file : allFiles )
+
+            for ( File file : allFiles )
             {
                 if ( !filesToKeep.contains( file ) || "App_global.asax.dll".equals(file.getName()) || "App_global.asax.compiled".equals(file.getName()))
                 {
@@ -294,14 +294,20 @@ public class AspxCompilerMojo
         //copy .asax to target file
         try
         {
-        	List<File> fileList = FileUtils.getFiles(project.getBasedir(), "*.asax", null);
-        	for(File file : fileList)
+            String sourceDirectory = project.getBuild().getSourceDirectory();
+            List<File> fileList = FileUtils.getFiles(new File(sourceDirectory), "**/*.asax", null);
+            getLog().debug("copy .asax to target file (source folder: " + project.getBuild().getSourceDirectory() +  ")...");
+            getLog().debug("copy .asax to target file (temp folder: " + tmpDir +  ")...");
+            getLog().debug("copy .asax to target file (folder: " + project.getBasedir() +  ")...");
+            getLog().debug("copy .asax to target file (file count: " + fileList.size() +  ")...");
+
+            for(File file : fileList)
             {
                 try
                 {
-            	    String fileName = file.getAbsolutePath().substring((int)project.getBasedir().getAbsolutePath().length());
-            		FileUtils.copyFile(new File(file.getAbsolutePath()), new File(webappDir.getAbsolutePath() + fileName));
-            		getLog().info("Copying " + fileName.substring(1) + " to " + webappDir.getAbsolutePath() );
+                    String fileName = file.getAbsolutePath().substring((int)sourceDirectory.length());                    
+                    FileUtils.copyFile(new File(file.getAbsolutePath()), new File(webappDir.getAbsolutePath() + fileName));
+                    getLog().info("Copying " + fileName.substring(1) + " to " + webappDir.getAbsolutePath() );
                 }
                 catch ( IOException e )
                 {
@@ -336,18 +342,18 @@ public class AspxCompilerMojo
         getLog().info( "NPANDAY-000-000: Setting the target file: " + targetFile );
         project.getArtifact().setFile( new File( targetFile ) );
 
-		//Delete Bin Folder
+        //Delete Bin Folder
         String binDir = project.getBuild().getSourceDirectory()+File.separator + "Bin";
         try
         {
-        	FileUtils.deleteDirectory(binDir);
-        	getLog().info("Bin folder deleted: " + binDir);
+            FileUtils.deleteDirectory(binDir);
+            getLog().info("Bin folder deleted: " + binDir);
         }
         catch(IOException e)
         {
-        	getLog().info("Failed to delete Bin folder: " + binDir + " : " + e.getMessage());
+            getLog().info("Failed to delete Bin folder: " + binDir + " : " + e.getMessage());
         }
-		
+
     }
 
     private List<String> getCommands( File tmpDir )
@@ -366,7 +372,7 @@ public class AspxCompilerMojo
         parameters.add( "-f" );
         parameters.add( tmpDir.getAbsolutePath() );
         parameters.add( "-nologo" );
-		parameters.add( "-fixednames" );
+        parameters.add( "-fixednames" );
 
         return parameters;
     }

Modified: incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java Sat Oct 16 10:29:17 2010
@@ -408,6 +408,13 @@ public abstract class AbstractCompilerMo
      * @parameter expression = "${resource}"
      */
     protected String resource;
+    
+    /**
+     * Embed the specified resource
+     *
+     * @parameter expression = "${embeddedResources}"
+     */
+    protected ArrayList<String> embeddedResources;    
 
     /**
      * Embed the specified resource
@@ -676,109 +683,109 @@ public abstract class AbstractCompilerMo
         execute(false);
     }
 
-	private List<String> readPomAttribute(String pomFileLoc, String tag)
-	{
-		List<String> attributes=new ArrayList<String>();
-		
-		try 
-		{
+    private List<String> readPomAttribute(String pomFileLoc, String tag)
+    {
+        List<String> attributes=new ArrayList<String>();
+
+        try 
+        {
             File file = new File(pomFileLoc);
-            
-			DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
+
+            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
             DocumentBuilder db = dbf.newDocumentBuilder();
             Document doc = db.parse(file);
             doc.getDocumentElement().normalize();
-                        
-			NodeList nodeLst = doc.getElementsByTagName(tag);
-	
+
+            NodeList nodeLst = doc.getElementsByTagName(tag);
+
             for (int s = 0; s < nodeLst.getLength(); s++) 
-			{
+            {
                 Node currentNode = nodeLst.item(s);
-				
-				NodeList childrenList = currentNode.getChildNodes();
-								
-				for (int i = 0; i < childrenList.getLength(); i++)
-				{
-					Node child = childrenList.item(i);
-					attributes.add(child.getNodeValue());
-				}
+
+                NodeList childrenList = currentNode.getChildNodes();
+
+                for (int i = 0; i < childrenList.getLength(); i++)
+                {
+                    Node child = childrenList.item(i);
+                    attributes.add(child.getNodeValue());
+                }
             }
-		} 
-		catch (Exception e) 
-		{
+        } 
+        catch (Exception e) 
+        {
             System.out.println("[ERROR] readPomAttribute encountered error, there is a problem with the parsing of the pomfile");
         }
-		
-		return attributes;
-	}
-	
-	private String getContents(File aFile) 
-	{
-		StringBuilder contents = new StringBuilder();
-		
-		try 
-		{
-		  BufferedReader input =  new BufferedReader(new FileReader(aFile));
-		  try 
-		  {
-			String line = null; //not declared within while loop
-			
-			while (( line = input.readLine()) != null)
-			{
-			  contents.append(line);
-			  contents.append(System.getProperty("line.separator"));
-			}
-		  }
-		  finally 
-		  {
-			input.close();
-		  }
-		}
-		catch (Exception ex)
-		{
-		  System.out.println("[ERROR] Could not get the contents of the given file: "+aFile);
-		}
-    
-		return contents.toString();
-	}
 
-	private void setContents(File aFile, String aContents) throws Exception
-	{
-		if (aFile == null) 
-		{
-		  throw new Exception("File should not be null.");
-		}
-		if (!aFile.exists()) {
-		  throw new Exception ("File does not exist: " + aFile);
-		}
-		if (!aFile.isFile()) {
-		  throw new Exception("Should not be a directory: " + aFile);
-		}
-		if (!aFile.canWrite()) {
-		  throw new Exception("File cannot be written: " + aFile);
-		}
+        return attributes;
+    }
 
-		//use buffering
-		Writer output = new BufferedWriter(new FileWriter(aFile));
-		try 
-		{
-		  //FileWriter always assumes default encoding is OK!
-		  output.write( aContents );
-		}
-		finally {
-		  output.close();
-		}
-	}
+    private String getContents(File aFile) 
+    {
+        StringBuilder contents = new StringBuilder();
 
-	private void updateProjectVersion(String assemblyInfoFile, String ver, String dirtyVersion)
-	{
-		try
-		{
-			//returns if assemblyInfoFile does not exist
-			if(!FileUtils.fileExists(assemblyInfoFile))
-			{
-				System.out.println("[INFO] No Assembly Info File found");
-				return;
+        try 
+        {
+          BufferedReader input =  new BufferedReader(new FileReader(aFile));
+          try 
+          {
+            String line = null; //not declared within while loop
+
+            while (( line = input.readLine()) != null)
+            {
+              contents.append(line);
+              contents.append(System.getProperty("line.separator"));
+            }
+          }
+          finally 
+          {
+            input.close();
+          }
+        }
+        catch (Exception ex)
+        {
+          System.out.println("[ERROR] Could not get the contents of the given file: "+aFile);
+        }
+
+        return contents.toString();
+    }
+
+    private void setContents(File aFile, String aContents) throws Exception
+    {
+        if (aFile == null) 
+        {
+          throw new Exception("File should not be null.");
+        }
+        if (!aFile.exists()) {
+          throw new Exception ("File does not exist: " + aFile);
+        }
+        if (!aFile.isFile()) {
+          throw new Exception("Should not be a directory: " + aFile);
+        }
+        if (!aFile.canWrite()) {
+          throw new Exception("File cannot be written: " + aFile);
+        }
+
+        //use buffering
+        Writer output = new BufferedWriter(new FileWriter(aFile));
+        try 
+        {
+          //FileWriter always assumes default encoding is OK!
+          output.write( aContents );
+        }
+        finally {
+          output.close();
+        }
+    }
+
+    private void updateProjectVersion(String assemblyInfoFile, String ver, String dirtyVersion)
+    {
+        try
+        {
+            //returns if assemblyInfoFile does not exist
+            if(!FileUtils.fileExists(assemblyInfoFile))
+            {
+                System.out.println("[INFO] No Assembly Info File found");
+                return;
 			}
 			String contents = getContents(new File(assemblyInfoFile));
 			

Modified: incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java Sat Oct 16 10:29:17 2010
@@ -213,6 +213,15 @@ public final class CompilerMojo
             params.add("/resource:" + resource);
         }
 
+		if (embeddedResources != null)
+        {
+			for ( String arg : embeddedResources )
+			{
+				params.add( "/resource:" + arg );
+			}
+            //params.add("/resource:" + resource);
+        }
+        
         if (linkResource != null)
         {
             params.add("/linkresource:" + linkResource);

Modified: incubator/npanday/trunk/plugins/maven-install-plugin/src/main/java/npanday/plugin/install/FileInstallerMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-install-plugin/src/main/java/npanday/plugin/install/FileInstallerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-install-plugin/src/main/java/npanday/plugin/install/FileInstallerMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-install-plugin/src/main/java/npanday/plugin/install/FileInstallerMojo.java Sat Oct 16 10:29:17 2010
@@ -150,6 +150,7 @@ public class FileInstallerMojo
         {
             Artifact sourceArtifact =
                 artifactFactory.createArtifact( groupId, artifactId, version, "compile", packaging );
+			this.getLog().debug( "NPANDAY-xxx-001: set file...." );                
             sourceArtifact.setFile( artifactFile );
             this.getLog().info( "NPANDAY-xxx-000: Installing file with specified pom" );
             try

Modified: incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ExistingResxGenerator.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ExistingResxGenerator.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ExistingResxGenerator.java (original)
+++ incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ExistingResxGenerator.java Sat Oct 16 10:29:17 2010
@@ -82,6 +82,7 @@ public class ExistingResxGenerator exten
         String outputDirectory = project.getBuild().getDirectory();
         //resgen.exe
         String resourceDirectory = outputDirectory + File.separator + ASSEMBLY_RESOURCES_DIR + File.separator + "resource" ;
+		getLog().debug("NPANDAY-1501-006: Resource directory:" + resourceDirectory);        
         if ( !FileUtils.fileExists( resourceDirectory ) )
         {
             FileUtils.mkdir( resourceDirectory );        

Modified: incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java Sat Oct 16 10:29:17 2010
@@ -56,16 +56,39 @@ public class ResourceCopierMojo
     public void execute()
         throws MojoExecutionException
     {
-        List<Resource> resources = project.getResources();
+		try 
+		{
+		
+			copyAllResources(project.getResources());
+			copyAllResources(project.getTestResources());
+		}
+		catch (Exception ex) 
+		{
+			getLog().debug("Exception thrown while copying files. Reason:", ex);
+			throw new MojoExecutionException( "NPANDAY-1500-005: Failed to copy config files.", ex );
+		}
+    }
+
+	private void copyAllResources(List<Resource> resources) 
+		throws MojoExecutionException
+	{
+        
         if ( resources.isEmpty() )
         {
             getLog().info( "NPANDAY-1500-000: No resources found" );
             return;
         }
 
-        File targetDirectory = new File( project.getBuild().getDirectory(), "assembly-resources/resource" );
+        File defaultTargetDirectory = new File( project.getBuild().getDirectory(), "assembly-resources/resource" );
+		
+		getLog().debug("NPANDAY-1500-002: Target directory:" + defaultTargetDirectory);
+		getLog().debug("NPANDAY-1500-003: Project:" + project);
+        
         for ( Resource resource : resources )
         {
+			String resourceTargetPath = resource.getTargetPath();
+			File targetDirectory = (resourceTargetPath != null && resourceTargetPath.length() > 0? new File(project.getBuild().getDirectory() + "/" + resourceTargetPath)  : defaultTargetDirectory);
+        
             File file = new File( resource.getDirectory() );
             if ( file.exists() )
             {

Modified: incubator/npanday/trunk/plugins/maven-test-plugin/src/main/java/npanday/plugin/test/TesterMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-test-plugin/src/main/java/npanday/plugin/test/TesterMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-test-plugin/src/main/java/npanday/plugin/test/TesterMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-test-plugin/src/main/java/npanday/plugin/test/TesterMojo.java Sat Oct 16 10:29:17 2010
@@ -183,8 +183,9 @@ extends AbstractMojo
             + exe : exe;
     }
 
-    private List<String> getCommandsFor( Vendor vendor )
+    private List<String> getCommandsFor( VendorInfo vendorInfo )    
     {
+        Vendor vendor = vendorInfo.getVendor();
         String finalName = project.getBuild().getFinalName();
         List<String> commands = new ArrayList<String>();
         if ( testAssemblyPath.startsWith( "/" ) )// nunit-console thinks *nix file format /home/user/ is an option
@@ -208,7 +209,8 @@ extends AbstractMojo
 
         String switchChar = "/";
 
-        if ( vendor != null && "MONO".equals( vendor.getVendorName() ) )
+		String vendorName = vendor.getVendorName();
+        if ( vendor != null && "MONO".equals( vendorName ) )        
         {
             switchChar = "-";
         }
@@ -223,6 +225,13 @@ extends AbstractMojo
         {
             commands.add( switchChar + "xmlConsole" );
         }
+        
+		String frameworkVersion = vendorInfo.getFrameworkVersion();
+		getLog().debug( "NPANDAY-1100-012: Framework version:" + frameworkVersion );
+		if (!"MONO".equals( vendorName ) && (frameworkVersion != null && frameworkVersion.length() > 0 )) {
+			commands.add( switchChar + "framework:" + frameworkVersion);
+		}
+        
         return commands;
     }
 
@@ -346,18 +355,23 @@ extends AbstractMojo
         FileUtils.mkdir( reportsDirectory );
 
         VendorInfo vendorInfo = VendorInfo.Factory.createDefaultVendorInfo();
+		getLog().debug( "NPANDAY-1100-014.1: Vendor info:" + vendorInfo );        
         vendorInfo.setVendorVersion( "" );
         vendorInfo.setFrameworkVersion( null );
+		getLog().debug( "NPANDAY-1100-014.2: Vendor info:" + vendorInfo );        
 
         try
         {
+			getLog().debug( "NPANDAY-1100-015: Processor type:" + processor );        
             processor.process( vendorInfo );
         }
         catch ( IllegalStateException e )
         {
             throw new MojoExecutionException( e.getMessage(), e );
         }
-        List<String> commands = getCommandsFor( vendorInfo.getVendor() );
+        //List<String> commands = getCommandsFor( vendorInfo.getVendor() );
+		getLog().debug( "NPANDAY-1100-014.3: Vendor info:" + vendorInfo );
+        List<String> commands = getCommandsFor( vendorInfo );        
         getLog().debug( "NPANDAY-1100-008: " + commands.toString() );
 
         // pretty print nunit logs

Modified: incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java (original)
+++ incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/java/npanday/plugin/vsinstaller/VsInstallerMojo.java Sat Oct 16 10:29:17 2010
@@ -212,17 +212,23 @@ public class VsInstallerMojo
     {
         File homeDir = filesystemView.getDefaultDirectory();
 
+        String vs2010 = "Visual Studio 2010";
+        
         String vs2008 = "Visual Studio 2008";
         String vs2005 = "Visual Studio 2005";
 
         List<File> defaultVSDirs = new ArrayList<File>();
 
+        defaultVSDirs.add( new File( homeDir, vs2010 ) );
+        
         defaultVSDirs.add( new File( homeDir, vs2008 ) );
         defaultVSDirs.add( new File( homeDir, vs2005 ) );
 
         File enHomeDir = new File( System.getProperty( "user.home" ), "My Documents" );
         if ( !homeDir.getPath().toLowerCase().equals( enHomeDir.getPath().toLowerCase() ) )
         {
+            defaultVSDirs.add( new File( enHomeDir, vs2010 ) );
+
             defaultVSDirs.add( new File( enHomeDir, vs2008 ) );
             defaultVSDirs.add( new File( enHomeDir, vs2005 ) );
         }

Modified: incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml (original)
+++ incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml Sat Oct 16 10:29:17 2010
@@ -65,6 +65,15 @@
     </component>
     <component>
       <role>org.apache.maven.artifact.handler.ArtifactHandler</role>
+      <role-hint>gac_msil4</role-hint>
+      <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
+      <configuration>
+        <extension>dll</extension>
+        <type>gac_msil4</type>
+      </configuration>
+    </component>
+    <component>
+      <role>org.apache.maven.artifact.handler.ArtifactHandler</role>      
       <role-hint>gac_32</role-hint>
       <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
       <configuration>
@@ -73,6 +82,15 @@
       </configuration>
     </component>
     <component>
+      <role>org.apache.maven.artifact.handler.ArtifactHandler</role>      
+      <role-hint>gac_64</role-hint>
+      <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
+      <configuration>
+        <extension>dll</extension>
+        <type>gac_64</type>
+      </configuration>
+    </component>	
+    <component>
       <role>org.apache.maven.artifact.handler.ArtifactHandler</role>
       <role-hint>nar</role-hint>
       <implementation>org.apache.maven.artifact.handler.DefaultArtifactHandler</implementation>
@@ -99,4 +117,4 @@
       </configuration>
     </component>
   </components>
-</component-set>
\ No newline at end of file
+</component-set>

Modified: incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/template/NPanday.VisualStudio.AddIn
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/template/NPanday.VisualStudio.AddIn?rev=1023237&r1=1023236&r2=1023237&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/template/NPanday.VisualStudio.AddIn (original)
+++ incubator/npanday/trunk/plugins/maven-vsinstaller-plugin/src/main/resources/template/NPanday.VisualStudio.AddIn Sat Oct 16 10:29:17 2010
@@ -8,6 +8,10 @@
     <Name>Microsoft Visual Studio</Name>
     <Version>9.0</Version>
   </HostApplication>
+  <HostApplication>
+    <Name>Microsoft Visual Studio</Name>
+    <Version>10.0</Version>
+  </HostApplication>  
   <Addin>
     <Assembly>${localRepository}\gac_msil\NPanday.VisualStudio.Addin\${pom.version}__npanday.visualstudio\NPanday.VisualStudio.Addin.dll</Assembly>
     <FullClassName>NPanday.VisualStudio.Addin.Connect</FullClassName>



Re: svn commit: r1023237 [1/2] - in /incubator/npanday/trunk: ./ components/dotnet-artifact/src/main/java/npanday/artifact/impl/ components/dotnet-artifact/src/main/resources/META-INF/plexus/ components/dotnet-core/src/main/java/npanday/ components/dotnet-...

Posted by Brett Porter <br...@apache.org>.
On 16/10/2010, at 9:29 PM, apadilla@apache.org wrote:

> Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
> URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java?rev=1023237&r1=1023236&r2=1023237&view=diff
> ==============================================================================
> --- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java (original)
> +++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java Sat Oct 16 10:29:17 2010
> @@ -385,22 +385,12 @@ public final class CompilerContextImpl
>             for ( Artifact artifact : artifacts )
>             {
>                 String type = artifact.getType();
> +                logger.debug( "NPANDAY-061-006: Artifact Type:" + type);
> +                logger.debug( "NPANDAY-061-007: Artifact Type:" + ArtifactTypeHelper.isDotnetGenericGac( type ));
>                 ArtifactType artifactType = ArtifactType.getArtifactTypeForPackagingName( type );
> -                if ( ArtifactTypeHelper.isDotnetModule( type ))
> -                {
> -                    modules.add( artifact );
> -                }
> -                else if ( (artifactType != null && (
> -                            StringUtils.equals( artifactType.getTargetCompileType(), "library" )
> -                            || artifactType.getExtension().equals( "dll" )
> -                            || artifactType.getExtension().equals( "exe" ))
> -                          )
> -                          || type.equals( "jar" ) )
> -                {
> -                    libraries.add( artifact );
> -                }

I see the latter bit moved down, but did you mean to remove the module support?
> @@ -619,8 +631,21 @@ public final class CompilerContextImpl
>     {
>         // TODO: Refactor to PathUtil.getGlobalAssemblyCacheFileFor
> 
> -        File gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + artifact.getVersion() + "__" +
> -            artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
> +        String type = artifact.getType();
> +        logger.debug( "NPANDAY-061-001: Gac Root:" + gacRoot);
> +        logger.debug( "NPANDAY-061-003: Artifact Type:" + type);
> +        File gacFile;
> +        if ("gac_msil4".equalsIgnoreCase(type)) {
> +            gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + "v" + compilerRequirement.getFrameworkVersion() + "_" + artifact.getVersion() + "__" +
> +                artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
> +        }
> +        else {
> +            gacFile = new File( gacRoot, artifact.getArtifactId() + File.separator + artifact.getVersion() + "__" +
> +                artifact.getClassifier() + File.separator + artifact.getArtifactId() + ".dll" );
> +        }
> +
> +        logger.debug( "NPANDAY-061-001: gacFile to:" + gacFile.getAbsolutePath() );

I think Joe already fixed this, but if not the hardcoding needs to be reviewed.
> 
> Modified: incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
> URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java?rev=1023237&r1=1023236&r2=1023237&view=diff
> ==============================================================================
> --- incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java (original)
> +++ incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java Sat Oct 16 10:29:17 2010
> @@ -98,7 +98,8 @@ public class DefaultRepositoryNetExecuta
>                 ( ( getExecutionPath() != null ) ? getExecutionPath().getAbsolutePath() : "unknown" ) + ", Command = " +
>                 commands, e );
>         }
> -        if ( commandExecutor.getStandardOut().contains( "error" ) )
> +        if ( commandExecutor.getStandardOut().contains( "error" )
> +          && !commandExecutor.getStandardOut().contains( "exit code = 0" ) )        

I can't remember - but did this already get fixed after we discussed it before?
> Modified: incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java
> URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java?rev=1023237&r1=1023236&r2=1023237&view=diff
> ==============================================================================
> --- incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java (original)
> +++ incubator/npanday/trunk/components/dotnet-registry/src/main/java/npanday/registry/impl/StandardRegistryLoader.java Sat Oct 16 10:29:17 2010
> @@ -146,7 +147,13 @@ public class StandardRegistryLoader
>                 filePath.append( (char) path[i++] );
>             }
>         }//end for:i
> -        return filePath.toString();
> +        String str = filePath.toString();
> +        if (!str.startsWith("/")) {
> +            str = str.replaceAll("/", "\\\\");
> +            str = str.replaceAll("\\\\:", ":");
> +            str = str.replaceAll("\\\\\\\\", "\\\\");
> +        }
> +        return str;

What's the purpose of this?
> Modified: incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java
> URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
> ==============================================================================
> --- incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java (original)
> +++ incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/AbstractCompilerMojo.java Sat Oct 16 10:29:17 2010
> @@ -408,6 +408,13 @@ public abstract class AbstractCompilerMo
>      * @parameter expression = "${resource}"
>      */
>     protected String resource;
> +    
> +    /**
> +     * Embed the specified resource
> +     *
> +     * @parameter expression = "${embeddedResources}"
> +     */
> +    protected ArrayList<String> embeddedResources;    

> Modified: incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java
> URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
> ==============================================================================
> --- incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java (original)
> +++ incubator/npanday/trunk/plugins/maven-compile-plugin/src/main/java/npanday/plugin/compile/CompilerMojo.java Sat Oct 16 10:29:17 2010
> @@ -213,6 +213,15 @@ public final class CompilerMojo
>             params.add("/resource:" + resource);
>         }
> 
> +		if (embeddedResources != null)
> +        {
> +			for ( String arg : embeddedResources )
> +			{
> +				params.add( "/resource:" + arg );
> +			}
> +            //params.add("/resource:" + resource);
> +        }
> +        

These seem unrelated. Did you intend it to be in this changeset? Are there new tests / doc / a ticket for it?
> Modified: incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java
> URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java?rev=1023237&r1=1023236&r2=1023237&view=diff
> ==============================================================================
> --- incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java (original)
> +++ incubator/npanday/trunk/plugins/maven-resgen-plugin/src/main/java/npanday/plugin/resgen/ResourceCopierMojo.java Sat Oct 16 10:29:17 2010
> @@ -56,16 +56,39 @@ public class ResourceCopierMojo
>     public void execute()
>         throws MojoExecutionException
>     {
> -        List<Resource> resources = project.getResources();
> +		try 
> +		{
> +		
> +			copyAllResources(project.getResources());
> +			copyAllResources(project.getTestResources());

are the test resources meant to be in the same location? is there a chance they'll get included in the artifact?

Thanks,
Brett

--
Brett Porter
brett@apache.org
http://brettporter.wordpress.com/