# Interface SourceComponentSpec

All Superinterfaces:
  `ComponentSpec, ModelElement, Named`

All Known Subinterfaces:
  `ApplicationSpec, CUnitTestSuiteSpec, GeneralComponentSpec, GoogleTestTestSuiteSpec, LibrarySpec, NativeExecutableSpec, NativeLibrarySpec, NativeTestSuiteSpec, TestSuiteSpec`

All Known Implementing Classes:
  `BaseComponentSpec`

@Incubating @Deprecated public interface SourceComponentSpec extends ComponentSpec
Deprecated.
The Gradle software model is deprecated and will be removed in Gradle 10. Use the new component model (e.g. `cpp-application`, `cpp-library`, `swift-application`, `swift-library`, `xctest`) instead.
Represents some component whose implementation can be represented as a collection of source files, and whose other outputs are built from this source.

Since:
  2.12

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Named

  `Named.Namer`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ModelMap<LanguageSourceSet>`
  `getSources()`
  Deprecated.
  The source sets for this component.

  ### Methods inherited from interface ComponentSpec

  `getProjectPath`

  ### Methods inherited from interface ModelElement

  `getDisplayName, getName`

- ## Method Details

  - ### getSources

    ModelMap<LanguageSourceSet> getSources()
    Deprecated.
    The source sets for this component.
    Since:
      2.12