Author: apadilla
Date: Mon Oct 11 09:29:12 2010
New Revision: 1021289

URL: http://svn.apache.org/viewvc?rev=1021289&view=rev
Log:
[NPANDAY-288] - import and compile simple VS 2010 projects

Modified:
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactType.java
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
    
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java
    
incubator/npanday/branches/npanday-vs2010-support/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs
    
incubator/npanday/branches/npanday-vs2010-support/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml
    
incubator/npanday/branches/npanday-vs2010-support/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/SettingsGeneratorMojo.cs

Modified: 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-artifact/src/main/resources/META-INF/plexus/components.xml
 Mon Oct 11 09:29:12 2010
@@ -82,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/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactType.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactType.java?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactType.java
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactType.java
 Mon Oct 11 09:29:12 2010
@@ -94,6 +94,7 @@ public enum ArtifactType
     // 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"),
     
@@ -155,6 +156,8 @@ public enum ArtifactType
     
     GAC_32 ( "gac_32", null, "dll"),
 
+    GAC_64 ( "gac_64", null, "dll"),   
+
     COM_REFERENCE( "com_reference", null, "dll");
 
     /**

Modified: 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-core/src/main/java/npanday/ArtifactTypeHelper.java
 Mon Oct 11 09:29:12 2010
@@ -104,6 +104,7 @@ public class ArtifactTypeHelper
                 || packaging.equals( ArtifactType.GAC_GENERIC )
                 || packaging.equals( ArtifactType.GAC )
                 || packaging.equals( ArtifactType.GAC_32)
+                || packaging.equals( ArtifactType.GAC_64)                      
        
                 || packaging.equals( ArtifactType.GAC_MSIL )
                 || packaging.equals( ArtifactType.GAC_MSIL4 );
     }

Modified: 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/compiler/impl/DefaultCompiler.java
 Mon Oct 11 09:29:12 2010
@@ -164,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() );

Modified: 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
 Mon Oct 11 09:29:12 2010
@@ -434,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()

Modified: 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-executable/src/main/java/npanday/executable/impl/DefaultRepositoryNetExecutable.java
 Mon Oct 11 09:29:12 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/branches/npanday-vs2010-support/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/components/dotnet-vendor/src/main/java/npanday/vendor/impl/VendorInfoRepositoryImpl.java
 Mon Oct 11 09:29:12 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/branches/npanday-vs2010-support/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday/ProjectImporter/Converter/Algorithms/AbstractPomConverter.cs
 Mon Oct 11 09:29:12 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)))
                 {

Modified: 
incubator/npanday/branches/npanday-vs2010-support/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/plugins/maven-vsinstaller-plugin/src/main/resources/META-INF/plexus/components.xml
 Mon Oct 11 09:29:12 2010
@@ -82,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/branches/npanday-vs2010-support/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/SettingsGeneratorMojo.cs
URL: 
http://svn.apache.org/viewvc/incubator/npanday/branches/npanday-vs2010-support/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/SettingsGeneratorMojo.cs?rev=1021289&r1=1021288&r2=1021289&view=diff
==============================================================================
--- 
incubator/npanday/branches/npanday-vs2010-support/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/SettingsGeneratorMojo.cs
 (original)
+++ 
incubator/npanday/branches/npanday-vs2010-support/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/SettingsGeneratorMojo.cs
 Mon Oct 11 09:29:12 2010
@@ -123,13 +123,14 @@ namespace NPanday.Plugin.Settings
             bool dirInfo11 = new DirectoryInfo(Path.Combine(installRoot, 
"v1.1.4322")).Exists;
             bool dirInfo20 = new DirectoryInfo(Path.Combine(installRoot, 
"v2.0.50727")).Exists;
             bool dirInfo35 = new DirectoryInfo(Path.Combine(installRoot, 
"v3.5")).Exists;
+            bool dirInfo40 = new DirectoryInfo(Path.Combine(installRoot, 
"v4.0.30319")).Exists;
 
             if(installRoot != null)
             {
-                if(!dirInfo11 && !dirInfo20 && !dirInfo35)
+                if(!dirInfo11 && !dirInfo20 && !dirInfo35 && !dirInfo40)
                     return null;
                 defaultSetup.vendorName = "MICROSOFT";
-                defaultSetup.vendorVersion = (dirInfo20) ? "2.0.50727" : 
((dirInfo35) ? "3.5" : "1.1.4322");                
+                defaultSetup.vendorVersion = (dirInfo20) ? "2.0.50727" : 
((dirInfo35) ? "3.5" : ((dirInfo40) ? "4.0" : "1.1.4322"));                
                 defaultSetup.frameworkVersion = defaultSetup.vendorVersion;
                 return defaultSetup;
             }
@@ -190,6 +191,7 @@ namespace NPanday.Plugin.Settings
             DirectoryInfo dirInfo20 = new 
DirectoryInfo(Path.Combine(installRoot, "v2.0.50727"));
             DirectoryInfo dirInfo30 = new 
DirectoryInfo(Path.Combine(installRoot, "v3.0"));
             DirectoryInfo dirInfo35 = new 
DirectoryInfo(Path.Combine(installRoot, "v3.5"));
+            DirectoryInfo dirInfo40 = new 
DirectoryInfo(Path.Combine(installRoot, "v4.0.30319"));                      
             
             int vendorCounter = 0;
             if (dirInfo11.Exists)
@@ -239,6 +241,20 @@ namespace NPanday.Plugin.Settings
                 vendor.frameworks = vendorFrameworks;
                 vendors[vendorCounter++] = vendor;
             }
+            if (dirInfo40.Exists)
+            {
+                npandaySettingsVendorsVendor vendor = new 
npandaySettingsVendorsVendor();
+                vendor.vendorName = "MICROSOFT";
+                vendor.vendorVersion = "4.0";
+                npandaySettingsVendorsVendorFrameworksFramework[] 
vendorFrameworks = new npandaySettingsVendorsVendorFrameworksFramework[1];
+                npandaySettingsVendorsVendorFrameworksFramework vf11 = new 
npandaySettingsVendorsVendorFrameworksFramework();
+                vf11.installRoot = dirInfo40.FullName;
+                vf11.frameworkVersion = "4.0";
+                vendorFrameworks[0] = vf11;
+                vf11.sdkInstallRoot = sdkInstallRoot20;
+                vendor.frameworks = vendorFrameworks;
+                vendors[vendorCounter++] = vendor;
+            }                  
             
             return vendors;
         }
@@ -271,6 +287,11 @@ namespace NPanday.Plugin.Settings
                 vf35.frameworkVersion = "3.5";
                 vendorFrameworks[2] = vf35;
                 
+                npandaySettingsVendorsVendorFrameworksFramework vf40 = new 
npandaySettingsVendorsVendorFrameworksFramework();
+                vf40.installRoot = installRoot;
+                vf40.frameworkVersion = "4.0";
+                vendorFrameworks[3] = vf40;
+
                 npandaySettingsVendorsVendor vendor = new 
npandaySettingsVendorsVendor();
                 vendor.vendorName = "MONO";
                 vendor.vendorVersion = keyName;


Reply via email to