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