Home | History | Annotate | Download | only in parser
      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