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@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