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 br...@apache.org on 2011/12/31 15:55:56 UTC

svn commit: r1226117 - in /incubator/npanday/trunk/dotnet/assemblies: NPanday.ProjectImporter/Engine/src/main/csharp/ NPanday.ProjectImporter/Engine/src/main/csharp/Converter/ NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ NPanday.Project...

Author: brett
Date: Sat Dec 31 15:55:55 2011
New Revision: 1226117

URL: http://svn.apache.org/viewvc?rev=1226117&view=rev
Log:
[NPANDAY-488] add support for MSDeploy in web application generation

Modified:
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/PomConverter.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday.ProjectImporterEngine.csproj
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPandayImporter.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Parser/VisualStudioProjectTypes/VisualStudioProjectTypeEnum.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/AbstractProjectImportTest.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/MsDeployImportTest.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/NPANDAY_488/NPANDAY_488_MSDeployPackageSimpleWebApp/pom.test
    incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.Designer.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.cs
    incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.resx

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/PomConverter.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/PomConverter.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/PomConverter.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Converter/PomConverter.cs Sat Dec 31 15:55:55 2011
@@ -75,6 +75,23 @@ namespace NPanday.ProjectImporter.Conver
                 typeof(WebWithVbOrCsProjectFilePomConverter)
               );
             __converterAlgorithms.Add(
+                VisualStudioProjectTypeEnum.Web_Site | VisualStudioProjectTypeEnum.Windows__CSharp | VisualStudioProjectTypeEnum.WebDeploy2,
+                typeof(ASPNetPomConverter)
+              );
+            __converterAlgorithms.Add(
+                VisualStudioProjectTypeEnum.Web_Site | VisualStudioProjectTypeEnum.Windows__VbDotNet | VisualStudioProjectTypeEnum.WebDeploy2,
+                typeof(ASPNetPomConverter)
+              );
+
+            __converterAlgorithms.Add(
+                VisualStudioProjectTypeEnum.Web_Application | VisualStudioProjectTypeEnum.Windows__CSharp | VisualStudioProjectTypeEnum.WebDeploy2,
+                typeof(ASPNetPomConverter)
+              );
+            __converterAlgorithms.Add(
+                VisualStudioProjectTypeEnum.Web_Application | VisualStudioProjectTypeEnum.Windows__VbDotNet | VisualStudioProjectTypeEnum.WebDeploy2,
+                typeof(ASPNetPomConverter)
+              );
+            __converterAlgorithms.Add(
                 VisualStudioProjectTypeEnum.Windows_Presentation_Foundation__WPF | VisualStudioProjectTypeEnum.Windows__CSharp,
                 typeof(NormalPomConverter)
               );
