Author: sisbell
Date: Tue Feb 27 22:44:43 2007
New Revision: 512624

URL: http://svn.apache.org/viewvc?view=rev&rev=512624
Log:
Updated license info and api docs.

Modified:
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/ExecutionException.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/MimeType.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/ResX.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/ExecutionException.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/SettingsGenerator.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Solution/src/main/csharp/Plugin/Solution/SolutionPlugin.cs

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/ExecutionException.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/ExecutionException.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/ExecutionException.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/ExecutionException.cs
 Tue Feb 27 22:44:43 2007
@@ -1,17 +1,20 @@
 //
-//  Copyright 2006 Shane Isbell
+// 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
 //
-//  Licensed 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
 //
-//      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.
+// 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.
 //
 
 using System;

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
 Tue Feb 27 22:44:43 2007
@@ -1,3 +1,22 @@
+//
+// 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.
+//
+
 using System;
 using System.IO;
 using System.Collections.Generic;
@@ -6,18 +25,36 @@
 namespace NMaven.Core
 {
        /// <summary>
-       /// Description of Interface1.
+       /// Provides services for generating .NET project and solution files.
        /// </summary>
        public interface IProjectGenerator
        {
                
+        /// <summary>
+        /// Generates a .csproj file from the specified maven model.
+        /// </summary>
+        /// <param name="model">the pom model</param>
+        /// <param name="sourceFileDirectory">the directory containing the 
source files </param>
+        /// <param name="projectFileName">the name of the project: usually 
corresponds to the artifact id</param>
+        /// <param name="projectReferences">references to other projects that 
this project is dependent upon</param>
+        /// <returns></returns>
                IProjectReference generateProjectFor(NMaven.Model.Model model, 
                                            DirectoryInfo sourceFileDirectory,
                                            string projectFileName,
                                            List<IProjectReference> 
projectReferences);
                
+        /// <summary>
+        /// Generates a solution file that references the specified projects.
+        /// </summary>
+        /// <param name="fileInfo">the solution file</param>
+        /// <param name="projectReferences">csproj references</param>
                void generateSolutionFor(FileInfo fileInfo, 
List<IProjectReference> projectReferences);
                
+        /// <summary>
+        /// Creates a model from the pom.
+        /// </summary>
+        /// <param name="fileName">file name of the pom.xml file</param>
+        /// <returns>a model binding of the pom file</returns>
                NMaven.Model.Model createPomModelFor(string fileName);
                
        }

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
 Tue Feb 27 22:44:43 2007
@@ -1,3 +1,21 @@
+//
+// 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.
+//
 
 using System;
 using System.IO;
@@ -5,7 +23,7 @@
 namespace NMaven.Core
 {
        /// <summary>
-       /// Description of IProjectReference.
+       /// Provides services for obtaining information about a project 
(.csproj) reference
        /// </summary>
        public interface IProjectReference
        {

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
 Tue Feb 27 22:44:43 2007
@@ -1,3 +1,22 @@
+//
+// 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.
+//
+
 using System;
 using NMaven.Core;
 using NMaven.Model;
@@ -11,11 +30,14 @@
 namespace NMaven.Core.Impl
 {
        /// <summary>
-       /// Description of ProjectGeneratorImpl.
+       /// Implementation of the IProjectGenerator.
        /// </summary>
        public class ProjectGeneratorImpl : IProjectGenerator
        {
                
+        /// <summary>
+        /// Constructor
+        /// </summary>
                public ProjectGeneratorImpl()
                {
                }
@@ -28,7 +50,7 @@
                        Guid projectGuid = Guid.NewGuid();
                        
                        if(projectReferences == null) projectReferences = new 
List<IProjectReference>();
-                       Project project = getProjectFromPomModel(model, 
+                       Project project = GetProjectFromPomModel(model, 
                                                                 
sourceFileDirectory,
                                                                 
projectFileName, 
                                                                 projectGuid,
@@ -89,7 +111,19 @@
                }
                
 
-               private Project getProjectFromPomModel(NMaven.Model.Model 
model, 
+        /// <summary>
+        /// Returns a project binding 
(xmlns="http://schemas.microsoft.com/developer/msbuild/2003";) from the given 
model 
+        /// (pom.xml) file
+        /// </summary>
+        /// <param name="model">the model binding for a pom.xml file</param>
+        /// <param name="sourceFileDirectory">the directory containing the 
source files</param>
+        /// <param name="assemblyName">the name of the assembly: often 
corresponds to the artifact id from the pom</param>
+        /// <param name="projectGuid">the GUID of the project</param>
+        /// <param name="assemblyOutputPath">directory where the IDE output 
files are placed</param>
+        /// <param name="baseIntermediateOutputPath">directory where the IDE 
output files are placed</param>
+        /// <param name="projectReferences">references to other projects that 
this project is dependent upon</param>
+        /// <returns>Returns a project binding for the specified 
model</returns>
+               private Project GetProjectFromPomModel(NMaven.Model.Model 
model, 
                                                       DirectoryInfo 
sourceFileDirectory,
                                                       string assemblyName,
                                                       Guid projectGuid,
@@ -225,8 +259,7 @@
                        DirectoryInfo fileInfo = new 
DirectoryInfo(@"C:\WINDOWS\assembly\GAC_MSIL\" + dependency);
                        if(fileInfo.Exists) {
                                group.AddNewItem("Reference", dependency);      
-                       } else 
-                               Console.WriteLine("FNE: " + fileInfo.FullName);
+                       } 
                }
                catch(Exception e) 
                {

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
 Tue Feb 27 22:44:43 2007
@@ -1,3 +1,22 @@
+//
+// 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.
+//
+
 using System;
 using System.IO;
 

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/MimeType.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/MimeType.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/MimeType.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/MimeType.cs
 Tue Feb 27 22:44:43 2007
@@ -1,17 +1,20 @@
 //
-//  Copyright 2006 Shane Isbell
+// 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
 //
-//  Licensed 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
 //
-//      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.
+// 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.
 //
 
 using System;

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/ResX.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/ResX.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/ResX.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Resx/src/main/csharp/Plugin/Resx/ResX.cs
 Tue Feb 27 22:44:43 2007
@@ -1,17 +1,20 @@
 //
-//  Copyright 2006 Shane Isbell
+// 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
 //
-//  Licensed 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
 //
-//      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.
+// 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.
 //
 
 using System;

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/ExecutionException.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/ExecutionException.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/ExecutionException.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/ExecutionException.cs
 Tue Feb 27 22:44:43 2007
@@ -1,17 +1,20 @@
 //
-//  Copyright 2006 Shane Isbell
+// 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
 //
-//  Licensed 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
 //
-//      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.
+// 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.
 //
 
 using System;

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/SettingsGenerator.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/SettingsGenerator.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/SettingsGenerator.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Settings/src/main/csharp/Plugin/Settings/SettingsGenerator.cs
 Tue Feb 27 22:44:43 2007
@@ -1,17 +1,20 @@
 //
-//  Copyright 2006 Shane Isbell
+// 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
 //
-//  Licensed 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
 //
-//      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.
+// 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.
 //
 
 using System;

Modified: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Solution/src/main/csharp/Plugin/Solution/SolutionPlugin.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Solution/src/main/csharp/Plugin/Solution/SolutionPlugin.cs?view=diff&rev=512624&r1=512623&r2=512624
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Solution/src/main/csharp/Plugin/Solution/SolutionPlugin.cs
 (original)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Plugin.Solution/src/main/csharp/Plugin/Solution/SolutionPlugin.cs
 Tue Feb 27 22:44:43 2007
@@ -1,3 +1,22 @@
+//
+// 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.
+//
+
 using System;
 using System.Collections.Generic;
 using System.IO;
@@ -15,7 +34,7 @@
                {
                }
 
-               private string[] getModulesForProfile(string profile,  
NMaven.Model.Model model)
+               private string[] GetModulesForProfile(string profile,  
NMaven.Model.Model model)
                {
                        NMaven.Model.Profile[] profiles = model.profiles;
                        if(profiles == null)
@@ -23,7 +42,6 @@
                        
                        foreach(NMaven.Model.Profile p in profiles)
                        {
-                               Console.WriteLine( 
p.activation.property.name.ToString() );
                                if(p.activation.property.name.Equals(profile))
                                {
                                        return p.modules;
@@ -32,7 +50,7 @@
                        return model.modules;
         }
                
-               public List<IProjectReference> execute(DirectoryInfo 
currentDirectory, NMaven.Model.Model model, string profile)
+               public List<IProjectReference> Execute(DirectoryInfo 
currentDirectory, NMaven.Model.Model model, string profile)
                {       
                        if(model == null)
                        {
@@ -52,12 +70,12 @@
                        IProjectGenerator projectGenerator = new 
ProjectGeneratorImpl();
                        if(model.packaging.Equals("pom"))
                        {
-                               foreach(String module in 
getModulesForProfile(profile, model))
+                               foreach(String module in 
GetModulesForProfile(profile, model))
                                {
                                        DirectoryInfo newDir = new 
DirectoryInfo(currentDirectory.FullName + @"\" + module );
                                        Console.WriteLine("NMAVEN-000-000: 
Generating model for pom: File Name = " + newDir.FullName + @"\pom.xml");
                                        NMaven.Model.Model m = 
projectGenerator.createPomModelFor(newDir.FullName + @"\pom.xml");
-                                       
projectReferences.AddRange(execute(newDir, m, profile));
+                                       
projectReferences.AddRange(Execute(newDir, m, profile));
                                }                                               
                        } 
                        else
@@ -90,13 +108,30 @@
                
                public static void Main(string[] args)
                {
+            SolutionPlugin plugin = new SolutionPlugin();
+            string pomFile = plugin.GetArgFor("pomFile", args);
+            if (pomFile == null) pomFile = "pom.xml";
+
+            string profile = plugin.GetArgFor("profile", args); ;
+
                        IProjectGenerator projectGenerator = new 
ProjectGeneratorImpl();
-                       NMaven.Model.Model rootPom = 
projectGenerator.createPomModelFor("pom.xml");     
-                       
-                       SolutionPlugin plugin = new SolutionPlugin();
-                       List<IProjectReference> projectReferences = 
plugin.execute(new DirectoryInfo(Environment.CurrentDirectory), 
-                                                                               
   rootPom, "withIde");
-                       projectGenerator.generateSolutionFor(new 
FileInfo(@"test-1.sln"), projectReferences);                   
+                       NMaven.Model.Model rootPom = 
projectGenerator.createPomModelFor(pomFile);       
+                               
+
+                       List<IProjectReference> projectReferences = 
plugin.Execute(new DirectoryInfo(Environment.CurrentDirectory), 
+                                                                               
   rootPom, profile);
+                       projectGenerator.generateSolutionFor(new 
FileInfo(@rootPom.artifactId + "." + profile + ".sln"), projectReferences);     
               
+               }
+               
+               private string GetArgFor(string name, string[] args)
+               {
+                       char[] delim = {'='};
+                       foreach(string arg in args)
+                       {
+                string[] tokens = arg.Split(delim);
+                if (tokens[0].Equals(name)) return tokens[1];
+                       }
+            return null;
                }
        }
 }


Reply via email to