Uploaded image for project: 'Sling'
  1. Sling
  2. SLING-4377

Add JSR305 nullness annotations to Sling API

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • API 2.9.0
    • API
    • None

    Description

      Since consumers of the Sling API always have to keep in mind whether a null-check is necessary it would be good to add JSR 305 annotations to the API.

      See also http://www.mail-archive.com/dev@sling.apache.org/msg42199.html.

      At least Eclipse as well as Findbugs are supporting those and Oak Solr is using those already (https://issues.apache.org/jira/browse/OAK-2303).

      Only the following 2 annotations should be used:

      1. @Nonnull, for return values which are not supposed to be null or parameters which must not be null.
      2. @CheckForNull, for return values wich may be null null.
        Those are the only ones being supported by both Eclipse and Findbugs (compare with http://sourceforge.net/p/findbugs/bugs/1355/)

      @Nullable is basically ignored by Findbugs (http://findbugs.sourceforge.net/manual/annotations.html) and should therefore not be used. The package annotation for the default handling should also not be used (because either @Nullable or @CheckForNull is ignored by Eclipse then.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            kwin Konrad Windszus
            kwin Konrad Windszus
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment