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    public class ClassDefinition extends ClassOrInterfaceDefinition implements Statement {
012    
013            public ClassDefinition(NodeData xData, Class context, Scan scan,
014                            RepositoryLanguage language, Object environment) throws MesopotamiaException {
015                    super(xData, context, scan, language, environment);
016    
017                    // Select attributes
018                    Extends = selectSingleElementText(Identifier.class, "EXTENDS_CLAUSE/*");
019                    Implements = selectText(Identifier.class, "IMPLEMENTS_CLAUSE/*");
020    
021            }
022    
023            public void toDom(Element holder) {
024                    super.toDom(holder);
025    
026                    // Serialize attributes
027                    setAttribute(holder, "Extends", Extends);
028                    setElement(holder, "Implements", Implements);
029            }
030    
031            // Attributes
032            private String Extends;
033    
034            private List Implements;
035    
036            // Accessors
037            public String getExtends() {
038                    return Extends;
039            }
040    
041            public List getImplements() {
042                    return Implements;
043            }
044    }