Interface NewExternalIssue


  • public interface NewExternalIssue
    Builder for an issue imported from an external rule engine by a Sensor. Don't forget to save() after setting the fields.
    Since:
    7.2
    • Method Detail

      • engineId

        NewExternalIssue engineId​(java.lang.String engineId)
        Unique identifier of the external analyzer (e.g. eslint, pmd, ...)
        Since:
        7.4
      • type

        @Deprecated(since="10.1")
        NewExternalIssue type​(RuleType type)
        Deprecated.
        since 10.1, use {@link #addImpact(SoftwareQuality softwareQuality, org.sonar.api.issue.impact.Severity severity)()} instead
        Type of issue.
      • cleanCodeAttribute

        @Beta
        NewExternalIssue cleanCodeAttribute​(CleanCodeAttribute attribute)
        Attribute of the issue according to Clean Code Taxonomy. Providing it is optional for now but will become mandatory in the future. This method is experimental and might change in the future.
        Since:
        10.1
      • remediationEffortMinutes

        NewExternalIssue remediationEffortMinutes​(@Nullable
                                                  java.lang.Long effortInMinutes)
        Effort to fix the issue, in minutes.
      • severity

        @Deprecated(since="10.1")
        NewExternalIssue severity​(Severity severity)
        Deprecated.
        since 10.1, use {@link #addImpact(SoftwareQuality softwareQuality, org.sonar.api.issue.impact.Severity severity)()} instead
        Set the severity of the issue.
      • addImpact

        @Beta
        NewExternalIssue addImpact​(SoftwareQuality softwareQuality,
                                   Severity severity)
        Add a new impact or override the severity of an impact already defined by the rule. It is only possible to define a default impact for a given SoftwareQuality This method is experimental and might change in the future.
        Since:
        10.1
      • addLocation

        NewExternalIssue addLocation​(NewIssueLocation secondaryLocation)
        Add a secondary location for this issue. Several secondary locations can be registered.
      • addFlow

        NewExternalIssue addFlow​(java.lang.Iterable<NewIssueLocation> flowLocations)
        Register a flow for this issue. A flow is an ordered list of issue locations that help to understand the issue. It should be a path that backtracks the issue from its primary location to the start of the flow. Several flows can be registered.
      • newLocation

        NewIssueLocation newLocation()
        Create a new location for this issue. First registered location is considered as primary location.
      • save

        void save()
        Save the issue. If rule key is unknown or rule not enabled in the current quality profile then a warning is logged but no exception is thrown.