1 /* 2 * Conditions Of Use 3 * 4 * This software was developed by employees of the National Institute of 5 * Standards and Technology (NIST), an agency of the Federal Government. 6 * Pursuant to title 15 Untied States Code Section 105, works of NIST 7 * employees are not subject to copyright protection in the United States 8 * and are considered to be in the public domain. As a result, a formal 9 * license is not needed to use the software. 10 * 11 * This software is provided by NIST as a service and is expressly 12 * provided "AS IS." NIST MAKES NO WARRANTY OF ANY KIND, EXPRESS, IMPLIED 13 * OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTY OF 14 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT 15 * AND DATA ACCURACY. NIST does not warrant or make any representations 16 * regarding the use of the software or the results thereof, including but 17 * not limited to the correctness, accuracy, reliability or usefulness of 18 * the software. 19 * 20 * Permission to use this software is contingent upon your acceptance 21 * of the terms of this agreement 22 * 23 * . 24 * 25 */ 26 package gov.nist.javax.sip.parser; 27 28 import gov.nist.core.*; 29 30 /** 31 * @version 1.2 $Revision: 1.13 $ $Date: 2010/01/12 00:05:25 $ 32 */ 33 public interface TokenTypes { 34 35 public static final int START = LexerCore.START; 36 // Everything under this is reserved 37 public static final int END = LexerCore.END; 38 // End markder. 39 40 public static final int SIP = START + 3; 41 public static final int REGISTER = START + 4; 42 public static final int INVITE = START + 5; 43 public static final int ACK = START + 6; 44 public static final int BYE = START + 7; 45 public static final int OPTIONS = START + 8; 46 public static final int CANCEL = START + 9; 47 public static final int ERROR_INFO = START + 10; 48 public static final int IN_REPLY_TO = START + 11; 49 public static final int MIME_VERSION = START + 12; 50 public static final int ALERT_INFO = START + 13; 51 public static final int FROM = START + 14; 52 public static final int TO = START + 15; 53 public static final int VIA = START + 16; 54 public static final int USER_AGENT = START + 17; 55 public static final int SERVER = START + 18; 56 public static final int ACCEPT_ENCODING = START + 19; 57 public static final int ACCEPT = START + 20; 58 public static final int ALLOW = START + 21; 59 public static final int ROUTE = START + 22; 60 public static final int AUTHORIZATION = START + 23; 61 public static final int PROXY_AUTHORIZATION = START + 24; 62 public static final int RETRY_AFTER = START + 25; 63 public static final int PROXY_REQUIRE = START + 26; 64 public static final int CONTENT_LANGUAGE = START + 27; 65 public static final int UNSUPPORTED = START + 28; 66 public static final int SUPPORTED = START + 20; 67 public static final int WARNING = START + 30; 68 public static final int MAX_FORWARDS = START + 31; 69 public static final int DATE = START + 32; 70 public static final int PRIORITY = START + 33; 71 public static final int PROXY_AUTHENTICATE = START + 34; 72 public static final int CONTENT_ENCODING = START + 35; 73 public static final int CONTENT_LENGTH = START + 36; 74 public static final int SUBJECT = START + 37; 75 public static final int CONTENT_TYPE = START + 38; 76 public static final int CONTACT = START + 39; 77 public static final int CALL_ID = START + 40; 78 public static final int REQUIRE = START + 41; 79 public static final int EXPIRES = START + 42; 80 public static final int ENCRYPTION = START + 43; 81 public static final int RECORD_ROUTE = START + 44; 82 public static final int ORGANIZATION = START + 45; 83 public static final int CSEQ = START + 46; 84 public static final int ACCEPT_LANGUAGE = START + 47; 85 public static final int WWW_AUTHENTICATE = START + 48; 86 public static final int RESPONSE_KEY = START + 49; 87 public static final int HIDE = START + 50; 88 public static final int CALL_INFO = START + 51; 89 public static final int CONTENT_DISPOSITION = START + 52; 90 public static final int SUBSCRIBE = START + 53; 91 public static final int NOTIFY = START + 54; 92 public static final int TIMESTAMP = START + 55; 93 public static final int SUBSCRIPTION_STATE = START + 56; 94 public static final int TEL = START + 57; 95 public static final int REPLY_TO = START + 58; 96 public static final int REASON = START + 59; 97 public static final int RSEQ = START + 60; 98 public static final int RACK = START + 61; 99 public static final int MIN_EXPIRES = START + 62; 100 public static final int EVENT = START + 63; 101 public static final int AUTHENTICATION_INFO = START + 64; 102 public static final int ALLOW_EVENTS = START + 65; 103 public static final int REFER_TO = START + 66; 104 105 // JvB: added to support RFC3903 106 public static final int PUBLISH = START + 67; 107 public static final int SIP_ETAG = START + 68; 108 public static final int SIP_IF_MATCH = START + 69; 109 110 111 112 113 public static final int MESSAGE = START + 70; 114 115 // IMS Headers 116 public static final int PATH = START + 71; 117 public static final int SERVICE_ROUTE = START + 72; 118 public static final int P_ASSERTED_IDENTITY = START + 73; 119 public static final int P_PREFERRED_IDENTITY = START + 74; 120 public static final int P_VISITED_NETWORK_ID = START + 75; 121 public static final int P_CHARGING_FUNCTION_ADDRESSES = START + 76; 122 public static final int P_VECTOR_CHARGING = START + 77; 123 124 125 126 // issued by Miguel Freitas - IMS headers 127 public static final int PRIVACY = START + 78; 128 public static final int P_ACCESS_NETWORK_INFO = START + 79; 129 public static final int P_CALLED_PARTY_ID = START + 80; 130 public static final int P_ASSOCIATED_URI = START + 81; 131 public static final int P_MEDIA_AUTHORIZATION = START + 82; 132 public static final int P_MEDIA_AUTHORIZATION_TOKEN = START + 83; 133 134 135 // pmusgrave - additions 136 public static final int REFERREDBY_TO = START + 84; 137 138 // pmusgrave RFC4028 139 public static final int SESSIONEXPIRES_TO = START + 85; 140 public static final int MINSE_TO = START + 86; 141 142 // pmusgrave RFC3891 143 public static final int REPLACES_TO = START + 87; 144 145 // pmusgrave sips bug fix 146 public static final int SIPS = START + 88; 147 148 149 // issued by Miguel Freitas - SIP Security Agreement (RFC3329) 150 public static final int SECURITY_SERVER = START + 89; 151 public static final int SECURITY_CLIENT = START + 90; 152 public static final int SECURITY_VERIFY = START + 91; 153 154 // jean deruelle RFC3911 155 public static final int JOIN_TO = START + 92; 156 157 // aayush.bhatnagar: RFC 4457 support. 158 public static final int P_USER_DATABASE = START + 93; 159 //aayush.bhatnagar: RFC 5002 support. 160 public static final int P_PROFILE_KEY = START + 94; 161 //aayush.bhatnagar: RFC 5502 support. 162 public static final int P_SERVED_USER = START + 95; 163 //aayush.bhatnaagr: P-Preferred-Service Header: 164 public static final int P_PREFERRED_SERVICE = START + 96; 165 //aayush.bhatnagar: P-Asserted-Service Header: 166 public static final int P_ASSERTED_SERVICE = START + 97; 167 //mranga - References header 168 public static final int REFERENCES = START + 98; 169 170 public static final int ALPHA = LexerCore.ALPHA; 171 public static final int DIGIT = LexerCore.DIGIT; 172 public static final int ID = LexerCore.ID; 173 public static final int WHITESPACE = LexerCore.WHITESPACE; 174 public static final int BACKSLASH = LexerCore.BACKSLASH; 175 public static final int QUOTE = LexerCore.QUOTE; 176 public static final int AT = LexerCore.AT; 177 public static final int SP = LexerCore.SP; 178 public static final int HT = LexerCore.HT; 179 public static final int COLON = LexerCore.COLON; 180 public static final int STAR = LexerCore.STAR; 181 public static final int DOLLAR = LexerCore.DOLLAR; 182 public static final int PLUS = LexerCore.PLUS; 183 public static final int POUND = LexerCore.POUND; 184 public static final int MINUS = LexerCore.MINUS; 185 public static final int DOUBLEQUOTE = LexerCore.DOUBLEQUOTE; 186 public static final int TILDE = LexerCore.TILDE; 187 public static final int BACK_QUOTE = LexerCore.BACK_QUOTE; 188 public static final int NULL = LexerCore.NULL; 189 public static final int EQUALS = (int) '='; 190 public static final int SEMICOLON = (int) ';'; 191 public static final int SLASH = (int) '/'; 192 public static final int L_SQUARE_BRACKET = (int) '['; 193 public static final int R_SQUARE_BRACKET = (int) ']'; 194 public static final int R_CURLY = (int) '}'; 195 public static final int L_CURLY = (int) '{'; 196 public static final int HAT = (int) '^'; 197 public static final int BAR = (int) '|'; 198 public static final int DOT = (int) '.'; 199 public static final int EXCLAMATION = (int) '!'; 200 public static final int LPAREN = (int) '('; 201 public static final int RPAREN = (int) ')'; 202 public static final int GREATER_THAN = (int) '>'; 203 public static final int LESS_THAN = (int) '<'; 204 public static final int PERCENT = (int) '%'; 205 public static final int QUESTION = (int) '?'; 206 public static final int AND = (int) '&'; 207 public static final int UNDERSCORE = (int) '_'; 208 209 } 210 /* 211 * $Log: TokenTypes.java,v $ 212 * Revision 1.13 2010/01/12 00:05:25 mranga 213 * Add support for References header draft-worley-references-05 214 * 215 * Revision 1.12 2009/07/17 18:58:06 emcho 216 * Converts indentation tabs to spaces so that we have a uniform indentation policy in the whole project. 217 * 218 * Revision 1.11 2009/05/10 00:29:53 mranga 219 * 220 * Submitted by: Aayush Bhatnagar 221 * Reviewed by: 222 * IMS headers and parsers. 223 * 224 * Revision 1.10 2009/01/22 19:33:47 deruelle_jean 225 * Add support for JOIN (RFC 3911) 226 * Issue number: 186 227 * Obtained from: 228 * Submitted by: Jean Deruelle 229 * Reviewed by: Ranga, The high priest and grand poobah of Jain-SIP 230 * 231 * Revision 1.9 2007/01/08 19:24:22 mranga 232 * Issue number: 233 * Obtained from: 234 * Submitted by: Miguel Freitas 235 * Reviewed by: mranga 236 * 237 * Miguel -- please implement a deep clone method for the IMS headers. 238 * 239 * CVS: ---------------------------------------------------------------------- 240 * CVS: Issue number: 241 * CVS: If this change addresses one or more issues, 242 * CVS: then enter the issue number(s) here. 243 * CVS: Obtained from: 244 * CVS: If this change has been taken from another system, 245 * CVS: then name the system in this line, otherwise delete it. 246 * CVS: Submitted by: 247 * CVS: If this code has been contributed to the project by someone else; i.e., 248 * CVS: they sent us a patch or a set of diffs, then include their name/email 249 * CVS: address here. If this is your work then delete this line. 250 * CVS: Reviewed by: 251 * CVS: If we are doing pre-commit code reviews and someone else has 252 * CVS: reviewed your changes, include their name(s) here. 253 * CVS: If you have not had it reviewed then delete this line. 254 * 255 * Revision 1.8 2006/10/12 11:57:54 pmusgrave 256 * Issue number: 79, 80 257 * Submitted by: pmusgrave (at) newheights.com 258 * Reviewed by: mranga 259 * 260 * Revision 1.7 2006/09/11 18:41:32 mranga 261 * Issue number: 262 * Obtained from: 263 * Submitted by: mranga 264 * Reviewed by: 265 * Tighter integration of IMS headers. 266 * CVS: ---------------------------------------------------------------------- 267 * CVS: Issue number: 268 * CVS: If this change addresses one or more issues, 269 * CVS: then enter the issue number(s) here. 270 * CVS: Obtained from: 271 * CVS: If this change has been taken from another system, 272 * CVS: then name the system in this line, otherwise delete it. 273 * CVS: Submitted by: 274 * CVS: If this code has been contributed to the project by someone else; i.e., 275 * CVS: they sent us a patch or a set of diffs, then include their name/email 276 * CVS: address here. If this is your work then delete this line. 277 * CVS: Reviewed by: 278 * CVS: If we are doing pre-commit code reviews and someone else has 279 * CVS: reviewed your changes, include their name(s) here. 280 * CVS: If you have not had it reviewed then delete this line. 281 * 282 * Revision 1.6 2006/07/13 09:01:55 mranga 283 * Issue number: 284 * Obtained from: 285 * Submitted by: jeroen van bemmel 286 * Reviewed by: mranga 287 * Moved some changes from jain-sip-1.2 to java.net 288 * 289 * CVS: ---------------------------------------------------------------------- 290 * CVS: Issue number: 291 * CVS: If this change addresses one or more issues, 292 * CVS: then enter the issue number(s) here. 293 * CVS: Obtained from: 294 * CVS: If this change has been taken from another system, 295 * CVS: then name the system in this line, otherwise delete it. 296 * CVS: Submitted by: 297 * CVS: If this code has been contributed to the project by someone else; i.e., 298 * CVS: they sent us a patch or a set of diffs, then include their name/email 299 * CVS: address here. If this is your work then delete this line. 300 * CVS: Reviewed by: 301 * CVS: If we are doing pre-commit code reviews and someone else has 302 * CVS: reviewed your changes, include their name(s) here. 303 * CVS: If you have not had it reviewed then delete this line. 304 * 305 * Revision 1.4 2006/06/19 06:47:27 mranga 306 * javadoc fixups 307 * 308 * Revision 1.3 2006/06/16 15:26:28 mranga 309 * Added NIST disclaimer to all public domain files. Clean up some javadoc. Fixed a leak 310 * 311 * Revision 1.2 2005/10/27 20:49:00 jeroen 312 * added support for RFC3903 PUBLISH 313 * 314 * Revision 1.1.1.1 2005/10/04 17:12:36 mranga 315 * 316 * Import 317 * 318 * 319 * Revision 1.4 2004/01/22 13:26:32 sverker 320 * Issue number: 321 * Obtained from: 322 * Submitted by: sverker 323 * Reviewed by: mranga 324 * 325 * Major reformat of code to conform with style guide. Resolved compiler and javadoc warnings. Added CVS tags. 326 * 327 * CVS: ---------------------------------------------------------------------- 328 * CVS: Issue number: 329 * CVS: If this change addresses one or more issues, 330 * CVS: then enter the issue number(s) here. 331 * CVS: Obtained from: 332 * CVS: If this change has been taken from another system, 333 * CVS: then name the system in this line, otherwise delete it. 334 * CVS: Submitted by: 335 * CVS: If this code has been contributed to the project by someone else; i.e., 336 * CVS: they sent us a patch or a set of diffs, then include their name/email 337 * CVS: address here. If this is your work then delete this line. 338 * CVS: Reviewed by: 339 * CVS: If we are doing pre-commit code reviews and someone else has 340 * CVS: reviewed your changes, include their name(s) here. 341 * CVS: If you have not had it reviewed then delete this line. 342 * 343 */ 344