1 23 24 28 29 package com.sun.enterprise.config.serverbeans; 30 31 import org.w3c.dom.*; 32 import org.netbeans.modules.schema2beans.*; 33 import java.beans.*; 34 import java.util.*; 35 import java.io.Serializable ; 36 import com.sun.enterprise.config.ConfigBean; 37 import com.sun.enterprise.config.ConfigException; 38 import com.sun.enterprise.config.StaleWriteConfigException; 39 import com.sun.enterprise.util.i18n.StringManager; 40 41 43 public class StoreProperties extends ConfigBean implements Serializable 44 { 45 46 static Vector comparators = new Vector(); 47 private static final org.netbeans.modules.schema2beans.Version runtimeVersion = new org.netbeans.modules.schema2beans.Version(4, 2, 0); 48 49 static public final String ELEMENT_PROPERTY = "ElementProperty"; 50 51 public StoreProperties() { 52 this(Common.USE_DEFAULT_VALUES); 53 } 54 55 public StoreProperties(int options) 56 { 57 super(comparators, runtimeVersion); 58 initPropertyTables(1); 60 this.createProperty("property", ELEMENT_PROPERTY, 61 Common.TYPE_0_N | Common.TYPE_BEAN | Common.TYPE_KEY, 62 ElementProperty.class); 63 this.createAttribute(ELEMENT_PROPERTY, "name", "Name", 64 AttrProp.CDATA | AttrProp.REQUIRED, 65 null, null); 66 this.createAttribute(ELEMENT_PROPERTY, "value", "Value", 67 AttrProp.CDATA | AttrProp.REQUIRED, 68 null, null); 69 this.initialize(options); 70 } 71 72 void initialize(int options) { 74 75 } 76 77 public void setElementProperty(int index, ElementProperty value) { 79 this.setValue(ELEMENT_PROPERTY, index, value); 80 } 81 82 public ElementProperty getElementProperty(int index) { 84 return (ElementProperty)this.getValue(ELEMENT_PROPERTY, index); 85 } 86 87 public void setElementProperty(ElementProperty[] value) { 89 this.setValue(ELEMENT_PROPERTY, value); 90 } 91 92 public ElementProperty[] getElementProperty() { 94 return (ElementProperty[])this.getValues(ELEMENT_PROPERTY); 95 } 96 97 public int sizeElementProperty() { 99 return this.size(ELEMENT_PROPERTY); 100 } 101 102 public int addElementProperty(ElementProperty value) 104 throws ConfigException{ 105 return addElementProperty(value, true); 106 } 107 108 public int addElementProperty(ElementProperty value, boolean overwrite) 110 throws ConfigException{ 111 ElementProperty old = getElementPropertyByName(value.getName()); 112 if(old != null) { 113 throw new ConfigException(StringManager.getManager(StoreProperties.class).getString("cannotAddDuplicate", "ElementProperty")); 114 } 115 return this.addValue(ELEMENT_PROPERTY, value, overwrite); 116 } 117 118 public int removeElementProperty(ElementProperty value){ 123 return this.removeValue(ELEMENT_PROPERTY, value); 124 } 125 126 public int removeElementProperty(ElementProperty value, boolean overwrite) 132 throws StaleWriteConfigException{ 133 return this.removeValue(ELEMENT_PROPERTY, value, overwrite); 134 } 135 136 public ElementProperty getElementPropertyByName(String id) { 137 if (null != id) { id = id.trim(); } 138 ElementProperty[] o = getElementProperty(); 139 if (o == null) return null; 140 141 for (int i=0; i < o.length; i++) { 142 if(o[i].getAttributeValue(Common.convertName(ServerTags.NAME)).equals(id)) { 143 return o[i]; 144 } 145 } 146 147 return null; 148 149 } 150 154 public String getDirectory() { 155 return getAttributeValue(ServerTags.DIRECTORY); 156 } 157 162 public void setDirectory(String v, boolean overwrite) throws StaleWriteConfigException { 163 setAttributeValue(ServerTags.DIRECTORY, v, overwrite); 164 } 165 169 public void setDirectory(String v) { 170 setAttributeValue(ServerTags.DIRECTORY, v); 171 } 172 176 public String getReapIntervalInSeconds() { 177 return getAttributeValue(ServerTags.REAP_INTERVAL_IN_SECONDS); 178 } 179 184 public void setReapIntervalInSeconds(String v, boolean overwrite) throws StaleWriteConfigException { 185 setAttributeValue(ServerTags.REAP_INTERVAL_IN_SECONDS, v, overwrite); 186 } 187 191 public void setReapIntervalInSeconds(String v) { 192 setAttributeValue(ServerTags.REAP_INTERVAL_IN_SECONDS, v); 193 } 194 198 public ElementProperty newElementProperty() { 199 return new ElementProperty(); 200 } 201 202 207 protected String getRelativeXPath() { 208 String ret = null; 209 ret = "store-properties"; 210 return (null != ret ? ret.trim() : null); 211 } 212 213 216 public static String getDefaultAttributeValue(String attr) { 217 if(attr == null) return null; 218 attr = attr.trim(); 219 return null; 220 } 221 public static void addComparator(org.netbeans.modules.schema2beans.BeanComparator c) { 223 comparators.add(c); 224 } 225 226 public static void removeComparator(org.netbeans.modules.schema2beans.BeanComparator c) { 228 comparators.remove(c); 229 } 230 public void validate() throws org.netbeans.modules.schema2beans.ValidateException { 231 } 232 233 public void dump(StringBuffer str, String indent){ 235 String s; 236 Object o; 237 org.netbeans.modules.schema2beans.BaseBean n; 238 str.append(indent); 239 str.append("ElementProperty["+this.sizeElementProperty()+"]"); for(int i=0; i<this.sizeElementProperty(); i++) 241 { 242 str.append(indent+"\t"); 243 str.append("#"+i+":"); 244 n = (org.netbeans.modules.schema2beans.BaseBean) this.getElementProperty(i); 245 if (n != null) 246 n.dump(str, indent + "\t"); else 248 str.append(indent+"\tnull"); this.dumpAttributes(ELEMENT_PROPERTY, i, str, indent); 250 } 251 252 } 253 public String dumpBeanNode(){ 254 StringBuffer str = new StringBuffer (); 255 str.append("StoreProperties\n"); this.dump(str, "\n "); return str.toString(); 258 }} 259 260 262 | Popular Tags |