001: /**
002: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
003: * Unpublished - rights reserved under the Copyright Laws of the United States.
004: * Copyright © 2003 Sun Microsystems, Inc. All rights reserved.
005: * Copyright © 2005 BEA Systems, Inc. All rights reserved.
006: *
007: * Use is subject to license terms.
008: *
009: * This distribution may include materials developed by third parties.
010: *
011: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
012: *
013: * Module Name : JSIP Specification
014: * File Name : ContentLengthHeader.java
015: * Author : Phelim O'Doherty
016: *
017: * HISTORY
018: * Version Date Author Comments
019: * 1.1 08/10/2002 Phelim O'Doherty
020: *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
021: */package javax.sip.header;
022:
023: import javax.sip.*;
024:
025: /**
026:
027: * The Content-Length header field indicates the size of the message-body, in
028:
029: * decimal number of octets, sent to the recipient. Applications SHOULD use
030:
031: * this field to indicate the size of the message-body to be transferred,
032:
033: * regardless of the media type of the entity. If a stream-based protocol
034:
035: * (such as TCP) is used as transport, the header field MUST be used.
036:
037: * <p>
038:
039: * The size of the message-body does not include the CRLF separating header
040:
041: * fields and body. Any Content-Length greater than or equal to zero is a
042:
043: * valid value. If no body is present in a message, then the Content-Length
044:
045: * header field value MUST be set to zero.
046:
047: *
048:
049: * @see ContentDispositionHeader
050:
051: * @see ContentTypeHeader
052:
053: * @see ContentEncodingHeader
054:
055: * @see ContentLanguageHeader
056:
057: *
058: * @author BEA Systems, NIST
059: * @version 1.2
060:
061: */
062:
063: public interface ContentLengthHeader extends Header {
064:
065: /**
066:
067: * Set content-length of ContentLengthHeader. The content-length must be
068:
069: * greater than or equal to zero.
070:
071: *
072:
073: * @param contentLength the content-length of the message body
074:
075: * as a decimal number of octets.
076:
077: * @throws InvalidArgumentException if contentLength is less than zero.
078:
079: */
080:
081: public void setContentLength(int contentLength)
082: throws InvalidArgumentException;
083:
084: /**
085:
086: * Gets content-length of the message body.
087:
088: *
089:
090: * @return content-length of the message body as a decimal number of octets.
091:
092: */
093:
094: public int getContentLength();
095:
096: /**
097:
098: * Name of ContentLengthHeader
099:
100: */
101:
102: public final static String NAME = "Content-Length";
103:
104: }
|