@@ -223,6 +240,12 @@ namespace NPanday.ProjectImporter.Conver
             }
             else
            {
+               // fudge the project type - though overall this would be better with "capabilities" or some filters instead
+               if ((projectDigest.ProjectType & VisualStudioProjectTypeEnum.Web_Application) != 0 && projectDigest.UseMsDeploy)
+               {
+                   projectDigest.ProjectType |= VisualStudioProjectTypeEnum.WebDeploy2;
+               }
+
 
                try
                 {

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Digest/Model/ProjectDigest.cs Sat Dec 31 15:55:55 2011
@@ -528,5 +528,7 @@ namespace NPanday.ProjectImporter.Digest
 
 
 
+
+        public bool UseMsDeploy { get; set; }
     }
 }

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday.ProjectImporterEngine.csproj
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday.ProjectImporterEngine.csproj?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday.ProjectImporterEngine.csproj (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPanday.ProjectImporterEngine.csproj Sat Dec 31 15:55:55 2011
@@ -53,6 +53,7 @@
     <Reference Include="System.Xml" />
   </ItemGroup>
   <ItemGroup>
+    <Compile Include="Converter\Algorithms\ASPNetPomConverter.cs" />
     <Compile Include="Converter\Algorithms\WebWithVbOrCsProjectFilePomConverter.cs" />
     <Compile Include="Digest\Algorithms\BaseProjectDigestAlgorithm.cs" />
     <Compile Include="Digest\Model\ComReference.cs" />

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPandayImporter.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPandayImporter.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPandayImporter.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/NPandayImporter.cs Sat Dec 31 15:55:55 2011
@@ -100,18 +100,26 @@ namespace NPanday.ProjectImporter
         /// <param name="verifyTests">if true, a dialog box for verifying tests will show up and requires user interaction</param>
         /// <param name="scmTag">generates scm tags if txtboxfield is not empty or null</param>
         /// <returns>An array of generated pom.xml filenames</returns>
-        public static string[] ImportProject(string solutionFile, string groupId, string artifactId, string version, string scmTag,bool verifyTests, ref string warningMsg)
+        public static string[] ImportProject(string solutionFile, string groupId, string artifactId, string version, string scmTag, bool verifyTests, ref string warningMsg)
         {
-            if (verifyTests)
-            {
-                return ImportProject(solutionFile, groupId, artifactId, version,  scmTag, VerifyUnitTestsToUser.VerifyTests, ref warningMsg);    
-            }
-            else
-            {
-                return ImportProject(solutionFile, groupId, artifactId, version, scmTag, null, ref warningMsg);    
-            }
-            
+            return ImportProject(solutionFile, groupId, artifactId, version, scmTag, verifyTests, false, ref warningMsg);
+        }
 
+        /// <summary>
+        /// Imports a specified Visual Studio Projects in a Solution to an NPanday Pom,
+        /// This is the Project-Importer Entry Method
+        /// </summary>
+        /// <param name="solutionFile">Path to your Visual Studio Solution File *.sln </param>
+        /// <param name="groupId">Project Group ID, for maven groupId</param>
+        /// <param name="artifactId">Project Parent Pom Artifact ID, used as a maven artifact ID for the parent pom.xml</param>
+        /// <param name="version">Project version, used as a maven version for the entire pom.xmls</param>
+        /// <param name="verifyTests">if true, a dialog box for verifying tests will show up and requires user interaction</param>
+        /// <param name="scmTag">generates scm tags if txtboxfield is not empty or null</param>
+        /// <returns>An array of generated pom.xml filenames</returns>
+        public static string[] ImportProject(string solutionFile, string groupId, string artifactId, string version, string scmTag, bool verifyTests, bool useMsDeploy, ref string warningMsg)
+        {
+            VerifyProjectToImport method = verifyTests ? VerifyUnitTestsToUser.VerifyTests : (VerifyProjectToImport) null;
+            return ImportProject(solutionFile, groupId, artifactId, version, scmTag, method, useMsDeploy, ref warningMsg);    
         }
 
         /// <summary>
@@ -154,9 +162,25 @@ namespace NPanday.ProjectImporter
         /// <param name="verifyProjectToImport">A delegate That will Accept a method for verifying Projects To Import</param>
         /// <param name="scmTag">adds scm tags to parent pom.xml if not string.empty or null</param>
         /// <returns>An array of generated pom.xml filenames</returns>
-        public static string[] ImportProject(string solutionFile, string groupId, string artifactId, string version, string scmTag,VerifyProjectToImport verifyProjectToImport, ref string warningMsg)
+        public static string[] ImportProject(string solutionFile, string groupId, string artifactId, string version, string scmTag, VerifyProjectToImport verifyProjectToImport, ref string warningMsg)
+        {
+            return ImportProject(solutionFile, groupId, artifactId, version, scmTag, verifyProjectToImport, false, ref warningMsg);
+        }
+
+        /// <summary>
+        /// Imports a specified Visual Studio Projects in a Solution to an NPanday Pom,
+        /// This is the Project-Importer Entry Method,
+        /// This method accepts a delegate to use as A project Verifier algorithm
+        /// </summary>
+        /// <param name="solutionFile">Path to your Visual Studio Solution File *.sln </param>
+        /// <param name="groupId">Project Group ID, for maven groupId</param>
+        /// <param name="artifactId">Project Parent Pom Artifact ID, used as a maven artifact ID for the parent pom.xml</param>
+        /// <param name="version">Project version, used as a maven version for the entire pom.xmls</param>
+        /// <param name="verifyProjectToImport">A delegate That will Accept a method for verifying Projects To Import</param>
+        /// <param name="scmTag">adds scm tags to parent pom.xml if not string.empty or null</param>
+        /// <returns>An array of generated pom.xml filenames</returns>
+        public static string[] ImportProject(string solutionFile, string groupId, string artifactId, string version, string scmTag, VerifyProjectToImport verifyProjectToImport, bool useMsDeploy, ref string warningMsg)
         {
-        
             string[] result = null;
 
             FileInfo solutionFileInfo = new FileInfo(solutionFile);
@@ -181,6 +205,8 @@ namespace NPanday.ProjectImporter
             {
                 if (PomConverter.__converterAlgorithms.ContainsKey(pDigest.ProjectType))
                 {
+                    // set the project flag so that converters can look at it later
+                    pDigest.UseMsDeploy = useMsDeploy;
                     filteredPrjDigests.Add(pDigest);
                 }
                 else

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Parser/VisualStudioProjectTypes/VisualStudioProjectTypeEnum.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Parser/VisualStudioProjectTypes/VisualStudioProjectTypeEnum.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Parser/VisualStudioProjectTypes/VisualStudioProjectTypeEnum.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/main/csharp/Parser/VisualStudioProjectTypes/VisualStudioProjectTypeEnum.cs Sat Dec 31 15:55:55 2011
@@ -33,171 +33,173 @@ namespace NPanday.ProjectImporter.Parser
         /// Project Type: Windows (C#), 
         /// GUID: {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
         /// </summary>
-        Windows__CSharp = 1,
+        Windows__CSharp = 1 << 0,
 
 
         /// <summary>
         /// Project Type: Windows (VB.NET), 
         /// GUID: {F184B08F-C81C-45F6-A57F-5ABD9991F28F}
         /// </summary>
-        Windows__VbDotNet = 2, 
-        
+        Windows__VbDotNet = 1 << 1,
+
         /// <summary>
         /// Project Type: Windows (Visual C++), 
         /// GUID: {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}
         /// </summary>
-        Windows__VCpp = 4,
+        Windows__VCpp = 1 << 2,
 
         /// <summary>
         /// Project Type: Web Application, 
         /// GUID: {349C5851-65DF-11DA-9384-00065B846F21}
         /// </summary>
-        Web_Application = 8,
-        
+        Web_Application = 1 << 3,
+
         /// <summary>
         /// Project Type: Web Site, 
         /// GUID: {E24C65DC-7377-472B-9ABA-BC803B73C61A}
         /// </summary>
-        Web_Site = 16,
-        
+        Web_Site = 1 << 4,
+
         /// <summary>
         /// Project Type: Distributed System, 
         /// GUID: {F135691A-BF7E-435D-8960-F99683D2D49C}
         /// </summary>
-        Distributed_System = 32,
-        
+        Distributed_System = 1 << 5,
+
         /// <summary>
         /// Project Type: Windows Communication Foundation (WCF), 
         /// GUID: {3D9AD99F-2412-4246-B90B-4EAA41C64699}
         /// </summary>
-        Windows_Communication_Foundation__WCF = 64, 
-        
+        Windows_Communication_Foundation__WCF = 1 << 6,
+
         /// <summary>
         /// Project Type: Windows Presentation Foundation (WPF), 
         /// GUID: {60DC8134-EBA5-43B8-BCC9-BB4BC16C2548}
         /// </summary>
-        Windows_Presentation_Foundation__WPF = 128, 
-        
+        Windows_Presentation_Foundation__WPF = 1 << 7,
+
         /// <summary>
         /// Project Type: Visual Database Tools, 
         /// GUID: {C252FEB5-A946-4202-B1D4-9916A0590387}
         /// </summary>
-        Visual_Database_Tools = 256, 
-        
+        Visual_Database_Tools = 1 << 8,
+
         /// <summary>
         /// Project Type: Database, 
         /// GUID: {A9ACE9BB-CECE-4E62-9AA4-C7E7C5BD2124}
         /// </summary>
-        Database = 512, 
-        
+        Database = 1 << 9,
+
         /// <summary>
         /// Project Type: Database (other project types), 
         /// GUID: {4F174C21-8C12-11D0-8340-0000F80270F8}
         /// </summary>
-        Database__other_project_types = 1024, 
-        
+        Database__other_project_types = 1 << 10,
+
         /// <summary>
         /// Project Type: Test, 
         /// GUID: {3AC096D0-A1C2-E12C-1390-A8335801FDAB}
         /// </summary>
-        Test = 2048, 
-        
+        Test = 1 << 11,
+
         /// <summary>
         /// Project Type: Legacy (2003) Smart Device (C#), 
         /// GUID: {20D4826A-C6FA-45DB-90F4-C717570B9F32}
         /// </summary>
-        Legacy__2003_Smart_Device__CSharp = 4096, 
-        
+        Legacy__2003_Smart_Device__CSharp = 1 << 12,
+
         /// <summary>
         /// Project Type: Legacy (2003) Smart Device (VB.NET), 
         /// GUID: {CB4CE8C6-1BDB-4DC7-A4D3-65A1999772F8}
         /// </summary>
-        Legacy__2003_Smart_Device__VbDotNet = 8192, 
-        
+        Legacy__2003_Smart_Device__VbDotNet = 1 << 13,
+
         /// <summary>
         /// Project Type: Smart Device (C#), 
         /// GUID: {4D628B5B-2FBC-4AA6-8C16-197242AEB884}
         /// </summary>
-        Smart_Device__CSharp = 16384, 
-        
+        Smart_Device__CSharp = 1 << 14,
+
         /// <summary>
         /// Project Type: Smart Device (VB.NET), 
         /// GUID: {68B1623D-7FB9-47D8-8664-7ECEA3297D4F}
         /// </summary>
-        Smart_Device__VbDotNet = 32768, 
-        
+        Smart_Device__VbDotNet = 1 << 15,
+
         /// <summary>
         /// Project Type: Workflow (C#), 
         /// GUID: {14822709-B5A1-4724-98CA-57A101D1B079}
         /// </summary>
-        Workflow__CSharp = 65536, 
-        
+        Workflow__CSharp = 1 << 16,
+
         /// <summary>
         /// Project Type: Workflow (VB.NET), 
         /// GUID: {D59BE175-2ED0-4C54-BE3D-CDAA9F3214C8}
         /// </summary>
-        Workflow__VbDotNet = 131072, 
-        
+        Workflow__VbDotNet = 1 << 17,
+
         /// <summary>
         /// Project Type: Deployment Merge Module, 
         /// GUID: {06A35CCD-C46D-44D5-987B-CF40FF872267}
         /// </summary>
-        Deployment_Merge_Module = 262144, 
-        
+        Deployment_Merge_Module = 1 << 18,
+
         /// <summary>
         /// Project Type: Deployment Cab, 
         /// GUID: {3EA9E505-35AC-4774-B492-AD1749C4943A}
         /// </summary>
-        Deployment_Cab = 524288, 
-        
+        Deployment_Cab = 1 << 19,
+
         /// <summary>
         /// Project Type: Deployment Setup, 
         /// GUID: {978C614F-708E-4E1A-B201-565925725DBA}
         /// </summary>
-        Deployment_Setup = 1048576, 
-        
+        Deployment_Setup = 1 << 20,
+
         /// <summary>
         /// Project Type: Deployment Smart Device Cab, 
         /// GUID: {AB322303-2255-48EF-A496-5904EB18DA55}
         /// </summary>
-        Deployment_Smart_Device_Cab = 2097152, 
-        
+        Deployment_Smart_Device_Cab = 1 << 21,
+
         /// <summary>
         /// Project Type: Visual Studio Tools for Applications (VSTA), 
         /// GUID: {A860303F-1F3F-4691-B57E-529FC101A107}
         /// </summary>
-        Visual_Studio_Tools_for_Applications__VSTA = 4194304, 
-        
+        Visual_Studio_Tools_for_Applications__VSTA = 1 << 22,
+
         /// <summary>
         /// Project Type: Visual Studio Tools for Office (VSTO), 
         /// GUID: {BAA0C2D2-18E2-41B9-852F-F413020CAA33}
         /// </summary>
-        Visual_Studio_Tools_for_Office__VSTO = 8388608, 
-        
+        Visual_Studio_Tools_for_Office__VSTO = 1 << 23,
+
         /// <summary>
         /// Project Type: SharePoint Workflow, 
         /// GUID: {F8810EC1-6754-47FC-A15F-DFABD2E3FA90}
         /// </summary>
-        SharePoint_Workflow = 16777216,
+        SharePoint_Workflow = 1 << 24,
 
         /// <summary>
         /// Project Type: Microsoft Installer, 
         /// GUID: {54435603-DBB4-11D2-8724-00A0C9A8B90C}
         /// </summary>
-        Microsoft_Installer = 33554432,
+        Microsoft_Installer = 1 << 25,
 
         /// <summary>
         /// Project Type: Website MVC, 
         /// GUID: {603c0e0b-db56-11dc-be95-000d561079b0}
         /// </summary>
         Website_MVC = 3,
-		
-		
+
+
         /// <summary>
         /// Project Type: ASP MVC,
         /// GUID: {69150728-AFCB-45A3-9D78-D96A5E0F1A27}
         /// </summary>
-        Model_View_Controller_MVC = 67108864,
-                
+        Model_View_Controller_MVC = 1 << 26,
+        
+        WebDeploy2 = 1 << 27,
+
     }
 }

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/AbstractProjectImportTest.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/AbstractProjectImportTest.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/AbstractProjectImportTest.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/AbstractProjectImportTest.cs Sat Dec 31 15:55:55 2011
@@ -48,6 +48,11 @@ namespace NPanday.ProjectImporter.Import
             get;
         }
 
