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 JdbcResource 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 DESCRIPTION = "Description"; 50 static public final String ELEMENT_PROPERTY = "ElementProperty"; 51 52 public JdbcResource() { 53 this(Common.USE_DEFAULT_VALUES); 54 } 55 56 public JdbcResource(int options) 57 { 58 super(comparators, runtimeVersion); 59 initPropertyTables(2); 61 this.createProperty("description", DESCRIPTION, 62 Common.TYPE_0_1 | Common.TYPE_STRING | Common.TYPE_KEY, 63 String .class); 64 this.createProperty("property", ELEMENT_PROPERTY, 65 Common.TYPE_0_N | Common.TYPE_BEAN | Common.TYPE_KEY, 66 ElementProperty.class); 67 this.createAttribute(ELEMENT_PROPERTY, "name", "Name", 68 AttrProp.CDATA | AttrProp.REQUIRED, 69 null, null); 70 this.createAttribute(ELEMENT_PROPERTY, "value", "Value", 71 AttrProp.CDATA | AttrProp.REQUIRED, 72 null, null); 73 this.initialize(options); 74 } 75 76 void initialize(int options) { 78 79 } 80 81 84 public String getDescription() { 85 return (String ) getValue(ServerTags.DESCRIPTION); 86 } 87 91 public void setDescription(String v){ 92 setValue(ServerTags.DESCRIPTION, (null != v ? v.trim() : null)); 93 } 94 public void setElementProperty(int index, ElementProperty value) { 96 this.setValue(ELEMENT_PROPERTY, index, value); 97 } 98 99 public ElementProperty getElementProperty(int index) { 101 return (ElementProperty)this.getValue(ELEMENT_PROPERTY, index); 102 } 103 104 public void setElementProperty(ElementProperty[] value) { 106 this.setValue(ELEMENT_PROPERTY, value); 107 } 108 109 public ElementProperty[] getElementProperty() { 111 return (ElementProperty[])this.getValues(ELEMENT_PROPERTY); 112 } 113 114 public int sizeElementProperty() { 116 return this.size(ELEMENT_PROPERTY); 117 } 118 119 public int addElementProperty(ElementProperty value) 121 throws ConfigException{ 122 return addElementProperty(value, true); 123 } 124 125 public int addElementProperty(ElementProperty value, boolean overwrite) 127 throws ConfigException{ 128 ElementProperty old = getElementPropertyByName(value.getName()); 129 if(old != null) { 130 throw new ConfigException(StringManager.getManager(JdbcResource.class).getString("cannotAddDuplicate", "ElementProperty")); 131 } 132 return this.addValue(ELEMENT_PROPERTY, value, overwrite); 133 } 134 135 public int removeElementProperty(ElementProperty value){ 140 return this.removeValue(ELEMENT_PROPERTY, value); 141 } 142 143 public int removeElementProperty(ElementProperty value, boolean overwrite) 149 throws StaleWriteConfigException{ 150 return this.removeValue(ELEMENT_PROPERTY, value, overwrite); 151 } 152 153 public ElementProperty getElementPropertyByName(String id) { 154 if (null != id) { id = id.trim(); } 155 ElementProperty[] o = getElementProperty(); 156 if (o == null) return null; 157 158 for (int i=0; i < o.length; i++) { 159 if(o[i].getAttributeValue(Common.convertName(ServerTags.NAME)).equals(id)) { 160 return o[i]; 161 } 162 } 163 164 return null; 165 166 } 167 171 public String getJndiName() { 172 return getAttributeValue(ServerTags.JNDI_NAME); 173 } 174 179 public void setJndiName(String v, boolean overwrite) throws StaleWriteConfigException { 180 setAttributeValue(ServerTags.JNDI_NAME, v, overwrite); 181 } 182 186 public void setJndiName(String v) { 187 setAttributeValue(ServerTags.JNDI_NAME, v); 188 } 189 193 public String getPoolName() { 194 return getAttributeValue(ServerTags.POOL_NAME); 195 } 196 201 public void setPoolName(String v, boolean overwrite) throws StaleWriteConfigException { 202 setAttributeValue(ServerTags.POOL_NAME, v, overwrite); 203 } 204 208 public void setPoolName(String v) { 209 setAttributeValue(ServerTags.POOL_NAME, v); 210 } 211 215 public String getObjectType() { 216 return getAttributeValue(ServerTags.OBJECT_TYPE); 217 } 218 223 public void setObjectType(String v, boolean overwrite) throws StaleWriteConfigException { 224 setAttributeValue(ServerTags.OBJECT_TYPE, v, overwrite); 225 } 226 230 public void setObjectType(String v) { 231 setAttributeValue(ServerTags.OBJECT_TYPE, v); 232 } 233 236 public static String getDefaultObjectType() { 237 return "user".trim(); 238 } 239 243 public boolean isEnabled() { 244 return toBoolean(getAttributeValue(ServerTags.ENABLED)); 245 } 246 251 public void setEnabled(boolean v, boolean overwrite) throws StaleWriteConfigException { 252 setAttributeValue(ServerTags.ENABLED, ""+(v==true), overwrite); 253 } 254 258 public void setEnabled(boolean v) { 259 setAttributeValue(ServerTags.ENABLED, ""+(v==true)); 260 } 261 264 public static String getDefaultEnabled() { 265 return "true".trim(); 266 } 267 271 public ElementProperty newElementProperty() { 272 return new ElementProperty(); 273 } 274 275 280 protected String getRelativeXPath() { 281 String ret = null; 282 ret = "jdbc-resource" + (canHaveSiblings() ? "[@jndi-name='" + getAttributeValue("jndi-name") +"']" : "") ; 283 return (null != ret ? ret.trim() : null); 284 } 285 286 289 public static String getDefaultAttributeValue(String attr) { 290 if(attr == null) return null; 291 attr = attr.trim(); 292 if(attr.equals(ServerTags.OBJECT_TYPE)) return "user".trim(); 293 if(attr.equals(ServerTags.ENABLED)) return "true".trim(); 294 return null; 295 } 296 public static void addComparator(org.netbeans.modules.schema2beans.BeanComparator c) { 298 comparators.add(c); 299 } 300 301 public static void removeComparator(org.netbeans.modules.schema2beans.BeanComparator c) { 303 comparators.remove(c); 304 } 305 public void validate() throws org.netbeans.modules.schema2beans.ValidateException { 306 } 307 308 public void dump(StringBuffer str, String indent){ 310 String s; 311 Object o; 312 org.netbeans.modules.schema2beans.BaseBean n; 313 str.append(indent); 314 str.append("Description"); str.append(indent+"\t"); str.append("<"); o = this.getDescription(); 318 str.append((o==null?"null":o.toString().trim())); str.append(">\n"); this.dumpAttributes(DESCRIPTION, 0, str, indent); 321 322 str.append(indent); 323 str.append("ElementProperty["+this.sizeElementProperty()+"]"); for(int i=0; i<this.sizeElementProperty(); i++) 325 { 326 str.append(indent+"\t"); 327 str.append("#"+i+":"); 328 n = (org.netbeans.modules.schema2beans.BaseBean) this.getElementProperty(i); 329 if (n != null) 330 n.dump(str, indent + "\t"); else 332 str.append(indent+"\tnull"); this.dumpAttributes(ELEMENT_PROPERTY, i, str, indent); 334 } 335 336 } 337 public String dumpBeanNode(){ 338 StringBuffer str = new StringBuffer (); 339 str.append("JdbcResource\n"); this.dump(str, "\n "); return str.toString(); 342 }} 343 344 346 | Popular Tags |