Uploaded image for project: 'Velocity'
  1. Velocity
  2. VELOCITY-793

Change ResourceLoader.getResourceStream to getResourceReader

    Details

    • Type: Wish
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0
    • Component/s: Engine
    • Labels:
      None

      Description

      It would be nice to use Readers instead of InputStreams for templates.

      Velocity is all about text-based rendering, so the templates are certainly going to be text-based. Using a Reader allows individual readers to determine the character encoding if necessary (say, from a database) and not have another component second-guess them.

      Of course, this is a serious change to the API. We could possible re-implement getResourceStream to read a Reader and provide bytes as backward-compatibility with older client code, but since we're going to 2.0, this would be the time to make breaking changes to the API.

        Activity

        Hide
        claude Claude Brisson added a comment -

        Commited, with backward compatibility.

        Show
        claude Claude Brisson added a comment - Commited, with backward compatibility.
        Hide
        nbubna Nathan Bubna added a comment -

        I agree we should move to Readers in 2.0. It is, however, only a serious change to the API for advanced users, not template writers. Providing B.C. support would be nice, but is certainly not required nor even expected.

        Show
        nbubna Nathan Bubna added a comment - I agree we should move to Readers in 2.0. It is, however, only a serious change to the API for advanced users, not template writers. Providing B.C. support would be nice, but is certainly not required nor even expected.

          People

          • Assignee:
            Unassigned
            Reporter:
            chris@christopherschultz.net Christopher Schultz
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development