+        public virtual bool UseMsDeploy
+        {
+            get { return false; }
+        }
+
         [Test]
         [TestFixtureSetUp]
         public void ShouldBeAbleImportProject()
@@ -62,7 +67,7 @@ namespace NPanday.ProjectImporter.Import
             try
             {
                 string warnMsg = string.Empty;
-                generatedPomFiles = NPandayImporter.ImportProject(solutionFile, "test.group", "test-parent", "1.2.3-SNAPSHOT", string.Empty, false, ref warnMsg);
+                generatedPomFiles = NPandayImporter.ImportProject(solutionFile, "test.group", "test-parent", "1.2.3-SNAPSHOT", string.Empty, false, UseMsDeploy, ref warnMsg);
 
             }
             catch (Exception e)

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/MsDeployImportTest.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/MsDeployImportTest.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/MsDeployImportTest.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/csharp/ImporterTests/MsDeployImportTest.cs Sat Dec 31 15:55:55 2011
@@ -37,6 +37,11 @@ namespace NPanday.ProjectImporter.Import
             ProjectImporterAssertions.AssertPomCount(2, GeneratedPomFiles);
         }
 
+        public override bool UseMsDeploy
+        {
+            get { return true; }
+        }
+
         public override string TestResourcePath
         {
             get { return @"src\test\resource\NPANDAY_488\"; }

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/NPANDAY_488/NPANDAY_488_MSDeployPackageSimpleWebApp/pom.test
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/NPANDAY_488/NPANDAY_488_MSDeployPackageSimpleWebApp/pom.test?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/NPANDAY_488/NPANDAY_488_MSDeployPackageSimpleWebApp/pom.test (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/src/test/resource/NPANDAY_488/NPANDAY_488_MSDeployPackageSimpleWebApp/pom.test Sat Dec 31 15:55:55 2011
@@ -11,7 +11,7 @@
   <packaging>dotnet-library</packaging>
   <name>test.group : HelloWorldWebRole</name>
   <build>
-    <sourceDirectory>.</sourceDirectory>
+    <sourceDirectory>./</sourceDirectory>
     <plugins>
       <plugin>
         <groupId>org.apache.npanday.plugins</groupId>

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.Designer.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.Designer.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.Designer.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.Designer.cs Sat Dec 31 15:55:55 2011
@@ -59,6 +59,7 @@ namespace NPanday.VisualStudio.Addin
             this.txtSCMTag = new System.Windows.Forms.TextBox();
             this.label2 = new System.Windows.Forms.Label();
             this.txtVersion = new System.Windows.Forms.TextBox();
+            this.useMsDeployCheckBox = new System.Windows.Forms.CheckBox();
             this.SuspendLayout();
             // 
             // btnBrowse
@@ -93,10 +94,10 @@ namespace NPanday.VisualStudio.Addin
             // btnCancel
             // 
             this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.btnCancel.Location = new System.Drawing.Point(451, 107);
+            this.btnCancel.Location = new System.Drawing.Point(265, 172);
             this.btnCancel.Margin = new System.Windows.Forms.Padding(2);
             this.btnCancel.Name = "btnCancel";
-            this.btnCancel.Size = new System.Drawing.Size(64, 21);
+            this.btnCancel.Size = new System.Drawing.Size(104, 21);
             this.btnCancel.TabIndex = 6;
             this.btnCancel.Text = "&Cancel";
             this.btnCancel.UseVisualStyleBackColor = true;
@@ -104,7 +105,7 @@ namespace NPanday.VisualStudio.Addin
             // 
             // btnGenerate
             // 
-            this.btnGenerate.Location = new System.Drawing.Point(341, 107);
+            this.btnGenerate.Location = new System.Drawing.Point(157, 172);
             this.btnGenerate.Margin = new System.Windows.Forms.Padding(2);
             this.btnGenerate.Name = "btnGenerate";
             this.btnGenerate.Size = new System.Drawing.Size(104, 21);
@@ -167,12 +168,23 @@ namespace NPanday.VisualStudio.Addin
             this.txtVersion.Size = new System.Drawing.Size(171, 20);
             this.txtVersion.TabIndex = 15;
             // 
+            // useMsDeployCheckBox
+            // 
+            this.useMsDeployCheckBox.AutoSize = true;
+            this.useMsDeployCheckBox.Location = new System.Drawing.Point(118, 141);
+            this.useMsDeployCheckBox.Name = "useMsDeployCheckBox";
+            this.useMsDeployCheckBox.Size = new System.Drawing.Size(264, 17);
+            this.useMsDeployCheckBox.TabIndex = 16;
+            this.useMsDeployCheckBox.Text = "Use Web Deploy 2.0 to package web applications";
+            this.useMsDeployCheckBox.UseVisualStyleBackColor = true;
+            // 
             // NPandayImportProjectForm
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(526, 136);
+            this.ClientSize = new System.Drawing.Size(526, 204);
             this.ControlBox = false;
+            this.Controls.Add(this.useMsDeployCheckBox);
             this.Controls.Add(this.txtVersion);
             this.Controls.Add(this.label2);
             this.Controls.Add(this.txtSCMTag);
@@ -207,5 +219,6 @@ namespace NPanday.VisualStudio.Addin
         private System.Windows.Forms.TextBox txtSCMTag;
         private System.Windows.Forms.Label label2;
         private System.Windows.Forms.TextBox txtVersion;
+        private System.Windows.Forms.CheckBox useMsDeployCheckBox;
     }
 }

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.cs?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.cs (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.cs Sat Dec 31 15:55:55 2011
@@ -119,6 +119,9 @@ namespace NPanday.VisualStudio.Addin
                     }
 
                     txtVersion.Text = version;
+
+                    // TODO: remember this, or have a default
+                    useMsDeployCheckBox.Checked = true;
                 }
                 catch { /*do nothing*/}
 
