1600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wangpackage gov.nist.javax.sip.header.extensions; 2600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 3600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wangimport gov.nist.javax.sip.header.ParametersHeader; 4600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 5600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wangimport java.text.ParseException; 6600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wangimport java.util.Iterator; 7600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 8600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wangimport javax.sip.header.ExtensionHeader; 9600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 10600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wangpublic class References extends ParametersHeader implements ReferencesHeader,ExtensionHeader { 11600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 12600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang private static final long serialVersionUID = 8536961681006637622L; 13600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 14600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 15600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang private String callId; 16600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 17600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public References() { 18600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang super(ReferencesHeader.NAME); 19600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 20600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 21600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 22600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 23600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 24600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public String getCallId() { 25600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return callId; 26600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 27600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 28600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 29600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 30600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public String getRel() { 31600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return this.getParameter(REL); 32600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 33600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 34600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 35600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 36600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 37600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public void setCallId(String callId) { 38600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang this.callId = callId; 39600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 40600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 41600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 42600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public void setRel(String rel) throws ParseException{ 43600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang if ( rel != null ) { 44600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang this.setParameter(REL,rel); 45600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 46600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 47600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 48600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 49600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public String getParameter(String name) { 50600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return super.getParameter(name); 51600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 52600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 53600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 54600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public Iterator getParameterNames() { 55600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return super.getParameterNames(); 56600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 57600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 58600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 59600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public void removeParameter(String name) { 60600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang super.removeParameter(name); 61600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 62600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 63600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 64600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public void setParameter(String name, String value) throws ParseException { 65600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang super.setParameter(name,value); 66600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 67600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 68600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 69600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public String getName() { 70600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return ReferencesHeader.NAME; 71600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 72600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 73600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 74600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang protected String encodeBody() { 75600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang if ( super.parameters.isEmpty()) { 76600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return callId ; 77600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } else { 78600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang return callId + ";" + super.parameters.encode(); 79600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 80600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 81600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 82600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 83600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang public void setValue(String value) throws ParseException { 84600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang throw new UnsupportedOperationException("operation not supported"); 85600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang } 86600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang 87600c7a4bbc7348167293eac928192e695b4ad5baChung-yih Wang} 88