1 17 package org.apache.ws.jaxme.xs.xml.impl; 18 19 import org.apache.ws.jaxme.xs.xml.*; 20 import org.xml.sax.SAXException ; 21 22 23 41 public class XsTExtensionTypeImpl extends XsTAnnotatedImpl implements XsTExtensionType { 42 private XsQName base; 43 private final XsGTypeDefParticle particle; 44 private final XsGAttrDecls attrDecls; 45 46 protected XsTExtensionTypeImpl(XsObject pParent) { 47 super(pParent); 48 particle = getObjectFactory().newXsGTypeDefParticle(this); 49 attrDecls = getObjectFactory().newXsGAttrDecls(this); 50 } 51 52 public void setBase(XsQName pBase) { 53 base = pBase; 54 } 55 56 public void setBase(String pBase) throws SAXException { 57 setBase(asXsQName(pBase)); 58 } 59 60 public XsQName getBase() { 61 return base; 62 } 63 64 public XsTGroupRef createGroup() { 65 return particle.createGroup(); 66 } 67 68 public XsTAll createAll() { 69 return particle.createAll(); 70 } 71 72 public XsEChoice createChoice() { 73 return particle.createChoice(); 74 } 75 76 public XsESequence createSequence() { 77 return particle.createSequence(); 78 } 79 80 public XsTTypeDefParticle getTypeDefParticle() { 81 return particle.getTypeDefParticle(); 82 } 83 84 public XsTAttribute createAttribute() { 85 return attrDecls.createAttribute(); 86 } 87 88 public XsTAttribute[] getAttributes() { 89 return attrDecls.getAttributes(); 90 } 91 92 public XsTAttributeGroupRef createAttributeGroup() { 93 return attrDecls.createAttributeGroup(); 94 } 95 96 public XsTAttributeGroupRef[] getAttributeGroups() { 97 return attrDecls.getAttributeGroups(); 98 } 99 100 public XsTWildcard createAnyAttribute() { 101 return attrDecls.createAnyAttribute(); 102 } 103 104 public XsTWildcard getAnyAttribute() { 105 return attrDecls.getAnyAttribute(); 106 } 107 108 public Object [] getAllAttributes() { 109 return attrDecls.getAllAttributes(); 110 } 111 112 public void validate() throws SAXException { 113 super.validate(); 114 if (getBase() == null) { 115 throw new NullPointerException ("Missing 'base' attribute."); 116 } 117 } 118 } 119 | Popular Tags |