1 23 24 29 30 package com.sun.jdo.api.persistence.model.jdo; 31 32 import com.sun.jdo.api.persistence.model.ModelException; 33 34 39 public abstract class FieldGroupElement extends PersistenceMemberElement 40 implements FieldElementHolder 41 { 42 45 public FieldGroupElement () 46 { 47 this(null, null); 48 } 49 50 55 public FieldGroupElement (FieldGroupElement.Impl impl, 56 PersistenceClassElement declaringClass) 57 { 58 super(impl, declaringClass); 59 } 60 61 63 final Impl getFieldGroupImpl () { return (Impl)getImpl(); } 64 65 68 73 public void addField (PersistenceFieldElement field) 74 throws ModelException 75 { 76 addFields(new PersistenceFieldElement[]{field}); 77 } 78 79 84 public void addFields(PersistenceFieldElement[] fields) 85 throws ModelException 86 { 87 getFieldGroupImpl().changeFields(fields, Impl.ADD); 88 } 89 90 95 public void removeField (PersistenceFieldElement field) 96 throws ModelException 97 { 98 removeFields(new PersistenceFieldElement[]{field}); 99 } 100 101 106 public void removeFields (PersistenceFieldElement[] fields) 107 throws ModelException 108 { 109 getFieldGroupImpl().changeFields(fields, Impl.REMOVE); 110 } 111 112 116 public PersistenceFieldElement[] getFields () 117 { 118 return getFieldGroupImpl().getFields(); 119 } 120 121 126 public void setFields (PersistenceFieldElement[] fields) 127 throws ModelException 128 { 129 getFieldGroupImpl().changeFields(fields, Impl.SET); 130 } 131 132 137 public PersistenceFieldElement getField (String name) 138 { 139 return getFieldGroupImpl().getField(name); 140 } 141 142 146 public boolean containsField (PersistenceFieldElement field) 147 { 148 return (getFieldGroupImpl().getField(field.getName()) != null); 149 } 150 151 154 public interface Impl extends PersistenceMemberElement.Impl 155 { 156 161 public void changeFields (PersistenceFieldElement[] fields, int action) 162 throws ModelException; 163 164 167 public PersistenceFieldElement[] getFields (); 168 169 173 public PersistenceFieldElement getField (String name); 174 } 175 } 176 177 | Popular Tags |