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; } } }