A hierarchical representation for a particular problem type.

A category object follows a pattern similar to URNs, it has a namespace, a main category and a subcategory.

The namespace contains information about the origin of the problem: whether it comes from the Gradle core runtime, or from a third-party plugin. For example, deprecation, or compilation is a main category.

Subcategories can be an arbitrary list of strings, that ideally serve as a unique identifier. To use compilation as an example, [java, unused-variable] would be a subcategory, that along with the [compilation] main category, denotes a particular compiler warning. The exact definition of subcategories depends on the problem's domain.




Link copied to clipboard
abstract fun getCategory(): String
The main problem category.
Link copied to clipboard
abstract fun getNamespace(): String
Returns the namespace.
Link copied to clipboard
abstract fun getSubcategories(): List<String>
The problem's subcategories.