Rick,

As per our IRC chat this morning, made some changes. Can you please review this? Can 
it get into
beta3?

Thanks,
dims

--- [EMAIL PROTECTED] wrote:
> dims        2002/07/01 13:01:39
> 
>   Modified:    java/src/org/apache/axis/attachments AttachmentPart.java
>                         AttachmentsImpl.java MimeUtils.java
>                         MultiPartDimeInputStream.java
>                         MultiPartRelatedInputStream.java
>                java/src/org/apache/axis/encoding/ser
>                         JAFDataHandlerSerializer.java
>                java/test/md5attach MD5AttachTest.java
>                java/src/org/apache/axis SOAPPart.java
>                java/test/saaj TestAttachment.java
>   Log:
>   Fixes for SAAJ compliance.
>   
>   Revision  Changes    Path
>   1.18      +5 -24     
>xml-axis/java/src/org/apache/axis/attachments/AttachmentPart.java
>   
>   Index: AttachmentPart.java
>   ===================================================================
>   RCS file: 
>/home/cvs/xml-axis/java/src/org/apache/axis/attachments/AttachmentPart.java,v
>   retrieving revision 1.17
>   retrieving revision 1.18
>   diff -u -r1.17 -r1.18
>   --- AttachmentPart.java     1 Jul 2002 17:40:29 -0000       1.17
>   +++ AttachmentPart.java     1 Jul 2002 20:01:39 -0000       1.18
>   @@ -96,7 +96,6 @@
>         * Constructor AttachmentPart
>         */
>        public AttachmentPart() {
>   -        addMimeHeader(HTTPConstants.HEADER_CONTENT_ID, 
>SOAPUtils.getNewContentIdValue());
>        }
>    
>        /**
>   @@ -105,11 +104,9 @@
>         * @param dh
>         */
>        public AttachmentPart(javax.activation.DataHandler dh) {
>   -        addMimeHeader(HTTPConstants.HEADER_CONTENT_ID,
>   -                SOAPUtils.getNewContentIdValue());
>            datahandler = dh;
>            if(dh != null)
>   -            addMimeHeader(HTTPConstants.HEADER_CONTENT_TYPE, dh.getContentType());
>   +            setMimeHeader(HTTPConstants.HEADER_CONTENT_TYPE, dh.getContentType());
>        }
>    
>        /**
>   @@ -137,7 +134,7 @@
>         * @param value
>         */
>        public void addMimeHeader(String header, String value) {
>   -        mimeHeaders.setHeader(header, value);
>   +        mimeHeaders.addHeader(header, value);
>        }
>    
>        /**
>   @@ -191,7 +188,7 @@
>         * @param loc
>         */
>        public void setContentLocation(String loc) {
>   -        addMimeHeader(HTTPConstants.HEADER_CONTENT_LOCATION, loc);
>   +        setMimeHeader(HTTPConstants.HEADER_CONTENT_LOCATION, loc);
>        }
>    
>        /**
>   @@ -201,10 +198,7 @@
>         *     @returns void
>         */
>        public void setContentId(String newCid) {
>   -        if (newCid!=null && !newCid.toLowerCase().startsWith("cid:";)) {
>   -            newCid = "cid:"; + newCid;
>   -        }
>   -        addMimeHeader(HTTPConstants.HEADER_CONTENT_ID, newCid);
>   +        setMimeHeader(HTTPConstants.HEADER_CONTENT_ID, newCid);
>        }
>    
>        /**
>   @@ -213,20 +207,7 @@
>         * @return
>         */
>        public String getContentId() {
>   -        String ret = getFirstMimeHeader(HTTPConstants.HEADER_CONTENT_ID);
>   -        // Do not let the contentID ever be empty.
>   -        if (ret == null) {
>   -            ret = SOAPUtils.getNewContentIdValue();
>   -            addMimeHeader(HTTPConstants.HEADER_CONTENT_ID, ret);
>   -        }
>   -
>   -        ret = ret.trim();
>   -        if (ret.length() == 0) {
>   -            ret = SOAPUtils.getNewContentIdValue();
>   -            addMimeHeader(HTTPConstants.HEADER_CONTENT_ID, ret);
>   -        }
>   -
>   -        return ret;
>   +        return getFirstMimeHeader(HTTPConstants.HEADER_CONTENT_ID);
>        }
>    
>        /**
>   
>   
>   
>   1.22      +11 -11    
>xml-axis/java/src/org/apache/axis/attachments/AttachmentsImpl.java
>   
>   Index: AttachmentsImpl.java
>   ===================================================================
>   RCS file: 
>/home/cvs/xml-axis/java/src/org/apache/axis/attachments/AttachmentsImpl.java,v
>   retrieving revision 1.21
>   retrieving revision 1.22
>   diff -u -r1.21 -r1.22
>   --- AttachmentsImpl.java    1 Jul 2002 17:40:29 -0000       1.21
>   +++ AttachmentsImpl.java    1 Jul 2002 20:01:39 -0000       1.22
>   @@ -223,7 +223,8 @@
>            Part removedPart = getAttachmentByReference(reference);
>    
>            if (removedPart != null) {
>   -            attachments.remove(removedPart.getContentId());
>   +            if(removedPart.getContentId()!=null)
>   +                attachments.remove(removedPart.getContentId());
>                attachments.remove(removedPart.getContentLocation());
>                orderedAttachments.remove(removedPart);
>            }
>   @@ -250,7 +251,9 @@
>    
>            mergeinAttachments();
>    
>   -        Part oldPart = (Part) attachments.put(newPart.getContentId(), newPart);
>   +        Part oldPart = null;
>   +        if(newPart.getContentId()!=null)
>   +            oldPart = (Part) attachments.put(newPart.getContentId(), newPart);
>    
>            if (oldPart != null) {
>                orderedAttachments.remove(oldPart);
>   @@ -475,6 +478,8 @@
>                    AttachmentPart part= (AttachmentPart)i.next();
>                        DataHandler dh= AttachmentUtils.
>                          getActivationDataHandler(part);
>   +                    if(part.getContentId() == null)
>   +                       
> part.setContentId(org.apache.axis.utils.SOAPUtils.getNewContentIdValue());
>                        dimemultipart.addBodyPart(new 
>                          DimeBodyPart(dh,part.getContentId()));
>                  }
>   @@ -586,15 +591,10 @@
>                log.warn(JavaUtils.getMessage("exception00"));
>            }
>    
>   -        java.util.Iterator iterator = attachments.values().iterator();
>   -        while(iterator.hasNext()){
>   -            Part removedPart = (Part) iterator.next();
>   -            if (removedPart != null) {
>   -                attachments.remove(removedPart.getContentId());
>   -                attachments.remove(removedPart.getContentLocation());
>   -                orderedAttachments.remove(removedPart);
>   -            }
>   -        }
>   +        multipart = null;
>   +        dimemultipart = null;
>   +        attachments.clear();
>   +        orderedAttachments.clear();
>        }
>    
>        /**
>   
>   
>   
>   1.19      +4 -48     xml-axis/java/src/org/apache/axis/attachments/MimeUtils.java
>   
>   Index: MimeUtils.java
>   ===================================================================
>   RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/attachments/MimeUtils.java,v
>   retrieving revision 1.18
>   retrieving revision 1.19
>   diff -u -r1.18 -r1.19
>   --- MimeUtils.java  1 Jul 2002 17:40:29 -0000       1.18
>   +++ MimeUtils.java  1 Jul 2002 20:01:39 -0000       1.19
>   @@ -267,12 +267,7 @@
>            javax.mail.internet.MimeMultipart multipart = null;
>    
>            try {
>   -            String rootCID = getNewContentIdValue();
>   -
>   -            if (rootCID.startsWith("cid:";)) {
>   -                rootCID = rootCID.substring(4);
>   -            }
>   -
>   +            String rootCID = 
>org.apache.axis.utils.SOAPUtils.getNewContentIdValue();
>                multipart = new javax.mail.internet.MimeMultipart(
>                        "related; type=\"text/xml\"; start=\"<" + rootCID + ">\"");
>    
>   @@ -293,11 +288,11 @@
>                    javax.activation.DataHandler dh =
>                            
>org.apache.axis.attachments.AttachmentUtils.getActivationDataHandler(
>                                    part);
>   +                if(part.getContentId()==null){
>   +                   
> part.setContentId(org.apache.axis.utils.SOAPUtils.getNewContentIdValue());
>   +                }
>                    String contentID = part.getContentId();
>    
>   -                if (contentID.startsWith("cid:";)) {
>   -                    contentID = contentID.substring(4);
> 
=== message truncated ===


=====
Davanum Srinivas - http://xml.apache.org/~dims/

__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

Reply via email to