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:

      plugins {
          id '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 Detail

      • getBuildDependencies

        @Incubating
        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

        java.lang.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

        java.lang.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