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*/
26package gov.nist.javax.sip.parser;
27
28import gov.nist.core.*;
29
30/**
31 * @version 1.2 $Revision: 1.13 $ $Date: 2010/01/12 00:05:25 $
32 */
33public 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@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