diff options
Diffstat (limited to 'java/gov/nist/javax/sdp/parser/OriginFieldParser.java')
-rw-r--r-- | java/gov/nist/javax/sdp/parser/OriginFieldParser.java | 225 |
1 files changed, 0 insertions, 225 deletions
diff --git a/java/gov/nist/javax/sdp/parser/OriginFieldParser.java b/java/gov/nist/javax/sdp/parser/OriginFieldParser.java deleted file mode 100644 index 9b40e00..0000000 --- a/java/gov/nist/javax/sdp/parser/OriginFieldParser.java +++ /dev/null @@ -1,225 +0,0 @@ -/* - * Conditions Of Use - * - * This software was developed by employees of the National Institute of - * Standards and Technology (NIST), an agency of the Federal Government. - * Pursuant to title 15 Untied States Code Section 105, works of NIST - * employees are not subject to copyright protection in the United States - * and are considered to be in the public domain. As a result, a formal - * license is not needed to use the software. - * - * This software is provided by NIST as a service and is expressly - * provided "AS IS." NIST MAKES NO WARRANTY OF ANY KIND, EXPRESS, IMPLIED - * OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTY OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT - * AND DATA ACCURACY. NIST does not warrant or make any representations - * regarding the use of the software or the results thereof, including but - * not limited to the correctness, accuracy, reliability or usefulness of - * the software. - * - * Permission to use this software is contingent upon your acceptance - * of the terms of this agreement - * - * . - * - */ -package gov.nist.javax.sdp.parser; - -import gov.nist.javax.sdp.fields.*; -import gov.nist.core.*; -import java.text.*; - -/** - * @author deruelle - * @version JAIN-SDP-PUBLIC-RELEASE $Revision: 1.8 $ $Date: 2009/07/17 18:57:16 $ - */ -public class OriginFieldParser extends SDPParser { - - /** Creates new OriginFieldParser */ - public OriginFieldParser(String originField) { - lexer = new Lexer("charLexer", originField); - } - - public OriginField originField() throws ParseException { - try { - OriginField originField = new OriginField(); - - lexer.match('o'); - lexer.SPorHT(); - lexer.match('='); - lexer.SPorHT(); - - lexer.match(LexerCore.SAFE); - Token userName = lexer.getNextToken(); - originField.setUsername(userName.getTokenValue()); - this.lexer.SPorHT(); - - lexer.match(LexerCore.ID); - //lexer.ttokenSafe(); - Token sessionId = lexer.getNextToken(); - // guard against very long session IDs - String sessId = sessionId.getTokenValue(); - if (sessId.length() > 18) - sessId = sessId.substring(sessId.length() - 18); - try { - originField.setSessId(Long.parseLong(sessId)); - } catch (NumberFormatException ex) { - originField.setSessionId(sessId); - } - this.lexer.SPorHT(); - - lexer.match(LexerCore.ID); - Token sessionVersion = lexer.getNextToken(); - // guard against very long session Verion - String sessVer = sessionVersion.getTokenValue(); - if (sessVer.length() > 18) - sessVer = sessVer.substring(sessVer.length() - 18); - try { - originField.setSessVersion(Long.parseLong(sessVer)); - } catch (NumberFormatException ex) { - originField.setSessVersion(sessVer); - - } - this.lexer.SPorHT(); - - lexer.match(LexerCore.ID); - Token networkType = lexer.getNextToken(); - originField.setNettype(networkType.getTokenValue()); - this.lexer.SPorHT(); - - lexer.match(LexerCore.ID); - Token addressType = lexer.getNextToken(); - originField.setAddrtype(addressType.getTokenValue()); - this.lexer.SPorHT(); - - String host = lexer.getRest(); - HostNameParser hostNameParser = new HostNameParser(host); - Host h = hostNameParser.host(); - originField.setAddress(h); - - return originField; - } catch (Exception e) { - e.printStackTrace(); - throw new ParseException(lexer.getBuffer(), lexer.getPtr()); - } - } - - public SDPField parse() throws ParseException { - return this.originField(); - } - - public static void main(String[] args) throws ParseException { - String origin[] = { - "o=- 45ec4ba1.1 45ec4ba1 in ip4 10.1.80.200\r\n", - "o=- 4322650003578 0 IN IP4 192.53.18.122\r\n", - "o=4855 12345678901234567890 12345678901234567890 IN IP4 166.35.224.216\n", - "o=mh/andley 2890844526 2890842807 IN IP4 126.16.64.4\n", - "o=UserB 2890844527 2890844527 IN IP4 everywhere.com\n", - "o=UserA 2890844526 2890844526 IN IP4 here.com\n", - "o=IFAXTERMINAL01 2890844527 2890844527 IN IP4 ift.here.com\n", - "o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com\n", - "o=- 2890844527 2890844527 IN IP4 gatewayone.wcom.com\n" }; - - for (int i = 0; i < origin.length; i++) { - OriginFieldParser originFieldParser = new OriginFieldParser( - origin[i]); - OriginField originField = originFieldParser.originField(); - System.out.println("toParse :" + origin[i]); - System.out.println("encoded: " + originField.encode()); - } - - } -} -/* - * $Log: OriginFieldParser.java,v $ - * Revision 1.8 2009/07/17 18:57:16 emcho - * Converts indentation tabs to spaces so that we have a uniform indentation policy in the whole project. - * - * Revision 1.7 2007/03/08 05:20:20 mranga - * Issue number: - * Obtained from: - * Submitted by: - * Reviewed by: mranga - * Fix logging code. Losen up on Sdp parsing (allow for extra long origin fields) - * CVS: ---------------------------------------------------------------------- - * CVS: Issue number: - * CVS: If this change addresses one or more issues, - * CVS: then enter the issue number(s) here. - * CVS: Obtained from: - * CVS: If this change has been taken from another system, - * CVS: then name the system in this line, otherwise delete it. - * CVS: Submitted by: - * CVS: If this code has been contributed to the project by someone else; i.e., - * CVS: they sent us a patch or a set of diffs, then include their name/email - * CVS: address here. If this is your work then delete this line. - * CVS: Reviewed by: - * CVS: If we are doing pre-commit code reviews and someone else has - * CVS: reviewed your changes, include their name(s) here. - * CVS: If you have not had it reviewed then delete this line. - * Revision 1.6 2006/11/16 19:05:44 pmusgrave - * Issue number: 82 - SDP with Origin/Time or Zone creater than 18 digits causes - * parse exception Obtained from: Submitted by: pmusgrave@newheights.com - * Reviewed by: CVS: - * ---------------------------------------------------------------------- CVS: - * Issue number: CVS: If this change addresses one or more issues, CVS: then - * enter the issue number(s) here. CVS: Obtained from: CVS: If this change has - * been taken from another system, CVS: then name the system in this line, - * otherwise delete it. CVS: Submitted by: CVS: If this code has been - * contributed to the project by someone else; i.e., CVS: they sent us a patch - * or a set of diffs, then include their name/email CVS: address here. If this - * is your work then delete this line. CVS: Reviewed by: CVS: If we are doing - * pre-commit code reviews and someone else has CVS: reviewed your changes, - * include their name(s) here. CVS: If you have not had it reviewed then delete - * this line. - * - * Revision 1.5 2006/07/13 09:02:36 mranga Issue number: Obtained from: - * Submitted by: jeroen van bemmel Reviewed by: mranga Moved some changes from - * jain-sip-1.2 to java.net - * - * CVS: ---------------------------------------------------------------------- - * CVS: Issue number: CVS: If this change addresses one or more issues, CVS: - * then enter the issue number(s) here. CVS: Obtained from: CVS: If this change - * has been taken from another system, CVS: then name the system in this line, - * otherwise delete it. CVS: Submitted by: CVS: If this code has been - * contributed to the project by someone else; i.e., CVS: they sent us a patch - * or a set of diffs, then include their name/email CVS: address here. If this - * is your work then delete this line. CVS: Reviewed by: CVS: If we are doing - * pre-commit code reviews and someone else has CVS: reviewed your changes, - * include their name(s) here. CVS: If you have not had it reviewed then delete - * this line. - * - * Revision 1.4 2006/06/19 06:47:26 mranga javadoc fixups - * - * Revision 1.3 2006/06/16 15:26:28 mranga Added NIST disclaimer to all public - * domain files. Clean up some javadoc. Fixed a leak - * - * Revision 1.2 2006/04/01 04:52:22 mranga *** empty log message *** - * - * Revision 1.1.1.1 2005/10/04 17:12:34 mranga - * - * Import - * - * - * Revision 1.3 2004/10/21 14:57:17 mranga Reviewed by: mranga - * - * Fixed origin field parser for sdp. - * - * Revision 1.2 2004/01/22 13:26:28 sverker Issue number: Obtained from: - * Submitted by: sverker Reviewed by: mranga - * - * Major reformat of code to conform with style guide. Resolved compiler and - * javadoc warnings. Added CVS tags. - * - * CVS: ---------------------------------------------------------------------- - * CVS: Issue number: CVS: If this change addresses one or more issues, CVS: - * then enter the issue number(s) here. CVS: Obtained from: CVS: If this change - * has been taken from another system, CVS: then name the system in this line, - * otherwise delete it. CVS: Submitted by: CVS: If this code has been - * contributed to the project by someone else; i.e., CVS: they sent us a patch - * or a set of diffs, then include their name/email CVS: address here. If this - * is your work then delete this line. CVS: Reviewed by: CVS: If we are doing - * pre-commit code reviews and someone else has CVS: reviewed your changes, - * include their name(s) here. CVS: If you have not had it reviewed then delete - * this line. - * - */ |