001    package org.mesopotamia.lang.java;
002    
003    import java.util.List;
004    
005    import org.mesopotamia.MesopotamiaException;
006    import org.mesopotamia.NodeData;
007    import org.mesopotamia.RepositoryLanguage;
008    import org.mesopotamia.Scan;
009    import org.w3c.dom.Element;
010    
011    import biz.hammurapi.util.CollectionVisitable;
012    import biz.hammurapi.util.Visitor;
013    
014    public class ArrayInitializer extends JavaLanguageElement implements Initializer {
015    
016            public ArrayInitializer(NodeData xData, Class<?> context, Scan scan,
017                            RepositoryLanguage language, Object environment) throws MesopotamiaException {
018                    super(xData, context, scan, language, environment);
019    
020                    // Select attributes
021                    Initializers = select(Initializer.class, "*");
022    
023            }
024    
025            public void toDom(Element holder) {
026                    super.toDom(holder);
027    
028                    // Serialize attributes
029                    setElement(holder, "Initializers", Initializers);
030            }
031    
032            // Attributes
033            private List<Initializer> Initializers;
034    
035            // Accessors
036            public List<Initializer> getInitializers() {
037                    return Initializers;
038            }
039    
040            protected void acceptChildren(Visitor visitor) {
041                    super.acceptChildren(visitor);
042                    // Visiting non-text attributes
043                    new CollectionVisitable(Initializers, false).accept(visitor);
044            }
045    
046    }