1 19 20 package org.netbeans.modules.xml.schema.model.impl; 21 22 import java.util.Collections ; 23 import java.util.List ; 24 import org.netbeans.modules.xml.schema.model.Attribute; 25 import org.netbeans.modules.xml.schema.model.GlobalSimpleType; 26 import org.netbeans.modules.xml.schema.model.LocalSimpleType; 27 import org.netbeans.modules.xml.schema.model.SchemaComponent; 28 import org.netbeans.modules.xml.xam.dom.NamedComponentReference; 29 import org.w3c.dom.Element ; 30 31 35 public abstract class CommonAttributeImpl extends NamedImpl 36 implements Attribute { 37 38 41 public CommonAttributeImpl(SchemaModelImpl model, Element el) { 42 super(model, el); 43 } 44 45 protected Class getAttributeType(SchemaAttributes attr) { 46 switch(attr) { 47 case FIXED: 48 return String .class; 49 default: 50 return super.getAttributeType(attr); 51 } 52 } 53 54 57 public String getFixed() { 58 return getAttribute(SchemaAttributes.FIXED); 59 } 60 61 64 public void setFixed(String fixedValue) { 65 setAttribute(FIXED_PROPERTY, SchemaAttributes.FIXED, fixedValue); 66 } 67 68 71 public String getDefault() { 72 return getAttribute(SchemaAttributes.DEFAULT); 73 } 74 75 78 public void setDefault(String defaultValue) { 79 setAttribute(DEFAULT_PROPERTY, SchemaAttributes.DEFAULT, defaultValue); 80 } 81 82 85 public NamedComponentReference<GlobalSimpleType> getType() { 86 return resolveGlobalReference(GlobalSimpleType.class, SchemaAttributes.TYPE); 87 } 88 89 92 public void setType(NamedComponentReference<GlobalSimpleType> type) { 93 setAttribute(TYPE_PROPERTY, SchemaAttributes.TYPE, type); 94 } 95 96 99 public LocalSimpleType getInlineType() { 100 java.util.Collection <LocalSimpleType> types = getChildren(LocalSimpleType.class); 101 if(!types.isEmpty()){ 102 return types.iterator().next(); 103 } 104 return null; 105 } 106 107 110 public void setInlineType(LocalSimpleType type) { 111 List <Class <? extends SchemaComponent>> classes = Collections.emptyList(); 112 setChild(LocalSimpleType.class, INLINE_TYPE_PROPERTY, type, classes); 113 } 114 115 } 116 | Popular Tags |