001 /* 002 @license.text@ 003 */ 004 package biz.hammurapi.xml.dom; 005 006 import java.util.Iterator; 007 008 import org.w3c.dom.Element; 009 010 import biz.hammurapi.xml.dom.CompositeDomSerializer.Member; 011 012 /** 013 * @author Pavel Vlasov 014 * 015 * @version $Revision: 1.3 $ 016 */ 017 public class IteratorDomSerializer implements Member { 018 019 private CompositeDomSerializer owner; 020 021 public DomSerializable toDomSerializable(final Iterator it) { 022 return new DomSerializable() { 023 024 public void toDom(Element holder) { 025 holder.setAttribute("type", "iterator"); 026 while (it.hasNext()) { 027 DomSerializable ds=owner.getStackHead().toDomSerializable(it.next()); 028 if (ds!=null) { 029 Element el=holder.getOwnerDocument().createElement("element"); 030 holder.appendChild(el); 031 ds.toDom(el); 032 } 033 } 034 } 035 036 }; 037 } 038 039 /** 040 * Callback method 041 */ 042 public void setOwner(CompositeDomSerializer owner) { 043 this.owner=owner; 044 } 045 }