Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-2736

CookieBuilder maxAge should support java.time.Duration

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 5.8.2
    • 5.8.3
    • tapestry-core
    • None

    Description

      The CookieBuilder maxAge is based on seconds as int, but the contributed default value is using the intermediate type org.apache.tapestry5.ioc.util.TimeInterval which allows for defining an interval as a String.
      This makes setting the default quite readable, but CookieBuilder#setMaxAge itself accepts an int and doesn't mention that it's supposed to be seconds.

      I propose the following changes:

      • Clarify documentation of CookieBuilder#setMaxAge so it's obvious that it requires seconds
      • Add #setMaxAge(java.time.Duration)
      • Add TypeCoercion Duration -> TimeInterval, so the default value could be contributed as String or Duration, to ensure backward-compatibility.
      • Fix the use of the symbol key in the CookieBuilder constructor to use SymbolConstants.COOKIE_MAX_AGE instead of the value

       

      Attachments

        Activity

          People

            ben-ng Ben Weidig
            ben-ng Ben Weidig
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: