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 ExpressionList extends JavaLanguageElement {
015    
016            public ExpressionList(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                    Expressions = select(Expression.class, "EXPR");
022            }
023    
024            public void toDom(Element holder) {
025                    super.toDom(holder);
026    
027                    // Serialize attributes
028                    setElement(holder, "Expressions", Expressions);
029            }
030    
031            // Attributes
032            private List<Expression> Expressions;
033    
034            // Accessors
035            public List<Expression> getExpressions() {
036                    return Expressions;
037            }
038    
039            protected void acceptChildren(Visitor visitor) {
040                    super.acceptChildren(visitor);
041                    // Visiting non-text attributes
042                    new CollectionVisitable(Expressions, false).accept(visitor);
043            }
044    
045    }