Interface VisualStudioSolution

All Superinterfaces:
Buildable, Describable, IdeWorkspace, Named

@Incubating public interface VisualStudioSolution extends Named, Buildable, IdeWorkspace
A visual studio solution, representing one or more native binaries in a build.

The content and location of the generate solution file can be modified by the supplied methods:

 apply plugin: "visual-studio"
 model {
     visualStudio {
         solution {
             solutionFile.location = "vs/${name}.sln"
             solutionFile.withContent { TextProvider content ->
                 content.asBuilder().insert(0, "# GENERATED FILE: DO NOT EDIT\n")
                 content.text = content.text.replaceAll("HideSolutionNode = FALSE", "HideSolutionNode = TRUE")
             }
         }
     }
 }
  • Method Details

    • getSolutionFile

      @Internal TextConfigFile getSolutionFile()
      Configuration for the generated solution file.
    • getLocation

      Returns the location of the generated solution file.
      Specified by:
      getLocation in interface IdeWorkspace
    • getBuildDependencies

      @Internal TaskDependency getBuildDependencies()
      Description copied from interface: Buildable
      Returns a dependency which contains the tasks which build this artifact. All Buildable implementations must ensure that the returned dependency object is live, so that it tracks changes to the dependencies of this buildable.
      Specified by:
      getBuildDependencies in interface Buildable
      Returns:
      The dependency. Never returns null. Returns an empty dependency when this artifact is not built by any tasks.
    • getName

      @Internal String getName()
      Description copied from interface: Named
      The object's name.

      Must be constant for the life of the object.

      Specified by:
      getName in interface Named
      Returns:
      The name. Never null.
    • getDisplayName

      @Internal String getDisplayName()
      Description copied from interface: Describable
      Returns the display name of this object. It is strongly encouraged to compute it lazily, and cache the value if it is expensive.
      Specified by:
      getDisplayName in interface Describable
      Returns:
      the display name