182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanpackage javax.sip.message;
282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.io.Serializable;
482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.text.ParseException;
582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.util.ListIterator;
682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.SipException;
782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.ContentDispositionHeader;
882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.ContentEncodingHeader;
982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.ContentLanguageHeader;
1082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.ContentLengthHeader;
1182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.ContentTypeHeader;
1282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.ExpiresHeader;
1382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.header.Header;
1482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
1582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanpublic interface Message extends Cloneable, Serializable {
1682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void addFirst(Header header) throws SipException, NullPointerException;
1782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void addHeader(Header header);
1882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void addLast(Header header) throws SipException, NullPointerException;
1982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
2082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    Header getHeader(String headerName);
2182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setHeader(Header header);
2282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
2382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void removeFirst(String headerName) throws NullPointerException;
2482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void removeLast(String headerName) throws NullPointerException;
2582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void removeHeader(String headerName);
2682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
2782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ListIterator getHeaderNames();
2882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ListIterator getHeaders(String headerName);
2982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ListIterator getUnrecognizedHeaders();
3082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
3182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    Object getApplicationData();
3282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setApplicationData(Object applicationData);
3382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
3482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ContentLengthHeader getContentLength();
3582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setContentLength(ContentLengthHeader contentLength);
3682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
3782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ContentLanguageHeader getContentLanguage();
3882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setContentLanguage(ContentLanguageHeader contentLanguage);
3982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
4082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ContentEncodingHeader getContentEncoding();
4182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setContentEncoding(ContentEncodingHeader contentEncoding);
4282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
4382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ContentDispositionHeader getContentDisposition();
4482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setContentDisposition(ContentDispositionHeader contentDisposition);
4582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
4682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    Object getContent();
4782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    byte[] getRawContent();
4882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setContent(Object content, ContentTypeHeader contentTypeHeader)
4982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan            throws ParseException;
5082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void removeContent();
5182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
5282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
5382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    ExpiresHeader getExpires();
5482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setExpires(ExpiresHeader expires);
5582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
5682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    String getSIPVersion();
5782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    void setSIPVersion(String version) throws ParseException;
5882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan
5982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    Object clone();
6082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    boolean equals(Object object);
6182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    int hashCode();
6282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan    String toString();
6382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan}
64