Uploaded image for project: 'Axiom'
  1. Axiom
  2. AXIOM-350

Clean up the org.apache.axiom.attachments.Part interface

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

Details

    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.3.0
    • API
    • None

    Description

      Currently, the Part interface is only used internally by Axiom. This can be seen from the current Javadoc [1] (note that Part is used by PartFactory, which is also only used internally [2]). Therefore the Part interface is not really part of the public API and modifying it would only impact code that uses Part and PartFactory independently from the rest of the Axiom API, which is a highly unlikely case.

      In order to solve AXIOM-31 and AXIOM-280, it is proposed to expose the Part instances via the Attachments object. This is also necessary to make the SAAJ implementation in Axis2 complete, because SAAJ defines methods to access the headers of a MIME part, and this is not possible with the current Axiom API.

      Exposing the Part instances via the Attachments object will make the Part interface part of the public API. Before doing this, we should clean up this interface a bit. In particular, we should eliminate its dependency on the JavaMail API (usage of javax.mail.MessagingException by all methods and usage of javax.mail.Header as a return value of getAllHeaders).

      [1] http://ws.apache.org/axiom/apidocs/org/apache/axiom/attachments/class-use/Part.html
      [2] http://ws.apache.org/axiom/apidocs/org/apache/axiom/attachments/impl/class-use/PartFactory.html

      Attachments

        Issue Links

        Activity

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

          People

            veithen Andreas Veithen
            veithen Andreas Veithen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment