SIPETag.java revision 600c7a4bbc7348167293eac928192e695b4ad5ba
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* Product of NIST/ITL Advanced Networking Technologies Division (ANTD). * 26*******************************************************************************/ 27package gov.nist.javax.sip.header; 28 29import javax.sip.header.*; 30import java.text.ParseException; 31 32/** 33 * the SIP-ETag header. 34 * 35 * @author Jeroen van Bemmel<br/> 36 * @version 1.2 $Revision: 1.3 $ $Date: 2009/07/17 18:57:37 $ 37 * @since 1.2 38 */ 39public class SIPETag extends SIPHeader implements SIPETagHeader , ExtensionHeader{ 40 41 /** 42 * Comment for <code>serialVersionUID</code> 43 */ 44 private static final long serialVersionUID = 3837543366074322107L; 45 46 /** 47 * entity tag field 48 */ 49 protected String entityTag; 50 51 /** Default constructor 52 */ 53 public SIPETag() { 54 super(NAME); 55 } 56 57 public SIPETag( String tag ) throws ParseException { 58 this(); 59 this.setETag( tag ); 60 } 61 62 63 /** 64 * Encode into canonical form. 65 * @return String 66 */ 67 public String encodeBody() { 68 return entityTag; 69 } 70 71 /** 72 * get the priority value. 73 * @return String 74 */ 75 public String getETag() { 76 return entityTag; 77 } 78 79 /** 80 * Set the priority member 81 * @param etag String to set 82 */ 83 public void setETag(String etag) throws ParseException { 84 if (etag == null) 85 throw new NullPointerException( 86 "JAIN-SIP Exception," 87 + "SIP-ETag, setETag(), the etag parameter is null"); 88 this.entityTag = etag; 89 } 90 91 /** 92 * This method needs to be added for backwards compatibility to 93 * avoid ClassCast exception on V1.1 applications 94 * 95 * @see javax.sip.header.ExtensionHeader#setValue(java.lang.String) 96 */ 97 public void setValue(String value) throws ParseException { 98 this.setETag(value); 99 100 } 101} 102