public void remove() throws IllegalStateException { if (this.sipHeader == null) throw new IllegalStateException(); if (toRemove) { this.sipHeader = null; this.sipMessage.removeHeader(sipHeader.getName()); } else { throw new IllegalStateException(); } }
/** * Get the header names. * * @return a list iterator to a list of header names. These are ordered in the same order as * are present in the message. */ public ListIterator<String> getHeaderNames() { Iterator<SIPHeader> li = this.headers.iterator(); LinkedList<String> retval = new LinkedList<String>(); while (li.hasNext()) { SIPHeader sipHeader = (SIPHeader) li.next(); String name = sipHeader.getName(); retval.add(name); } return retval.listIterator(); }
@Override public ListIterator<String> getHeaderNames() { Iterator<SIPHeader> li = this.headers.iterator(); LinkedList<String> retval = new LinkedList<String>(); while (li.hasNext()) { SIPHeader sipHeader = (SIPHeader) li.next(); String name = sipHeader.getName(); retval.add(name); } // Append the unparsed headers Iterator<String> nonParsedHeadersIt = this.delegate.getHeaderValuesNotParsed(); while (nonParsedHeadersIt.hasNext()) { String nonParsedHeader = nonParsedHeadersIt.next(); retval.add(nonParsedHeader); } return retval.listIterator(); }
@Override public ListIterator<String> getHeaderNames() { Iterator<SIPHeader> li = this.headers.iterator(); LinkedList<String> retval = new LinkedList<String>(); while (li.hasNext()) { SIPHeader sipHeader = (SIPHeader) li.next(); String name = sipHeader.getName(); retval.add(name); } // Append the unparsed headers Iterator<String> nonParsedHeadersIt = this.delegate.getHeaderValuesNotParsed(); while (nonParsedHeadersIt.hasNext()) { String nonParsedHeader = nonParsedHeadersIt.next(); retval.add(nonParsedHeader); } return retval.listIterator(); }
/** * Return a list object for this header if it has an associated list object. */ @SuppressWarnings("unchecked") static public SIPHeaderList<SIPHeader> getList(SIPHeader sipHeader) { if (!initialized) initializeListMap(); try { Class<?> headerClass = sipHeader.getClass(); Class<?> listClass = headerListTable.get(headerClass); SIPHeaderList<SIPHeader> shl = (SIPHeaderList<SIPHeader>) listClass.newInstance(); shl.setHeaderName(sipHeader.getName()); return shl; } catch (InstantiationException ex) { ex.printStackTrace(); } catch (IllegalAccessException ex) { ex.printStackTrace(); } return null; }
/** * Compare for equality. * * @param other -- the other object to compare with. */ public boolean equals(Object other) { if (!other.getClass().equals(this.getClass())) { return false; } SIPMessage otherMessage = (SIPMessage) other; Collection<SIPHeader> values = this.headerTable.values(); Iterator<SIPHeader> it = values.iterator(); if (headerTable.size() != otherMessage.headerTable.size()) { return false; } while (it.hasNext()) { SIPHeader mine = (SIPHeader) it.next(); SIPHeader his = (SIPHeader) (otherMessage.headerTable.get(SIPHeaderNamesCache .toLowerCase(mine.getName()))); if (his == null) { return false; } else if (!his.equals(mine)) { return false; } } return true; }
while (li.hasNext()) { SIPHeader sipHeader = (SIPHeader) li.next(); if (sipHeader.getName().equalsIgnoreCase(headerNameLowerCase)) li.remove();