<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>AttachmentPartImpl (Apache Axis2)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="AttachmentPartImpl (Apache Axis2)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AttachmentPartImpl.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../org/apache/axis2/saaj/CommentImpl.html" title="class in org.apache.axis2.saaj"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/axis2/saaj/AttachmentPartImpl.html" target="_top">Frames</a></li>
<li><a href="AttachmentPartImpl.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.axis2.saaj</div>
<h2 title="Class AttachmentPartImpl" class="title">Class AttachmentPartImpl</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">javax.xml.soap.AttachmentPart</a></li>
<li>
<ul class="inheritance">
<li>org.apache.axis2.saaj.AttachmentPartImpl</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">AttachmentPartImpl</span>
extends <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#AttachmentPartImpl()">AttachmentPartImpl</a></strong>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#addMimeHeader(java.lang.String, java.lang.String)">addMimeHeader</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
             <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
<div class="block">Adds a MIME header with the specified name and value to this <CODE>AttachmentPart</CODE>
 object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#clearContent()">clearContent</a></strong>()</code>
<div class="block">Clears out the content of this <CODE> AttachmentPart</CODE> object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#detachAttachmentFile()">detachAttachmentFile</a></strong>()</code>
<div class="block">Detach the attachment file from this class, so it is not cleaned up.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getAllMimeHeaders()">getAllMimeHeaders</a></strong>()</code>
<div class="block">Retrieves all the headers for this <CODE> AttachmentPart</CODE> object as an iterator over
 the <CODE> MimeHeader</CODE> objects.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getAttachmentFile()">getAttachmentFile</a></strong>()</code>
<div class="block">Get the filename of this attachment.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getBase64Content()">getBase64Content</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getContent()">getContent</a></strong>()</code>
<div class="block">Gets the content of this <code>AttachmentPart</code> object as a Java object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javaee/5/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getDataHandler()">getDataHandler</a></strong>()</code>
<div class="block">Gets the <CODE>DataHandler</CODE> object for this <CODE> AttachmentPart</CODE> object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getMatchingMimeHeaders(java.lang.String[])">getMatchingMimeHeaders</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;names)</code>
<div class="block">Retrieves all <CODE>MimeHeader</CODE> objects that match a name in the given array.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getMimeHeader(java.lang.String)">getMimeHeader</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Gets all the values of the header identified by the given <CODE>String</CODE>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getNonMatchingMimeHeaders(java.lang.String[])">getNonMatchingMimeHeaders</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;names)</code>
<div class="block">Retrieves all <CODE>MimeHeader</CODE> objects whose name does not match a name in the given
 array.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://ws.apache.org/axiom/apidocs/org/apache/axiom/om/OMText.html?is-external=true" title="class or interface in org.apache.axiom.om">OMText</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getOMText()">getOMText</a></strong>()</code>
<div class="block">Retrieve the OMText</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getRawContent()">getRawContent</a></strong>()</code>
<div class="block">Gets the content of this AttachmentPart object as an InputStream as if a call had been made
 to getContent and no DataContentHandler had been registered for the content-type of this
 AttachmentPart.Note that reading from the returned InputStream would result in consuming the
 data in the stream.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getRawContentBytes()">getRawContentBytes</a></strong>()</code>
<div class="block">Gets the content of this AttachmentPart object as a byte[] array as if a call had been made
 to getContent and no DataContentHandler had been registered for the content-type of this
 AttachmentPart.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getSize()">getSize</a></strong>()</code>
