01: /**
02: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
03: * Unpublished - rights reserved under the Copyright Laws of the United States.
04: * Copyright © 2003 Sun Microsystems, Inc. All rights reserved.
05: * Copyright © 2005 BEA Systems, Inc. All rights reserved.
06: *
07: * Use is subject to license terms.
08: *
09: * This distribution may include materials developed by third parties.
10: *
11: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12: *
13: * Module Name : JSIP Specification
14: * File Name : RequireHeader.java
15: * Author : Phelim O'Doherty
16: *
17: * HISTORY
18: * Version Date Author Comments
19: * 1.1 08/10/2002 Phelim O'Doherty
20: *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21: */package javax.sip.header;
22:
23: /**
24:
25: * The Require header field is used by UACs to tell UASs about options that
26:
27: * the UAC expects the UAS to support in order to process the request.
28:
29: * Although an optional header field, the Require MUST NOT be ignored if it
30:
31: * is present.
32:
33: * <p>
34:
35: * The Require header field contains a list of option tags. Each option tag
36:
37: * defines a SIP extension that MUST be understood to process the request.
38:
39: * Frequently, this is used to indicate that a specific set of extension
40:
41: * header fields need to be understood. A UAC compliant to this specification
42:
43: * MUST only include option tags corresponding to standards-track RFCs.
44:
45: * <p>
46:
47: * If a server does not understand the option, it must respond by returning a
48:
49: * BAD_EXTENSION Response and list those options it does not understand in
50:
51: * the UnsupportedHeader.
52:
53: * <p>
54:
55: * Proxy and redirect servers must ignore features that are not understood. If
56:
57: * a particular extension requires that intermediate devices support it, the
58:
59: * extension must be tagged in the ProxyRequireHeader as well.
60:
61: * <p>
62:
63: * For Example:<br>
64:
65: * <code>Require: 100rel</code>
66:
67: *
68:
69: * @see ProxyRequireHeader
70:
71: * @see OptionTag
72: * @author BEA Systems, NIST
73: * @version 1.2
74:
75: */
76:
77: public interface RequireHeader extends OptionTag, Header {
78:
79: /**
80:
81: * Name of RequireHeader
82:
83: */
84:
85: public final static String NAME = "Require";
86:
87: }
|