@@ -183,7 +186,7 @@ namespace NPanday.VisualStudio.Addin
             //Refactored code for easier Unit Testing
             try
             {
-                GeneratePom(txtBrowseDotNetSolutionFile.Text, txtGroupId.Text.Trim(), txtVersion.Text.Trim(), txtSCMTag.Text);
+                GeneratePom(txtBrowseDotNetSolutionFile.Text, txtGroupId.Text.Trim(), txtVersion.Text.Trim(), txtSCMTag.Text, useMsDeployCheckBox.Checked);
             }
             catch (Exception exception)
             {
@@ -191,7 +194,7 @@ namespace NPanday.VisualStudio.Addin
             }
         }
 
-        protected void GeneratePom(String solutionFile, String groupId, String version, String scmTag)
+        protected void GeneratePom(String solutionFile, String groupId, String version, String scmTag, bool useMsDeploy)
         {
             string warningMsg = string.Empty;
             String mavenVerRegex = "^[0-9]+(" + Regex.Escape(".") + "?[0-9]+){0,3}$";
@@ -274,7 +277,8 @@ namespace NPanday.VisualStudio.Addin
 
                 validateSolutionStructure();
                 resyncAllArtifacts();
-                string[] generatedPoms = ProjectImporter.NPandayImporter.ImportProject(file.FullName, groupId, artifactId, version, scmTag, true, ref warningMsg);
+                // TODO: nicer to have some sort of structure / flags for the Msdeploy bit, or this dialog will get out of control over time - perhaps a "project configuration" dialog can replace the test popup
+                string[] generatedPoms = ProjectImporter.NPandayImporter.ImportProject(file.FullName, groupId, artifactId, version, scmTag, true, useMsDeploy, ref warningMsg);
                 string str = string.Format("NPanday Import Project has Successfully Generated Pom Files!\n");
 
                 foreach (string pom in generatedPoms)

Modified: incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.resx
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.resx?rev=1226117&r1=1226116&r2=1226117&view=diff
==============================================================================
--- incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.resx (original)
+++ incubator/npanday/trunk/dotnet/assemblies/NPanday.VisualStudio.Addin/src/main/csharp/NPandayImportProjectForm.resx Sat Dec 31 15:55:55 2011
@@ -1,23 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~ with the License.  You may obtain a copy of the License at
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
 <root>
   <!-- 
     Microsoft ResX Schema