package gov.nist.javax.sip.parser.extensions; import java.text.ParseException; import gov.nist.javax.sip.header.*; import gov.nist.javax.sip.header.extensions.*; import gov.nist.javax.sip.parser.*; /** * ReferredBy Header parser. * * This code is in the public domain. * * Based on JAIN ReferToParser * */ public class ReferredByParser extends AddressParametersParser { /** * Creates new ToParser * @param referBy String to set */ public ReferredByParser(String referBy) { super(referBy); } protected ReferredByParser(Lexer lexer) { super(lexer); } public SIPHeader parse() throws ParseException { headerName(TokenTypes.REFERREDBY_TO); ReferredBy referBy = new ReferredBy(); super.parse(referBy); this.lexer.match('\n'); return referBy; } public static void main(String args[]) throws ParseException { String to[] = { "Referred-By: \n", "Referred-By: ;tag=5617\n", "Referred-By: T. A. Watson \n", "Referred-By: LittleGuy \n", "Referred-By: sip:mranga@120.6.55.9\n", "Referred-By: sip:mranga@129.6.55.9 ; tag=696928473514.129.6.55.9\n" }; for (int i = 0; i < to.length; i++) { ReferredByParser tp = new ReferredByParser(to[i]); ReferredBy t = (ReferredBy) tp.parse(); System.out.println("encoded = " + t.encode()); } } } /* * $Log: * */