Home | History | Annotate | Download | only in header
      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 */
     26 /*******************************************************************************
     27 * Product of NIST/ITL Advanced Networking Technologies Division (ANTD).        *
     28 *******************************************************************************/
     29 package gov.nist.javax.sip.header;
     30 
     31 import java.util.ListIterator;
     32 
     33 import javax.sip.header.ExtensionHeader;
     34 import javax.sip.header.Header;
     35 
     36 /**
     37  * A generic extension header list.
     38  * @version 1.2 $Revision: 1.8 $ $Date: 2009/07/17 18:57:30 $
     39  * @since 1.1
     40  */
     41 public class ExtensionHeaderList extends SIPHeaderList<ExtensionHeaderImpl> {
     42 
     43 
     44 
     45     private static final long serialVersionUID = 4681326807149890197L;
     46 
     47 
     48     public Object clone() {
     49         ExtensionHeaderList retval = new ExtensionHeaderList(headerName);
     50         retval.clonehlist(this.hlist);
     51         return retval;
     52     }
     53     public ExtensionHeaderList(String hName) {
     54         super( ExtensionHeaderImpl.class, hName);
     55     }
     56 
     57     public ExtensionHeaderList() {
     58         super(ExtensionHeaderImpl.class,null);
     59     }
     60 
     61 
     62     public String encode() {
     63         StringBuffer retval = new StringBuffer();
     64         ListIterator<ExtensionHeaderImpl> it = this.listIterator();
     65         while(it.hasNext()) {
     66            ExtensionHeaderImpl eh = (ExtensionHeaderImpl) it.next();
     67            retval.append(eh.encode());
     68         }
     69         return retval.toString();
     70     }
     71 }
     72