Home | History | Annotate | Download | only in message
      1 package gov.nist.javax.sip.message;
      2 
      3 import java.text.ParseException;
      4 
      5 import javax.sip.header.ContentDispositionHeader;
      6 import javax.sip.header.ContentTypeHeader;
      7 
      8 public class ContentImpl implements Content {
      9 
     10 
     11     /*
     12      * The content type header for this chunk of content.
     13      */
     14 
     15     private Object content;
     16 
     17     private String boundary;
     18 
     19     private ContentTypeHeader contentTypeHeader;
     20 
     21     private ContentDispositionHeader contentDispositionHeader;
     22 
     23 
     24 
     25     public ContentImpl( String content, String boundary ) {
     26         this.content = content;
     27 
     28         this.boundary = boundary;
     29     }
     30 
     31 
     32 
     33     /* (non-Javadoc)
     34      * @see gov.nist.javax.sip.message.ContentExt#setContent(java.lang.String)
     35      */
     36     public void setContent(Object content) {
     37         this.content = content;
     38     }
     39 
     40     /* (non-Javadoc)
     41      * @see gov.nist.javax.sip.message.ContentExt#getContentTypeHeader()
     42      */
     43     public ContentTypeHeader getContentTypeHeader() {
     44         return contentTypeHeader;
     45     }
     46 
     47     /*
     48      * (non-Javadoc)
     49      * @see gov.nist.javax.sip.message.Content#getContent()
     50      */
     51     public Object getContent() {
     52         return this.content;
     53     }
     54 
     55 
     56     /* (non-Javadoc)
     57      * @see gov.nist.javax.sip.message.ContentExt#toString()
     58      */
     59     public String toString() {
     60         // This is not part of a multipart message.
     61         if (boundary == null) {
     62             return content.toString();
     63         } else {
     64            if ( this.contentDispositionHeader != null ) {
     65             return "--" + boundary + "\r\n" + getContentTypeHeader() +
     66                     this.getContentDispositionHeader().toString() + "\r\n"
     67                     + content.toString();
     68            } else {
     69                return "--" + boundary + "\r\n" + getContentTypeHeader() + "\r\n" +  content.toString();
     70            }
     71         }
     72     }
     73 
     74 
     75 
     76     /**
     77      * @param contentDispositionHeader the contentDispositionHeader to set
     78      */
     79     public void setContentDispositionHeader(ContentDispositionHeader contentDispositionHeader) {
     80         this.contentDispositionHeader = contentDispositionHeader;
     81     }
     82 
     83 
     84 
     85     /**
     86      * @return the contentDispositionHeader
     87      */
     88     public ContentDispositionHeader getContentDispositionHeader() {
     89         return contentDispositionHeader;
     90     }
     91 
     92 
     93 
     94     /**
     95      * @param contentTypeHeader the contentTypeHeader to set
     96      */
     97     public void setContentTypeHeader(ContentTypeHeader contentTypeHeader) {
     98         this.contentTypeHeader = contentTypeHeader;
     99     }
    100 
    101 
    102 }
    103