<div class="block">Returns the number of bytes in this <CODE> AttachmentPart</CODE> object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#isAttachmentReferenced()">isAttachmentReferenced</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#matches(javax.xml.soap.MimeHeaders)">matches</a></strong>(<a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/MimeHeaders.html?is-external=true" title="class or interface in javax.xml.soap">MimeHeaders</a>&nbsp;headers)</code>
<div class="block">Check whether at least one of the headers of this object matches a provided header</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#removeAllMimeHeaders()">removeAllMimeHeaders</a></strong>()</code>
<div class="block">Removes all the MIME header entries.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#removeMimeHeader(java.lang.String)">removeMimeHeader</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;header)</code>
<div class="block">Removes all MIME headers that match the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setAttachmentFile(java.lang.String)">setAttachmentFile</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</code>
<div class="block">Set the filename of this attachment part.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setAttachmentReferenced(boolean)">setAttachmentReferenced</a></strong>(boolean&nbsp;attachmentReferenced)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setBase64Content(java.io.InputStream, java.lang.String)">setBase64Content</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;content,
                <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)</code>
<div class="block">Sets the content of this attachment part from the Base64 source InputStream and sets the
 value of the Content-Type header to the value contained in contentType, This method would
 first decode the base64 input and write the resulting raw bytes to the attachment.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setContent(java.lang.Object, java.lang.String)">setContent</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object,
          <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)</code>
<div class="block">Sets the content of this attachment part to that of the given <CODE>Object</CODE> and sets
 the value of the <CODE> Content-Type</CODE> header to the given type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setDataHandler(javax.activation.DataHandler)">setDataHandler</a></strong>(<a href="http://docs.oracle.com/javaee/5/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</a>&nbsp;datahandler)</code>
<div class="block">Sets the given <CODE>DataHandler</CODE> object as the data handler for this
 <CODE>AttachmentPart</CODE> object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setMimeHeader(java.lang.String, java.lang.String)">setMimeHeader</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
             <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
<div class="block">Changes the first header entry that matches the given name to the given value, adding a new
 header if no existing header matches.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setRawContent(java.io.InputStream, java.lang.String)">setRawContent</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;content,
             <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)</code>
<div class="block">Sets the content of this attachment part to that contained by the InputStream content and
 sets the value of the Content-Type header to the value contained in contentType.A subsequent
 call to getSize() may not be an exact measure of the content size.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setRawContentBytes(byte[], int, int, java.lang.String)">setRawContentBytes</a></strong>(byte[]&nbsp;content,
                  int&nbsp;offset,
                  int&nbsp;len,
                  <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)</code>
<div class="block">Sets the content of this attachment part to that contained by the byte[] array content and
 sets the value of the Content-Type header to the value contained in contentType.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_javax.xml.soap.AttachmentPart">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;javax.xml.soap.<a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></h3>
