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:
*
*/