Uploaded image for project: 'Commons Compress'
  1. Commons Compress
  2. COMPRESS-15

COMPRESS-REDESIGN: ArchiveStreamFactory does not handle exceptions for createArchiveInputStream(InputStream)

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Environment:

      N/A

      Description

      Reflection handles the checked exceptions for Constructor.newInstance() appropriately for:

      public ArchiveInputStream createArchiveInputStream( final String archiverName, final InputStream out ) throws ArchiveException

      {...}

      However, the other method:

      public ArchiveInputStream createArchiveInputStream( final InputStream input ) throws IOException {...}

      is not implemented to handle checked constructor exceptions since all Exception catches are not handled. It looks as though this method was not completed. This method should handle exceptions similar to its counterpart.

      1. ArchiveStreamFactory.patch
        6 kB
        Tim Pinet
      2. patch-improve-factories.txt
        13 kB
        Christian Grobmeier

        Activity

        Hide
        cgrobmeier Christian Grobmeier added a comment -

        As discussed here:
        http://mail-archives.apache.org/mod_mbox/commons-dev/200810.mbox/%3C07071EEC-C9EB-40B3-B0B1-5D3306BE4013@apache.org%3E

        use of reflection might be a bit overkill. The patch from 2009-01-06 10:25 PM eliminates the reflection stuff from the codebase and makes everything a bit cleaner and easier to use.

        Show
        cgrobmeier Christian Grobmeier added a comment - As discussed here: http://mail-archives.apache.org/mod_mbox/commons-dev/200810.mbox/%3C07071EEC-C9EB-40B3-B0B1-5D3306BE4013@apache.org%3E use of reflection might be a bit overkill. The patch from 2009-01-06 10:25 PM eliminates the reflection stuff from the codebase and makes everything a bit cleaner and easier to use.
        Hide
        cgrobmeier Christian Grobmeier added a comment -

        New patch which eliminates reflection usage in the compress and archiver-factories

        Show
        cgrobmeier Christian Grobmeier added a comment - New patch which eliminates reflection usage in the compress and archiver-factories
        Hide
        tjpinet Tim Pinet added a comment -

        Attached patch throws exceptions properly. Also, cleaned up some strings in the class.

        Show
        tjpinet Tim Pinet added a comment - Attached patch throws exceptions properly. Also, cleaned up some strings in the class.

          People

          • Assignee:
            tcurdt Torsten Curdt
            Reporter:
            tjpinet Tim Pinet
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 5h
              5h
              Remaining:
              Remaining Estimate - 5h
              5h
              Logged:
              Time Spent - Not Specified
              Not Specified

                Development