<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getContentId()" title="class or interface in javax.xml.soap">getContentId</a>, <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getContentLocation()" title="class or interface in javax.xml.soap">getContentLocation</a>, <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getContentType()" title="class or interface in javax.xml.soap">getContentType</a>, <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setContentId(java.lang.String)" title="class or interface in javax.xml.soap">setContentId</a>, <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setContentLocation(java.lang.String)" title="class or interface in javax.xml.soap">setContentLocation</a>, <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setContentType(java.lang.String)" title="class or interface in javax.xml.soap">setContentType</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="AttachmentPartImpl()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AttachmentPartImpl</h4>
<pre>public&nbsp;AttachmentPartImpl()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="matches(javax.xml.soap.MimeHeaders)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>matches</h4>
<pre>public&nbsp;boolean&nbsp;matches(<a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/MimeHeaders.html?is-external=true" title="class or interface in javax.xml.soap">MimeHeaders</a>&nbsp;headers)</pre>
<div class="block">Check whether at least one of the headers of this object matches a provided header</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>headers</code> - </dd>
<dt><span class="strong">Returns:</span></dt><dd><b>true</b> if at least one header of this AttachmentPart matches a header in the
         provided <code>headers</code> parameter, <b>false</b> if none of the headers of this
         AttachmentPart matches at least one of the header in the provided
         <code>headers</code> parameter</dd></dl>
</li>
</ul>
<a name="isAttachmentReferenced()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAttachmentReferenced</h4>
<pre>public&nbsp;boolean&nbsp;isAttachmentReferenced()</pre>
</li>
</ul>
<a name="setAttachmentReferenced(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttachmentReferenced</h4>
<pre>public&nbsp;void&nbsp;setAttachmentReferenced(boolean&nbsp;attachmentReferenced)</pre>
</li>
</ul>
<a name="getSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSize</h4>
<pre>public&nbsp;int&nbsp;getSize()
            throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Returns the number of bytes in this <CODE> AttachmentPart</CODE> object.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getSize()" title="class or interface in javax.xml.soap">getSize</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the size of this <CODE>AttachmentPart</CODE> object in bytes or -1 if the size cannot
         be determined</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - if the content of this attachment is corrupted of if
                                      there was an exception while trying to determine the
                                      size.</dd></dl>
</li>
</ul>
<a name="clearContent()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearContent</h4>
<pre>public&nbsp;void&nbsp;clearContent()</pre>
<div class="block">Clears out the content of this <CODE> AttachmentPart</CODE> object. The MIME header portion
 is left untouched.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#clearContent()" title="class or interface in javax.xml.soap">clearContent</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
</dl>
</li>
</ul>
<a name="getContent()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContent</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;getContent()
                  throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Gets the content of this <code>AttachmentPart</code> object as a Java object. The type of the
 returned Java object depends on <ol> <li> the <code>DataContentHandler</code> object that is
 used to interpret the bytes </li> <li> the <code>Content-Type</code> given in the header</li>
 </ol>
 <p/>
 For the MIME content types "text/plain", "text/html" and "text/xml", the
 <code>DataContentHandler</code> object does the conversions to and from the Java types
 corresponding to the MIME types. For other MIME types,the <code>DataContentHandler</code>
 object can return an <code>InputStream</code> object that contains the content data as raw
 bytes.
 <p/>
 A JAXM-compliant implementation must, as a minimum, return a <code>java.lang.String</code>
 object corresponding to any content stream with a <code>Content-Type</code> value of
 <code>text/plain</code>, a <code>javax.xml.transform.StreamSource</code> object corresponding
 to a content stream with a <code>Content-Type</code> value of <code>text/xml</code>, a
 <code>java.awt.Image</code> object corresponding to a content stream with a
 <code>Content-Type</code> value of <code>image/gif</code> or <code>image/jpeg</code>.  For
 those content types that an installed <code>DataContentHandler</code> object does not
 understand, the <code>DataContentHandler</code> object is required to return a
 <code>java.io.InputStream</code> object with the raw bytes.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getContent()" title="class or interface in javax.xml.soap">getContent</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>a Java object with the content of this <CODE> AttachmentPart</CODE> object</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - if there is no content set into this <CODE>AttachmentPart</CODE>
                                      object or if there was a data transformation error</dd></dl>
</li>
</ul>
<a name="setContent(java.lang.Object, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setContent</h4>
<pre>public&nbsp;void&nbsp;setContent(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object,
              <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)</pre>
<div class="block">Sets the content of this attachment part to that of the given <CODE>Object</CODE> and sets
 the value of the <CODE> Content-Type</CODE> header to the given type. The type of the
 <CODE>Object</CODE> should correspond to the value given for the <CODE>Content-Type</CODE>.
 This depends on the particular set of <CODE>DataContentHandler</CODE> objects in use.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setContent(java.lang.Object, java.lang.String)" title="class or interface in javax.xml.soap">setContent</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - the Java object that makes up the content for this attachment part</dd><dd><code>contentType</code> - the MIME string that specifies the type of the content</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the contentType does not match the type of the content
                                  object, or if there was no <CODE> DataContentHandler</CODE>
                                  object for this content object</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#getContent()"><code>getContent()</code></a></dd></dl>
</li>
</ul>
<a name="getDataHandler()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDataHandler</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javaee/5/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</a>&nbsp;getDataHandler()
                           throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Gets the <CODE>DataHandler</CODE> object for this <CODE> AttachmentPart</CODE> object.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getDataHandler()" title="class or interface in javax.xml.soap">getDataHandler</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the <CODE>DataHandler</CODE> object associated with this <CODE>AttachmentPart</CODE>
         object</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - if there is no data in this <CODE>AttachmentPart</CODE>
                                      object</dd></dl>
</li>
</ul>
<a name="setDataHandler(javax.activation.DataHandler)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDataHandler</h4>
<pre>public&nbsp;void&nbsp;setDataHandler(<a href="http://docs.oracle.com/javaee/5/api/javax/activation/DataHandler.html?is-external=true" title="class or interface in javax.activation">DataHandler</a>&nbsp;datahandler)</pre>
<div class="block">Sets the given <CODE>DataHandler</CODE> object as the data handler for this
 <CODE>AttachmentPart</CODE> object. Typically, on an incoming message, the data handler is
 automatically set. When a message is being created and populated with content, the
 <CODE>setDataHandler</CODE> method can be used to get data from various data sources into the
 message.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setDataHandler(javax.activation.DataHandler)" title="class or interface in javax.xml.soap">setDataHandler</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>datahandler</code> - <CODE>DataHandler</CODE> object to be set</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if there was a problem with the specified <CODE>
                                  DataHandler</CODE> object</dd></dl>
</li>
</ul>
<a name="removeMimeHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMimeHeader</h4>
<pre>public&nbsp;void&nbsp;removeMimeHeader(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;header)</pre>
<div class="block">Removes all MIME headers that match the given name.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#removeMimeHeader(java.lang.String)" title="class or interface in javax.xml.soap">removeMimeHeader</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>header</code> - - the string name of the MIME header/s to be removed</dd></dl>
</li>
</ul>
<a name="removeAllMimeHeaders()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAllMimeHeaders</h4>
<pre>public&nbsp;void&nbsp;removeAllMimeHeaders()</pre>
<div class="block">Removes all the MIME header entries.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#removeAllMimeHeaders()" title="class or interface in javax.xml.soap">removeAllMimeHeaders</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
</dl>
</li>
</ul>
<a name="getMimeHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMimeHeader</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;getMimeHeader(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">Gets all the values of the header identified by the given <CODE>String</CODE>.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getMimeHeader(java.lang.String)" title="class or interface in javax.xml.soap">getMimeHeader</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the header; example: "Content-Type"</dd>
<dt><span class="strong">Returns:</span></dt><dd>a <CODE>String</CODE> array giving the value for the specified header</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/axis2/saaj/AttachmentPartImpl.html#setMimeHeader(java.lang.String, java.lang.String)"><code>setMimeHeader(java.lang.String, java.lang.String)</code></a></dd></dl>
</li>
</ul>
<a name="setMimeHeader(java.lang.String, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMimeHeader</h4>
<pre>public&nbsp;void&nbsp;setMimeHeader(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
                 <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</pre>
<div class="block">Changes the first header entry that matches the given name to the given value, adding a new
 header if no existing header matches. This method also removes all matching headers but the
 first.
 <p/>
 <P>Note that RFC822 headers can only contain US-ASCII characters.</P></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setMimeHeader(java.lang.String, java.lang.String)" title="class or interface in javax.xml.soap">setMimeHeader</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - a <CODE>String</CODE> giving the name of the header for which to search</dd><dd><code>value</code> - a <CODE>String</CODE> giving the value to be set for the header whose name
              matches the given name</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if there was a problem with the specified mime header name
                                  or value</dd></dl>
</li>
</ul>
<a name="addMimeHeader(java.lang.String, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMimeHeader</h4>
<pre>public&nbsp;void&nbsp;addMimeHeader(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
                 <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</pre>
<div class="block">Adds a MIME header with the specified name and value to this <CODE>AttachmentPart</CODE>
 object.
 <p/>
 <P>Note that RFC822 headers can contain only US-ASCII characters.</P></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#addMimeHeader(java.lang.String, java.lang.String)" title="class or interface in javax.xml.soap">addMimeHeader</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - a <CODE>String</CODE> giving the name of the header to be added</dd><dd><code>value</code> - a <CODE>String</CODE> giving the value of the header to be added</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if there was a problem with the specified mime header name
                                  or value</dd></dl>
</li>
</ul>
<a name="getAllMimeHeaders()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllMimeHeaders</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&nbsp;getAllMimeHeaders()</pre>
<div class="block">Retrieves all the headers for this <CODE> AttachmentPart</CODE> object as an iterator over
 the <CODE> MimeHeader</CODE> objects.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getAllMimeHeaders()" title="class or interface in javax.xml.soap">getAllMimeHeaders</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>an <CODE>Iterator</CODE> object with all of the Mime headers for this
         <CODE>AttachmentPart</CODE> object</dd></dl>
</li>
</ul>
<a name="getMatchingMimeHeaders(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMatchingMimeHeaders</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&nbsp;getMatchingMimeHeaders(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;names)</pre>
<div class="block">Retrieves all <CODE>MimeHeader</CODE> objects that match a name in the given array.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getMatchingMimeHeaders(java.lang.String[])" title="class or interface in javax.xml.soap">getMatchingMimeHeaders</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>names</code> - a <CODE>String</CODE> array with the name(s) of the MIME headers to be returned</dd>
<dt><span class="strong">Returns:</span></dt><dd>all of the MIME headers that match one of the names in the given array as an
         <CODE>Iterator</CODE> object</dd></dl>
</li>
</ul>
<a name="getNonMatchingMimeHeaders(java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNonMatchingMimeHeaders</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&nbsp;getNonMatchingMimeHeaders(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;names)</pre>
<div class="block">Retrieves all <CODE>MimeHeader</CODE> objects whose name does not match a name in the given
 array.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getNonMatchingMimeHeaders(java.lang.String[])" title="class or interface in javax.xml.soap">getNonMatchingMimeHeaders</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>names</code> - a <CODE>String</CODE> array with the name(s) of the MIME headers not to be
              returned</dd>
<dt><span class="strong">Returns:</span></dt><dd>all of the MIME headers in this <CODE> AttachmentPart</CODE> object except those that
         match one of the names in the given array. The nonmatching MIME headers are returned
         as an <CODE>Iterator</CODE> object.</dd></dl>
</li>
</ul>
<a name="getBase64Content()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBase64Content</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;getBase64Content()
                             throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getBase64Content()" title="class or interface in javax.xml.soap">getBase64Content</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code></dd></dl>
</li>
</ul>
<a name="getRawContent()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRawContent</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;getRawContent()
                          throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Gets the content of this AttachmentPart object as an InputStream as if a call had been made
 to getContent and no DataContentHandler had been registered for the content-type of this
 AttachmentPart.Note that reading from the returned InputStream would result in consuming the
 data in the stream. It is the responsibility of the caller to reset the InputStream
 appropriately before calling a Subsequent API. If a copy of the raw attachment content is
 required then the getRawContentBytes() API should be used instead.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getRawContent()" title="class or interface in javax.xml.soap">getRawContent</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>an InputStream from which the raw data contained by the AttachmentPart can be
         accessed.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - - if there is no content set into this AttachmentPart object or if
                       there was a data transformation error.</dd><dt><span class="strong">Since:</span></dt>
  <dd>SAAJ 1.3</dd></dl>
</li>
</ul>
<a name="getRawContentBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRawContentBytes</h4>
<pre>public&nbsp;byte[]&nbsp;getRawContentBytes()
                          throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Gets the content of this AttachmentPart object as a byte[] array as if a call had been made
 to getContent and no DataContentHandler had been registered for the content-type of this
 AttachmentPart.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#getRawContentBytes()" title="class or interface in javax.xml.soap">getRawContentBytes</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>a byte[] array containing the raw data of the AttachmentPart.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - - if there is no content set into this AttachmentPart object or if
                       there was a data transformation error.</dd><dt><span class="strong">Since:</span></dt>
  <dd>SAAJ 1.3</dd></dl>
</li>
</ul>
<a name="setBase64Content(java.io.InputStream, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBase64Content</h4>
<pre>public&nbsp;void&nbsp;setBase64Content(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;content,
                    <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)
                      throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Sets the content of this attachment part from the Base64 source InputStream and sets the
 value of the Content-Type header to the value contained in contentType, This method would
 first decode the base64 input and write the resulting raw bytes to the attachment. A
 subsequent call to getSize() may not be an exact measure of the content size.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setBase64Content(java.io.InputStream, java.lang.String)" title="class or interface in javax.xml.soap">setBase64Content</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>content</code> - - the base64 encoded data to add to the attachment part contentType - the
                value to set into the Content-Type header</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - - if there is an error in setting the content java.lang.NullPointerException
                       - if content is null</dd></dl>
</li>
</ul>
<a name="setRawContent(java.io.InputStream, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRawContent</h4>
<pre>public&nbsp;void&nbsp;setRawContent(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;content,
                 <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)
                   throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Sets the content of this attachment part to that contained by the InputStream content and
 sets the value of the Content-Type header to the value contained in contentType.A subsequent
 call to getSize() may not be an exact measure of the content size.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setRawContent(java.io.InputStream, java.lang.String)" title="class or interface in javax.xml.soap">setRawContent</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>content</code> - - the raw data to add to the attachment part contentType - the value to set
                into the Content-Type header</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - - if there is an error in setting the content java.lang.NullPointerException
                       - if content is null</dd></dl>
</li>
</ul>
<a name="setRawContentBytes(byte[], int, int, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRawContentBytes</h4>
<pre>public&nbsp;void&nbsp;setRawContentBytes(byte[]&nbsp;content,
                      int&nbsp;offset,
                      int&nbsp;len,
                      <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentType)
                        throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Sets the content of this attachment part to that contained by the byte[] array content and
 sets the value of the Content-Type header to the value contained in contentType.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true#setRawContentBytes(byte[], int, int, java.lang.String)" title="class or interface in javax.xml.soap">setRawContentBytes</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/AttachmentPart.html?is-external=true" title="class or interface in javax.xml.soap">AttachmentPart</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>content</code> - - the raw data to add to the attachment part contentType - the value to set
                into the Content-Type header offset - the offset in the byte array of the
                content len - the number of bytes that form the content</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - - if an there is an error in setting the content or content is null</dd><dt><span class="strong">Since:</span></dt>
  <dd>SAAJ 1.3</dd></dl>
</li>
</ul>
<a name="getOMText()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOMText</h4>
<pre>public&nbsp;<a href="http://ws.apache.org/axiom/apidocs/org/apache/axiom/om/OMText.html?is-external=true" title="class or interface in org.apache.axiom.om">OMText</a>&nbsp;getOMText()
                 throws <a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></pre>
<div class="block">Retrieve the OMText</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the OMText</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPException.html?is-external=true" title="class or interface in javax.xml.soap">SOAPException</a></code> - If omText is not available</dd></dl>
</li>
</ul>
<a name="setAttachmentFile(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAttachmentFile</h4>
<pre>protected&nbsp;void&nbsp;setAttachmentFile(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</pre>
<div class="block">Set the filename of this attachment part.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>path</code> - the new file path</dd></dl>
</li>
</ul>
<a name="detachAttachmentFile()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>detachAttachmentFile</h4>
<pre>public&nbsp;void&nbsp;detachAttachmentFile()</pre>
<div class="block">Detach the attachment file from this class, so it is not cleaned up. This has the side-effect
 of making subsequent calls to getAttachmentFile() return <code>null</code>.</div>
</li>
</ul>
<a name="getAttachmentFile()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getAttachmentFile</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getAttachmentFile()</pre>
<div class="block">Get the filename of this attachment.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the filename or null for an uncached file</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AttachmentPartImpl.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../org/apache/axis2/saaj/CommentImpl.html" title="class in org.apache.axis2.saaj"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/axis2/saaj/AttachmentPartImpl.html" target="_top">Frames</a></li>
<li><a href="AttachmentPartImpl.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &copy; <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</small></p>
</body>
</html>