User: salborini
Date: 00/11/24 10:51:42
Modified: src/main/org/jboss/metadata ApplicationMetaData.java
ConfigurationMetaData.java MetaData.java
Log:
Bugfixes:
- trim element contents
- allow jboss.xml to redefine only a part of a container configuration (patch from
Toby Allsopp <[EMAIL PROTECTED]>
Revision Changes Path
1.10 +2 -2 jboss/src/main/org/jboss/metadata/ApplicationMetaData.java
Index: ApplicationMetaData.java
===================================================================
RCS file:
/products/cvs/ejboss/jboss/src/main/org/jboss/metadata/ApplicationMetaData.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ApplicationMetaData.java 2000/11/07 13:15:39 1.9
+++ ApplicationMetaData.java 2000/11/24 18:51:41 1.10
@@ -25,7 +25,7 @@
*
* @see <related>
* @author <a href="mailto:[EMAIL PROTECTED]">Sebastien Alborini</a>
- * @version $Revision: 1.9 $
+ * @version $Revision: 1.10 $
*/
public class ApplicationMetaData extends MetaData {
// Constants -----------------------------------------------------
@@ -300,7 +300,7 @@
String jndi = getElementContent(getOptionalChild(resourceManager,
"res-jndi-name"));
// Make sure it is prefixed with java:
- if (!jndi.startsWith("java:/"))
+ if (jndi != null && !jndi.startsWith("java:/"))
jndi = "java:/"+jndi;
String url = getElementContent(getOptionalChild(resourceManager,
"res-url"));
1.6 +32 -21 jboss/src/main/org/jboss/metadata/ConfigurationMetaData.java
Index: ConfigurationMetaData.java
===================================================================
RCS file:
/products/cvs/ejboss/jboss/src/main/org/jboss/metadata/ConfigurationMetaData.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- ConfigurationMetaData.java 2000/10/25 23:04:15 1.5
+++ ConfigurationMetaData.java 2000/11/24 18:51:41 1.6
@@ -15,7 +15,7 @@
*
* @see <related>
* @author <a href="mailto:[EMAIL PROTECTED]">Sebastien Alborini</a>
- * @version $Revision: 1.5 $
+ * @version $Revision: 1.6 $
*/
public class ConfigurationMetaData extends MetaData {
@@ -33,8 +33,8 @@
public static final byte A_COMMIT_OPTION = 0;
public static final byte B_COMMIT_OPTION = 1;
public static final byte C_COMMIT_OPTION = 2;
+ public static final String[] commitOptionStrings = { "A", "B", "C" };
-
// Attributes ----------------------------------------------------
private String name;
private String containerInvoker;
@@ -93,41 +93,33 @@
// defined in standardjboss.xml
// set call logging
- callLogging =
Boolean.valueOf(getElementContent(getOptionalChild(element,
"call-logging"))).booleanValue();
+ callLogging =
Boolean.valueOf(getElementContent(getOptionalChild(element, "call-logging"),
String.valueOf(callLogging))).booleanValue();
// set the container invoker
- containerInvoker = getElementContent(getOptionalChild(element,
"container-invoker"));
+ containerInvoker = getElementContent(getOptionalChild(element,
"container-invoker"), containerInvoker);
// set the instance pool
- instancePool = getElementContent(getOptionalChild(element,
"instance-pool"));
+ instancePool = getElementContent(getOptionalChild(element,
"instance-pool"), instancePool);
// set the instance cache
- instanceCache = getElementContent(getOptionalChild(element,
"instance-cache"));
+ instanceCache = getElementContent(getOptionalChild(element,
"instance-cache"), instanceCache);
// set the persistence manager
- persistenceManager = getElementContent(getOptionalChild(element,
"persistence-manager"));
+ persistenceManager = getElementContent(getOptionalChild(element,
"persistence-manager"), persistenceManager);
// set the transaction manager
- transactionManager = getElementContent(getOptionalChild(element,
"transaction-manager"));
+ transactionManager = getElementContent(getOptionalChild(element,
"transaction-manager"), transactionManager);
// set the authentication module
- authenticationModule = getElementContent(getOptionalChild(element,
"authentication-module"));
+ authenticationModule = getElementContent(getOptionalChild(element,
"authentication-module"), authenticationModule);
// set the role mapping manager
- roleMappingManager = getElementContent(getOptionalChild(element,
"role-mapping-manager"));
+ roleMappingManager = getElementContent(getOptionalChild(element,
"role-mapping-manager"), roleMappingManager);
// set the commit option
- String commit = getElementContent(getOptionalChild(element,
"commit-option"));
+ String commit = getElementContent(getOptionalChild(element,
"commit-option"), commitOptionToString(commitOption));
- if (commit != null) {
- if (commit.equals("A")) {
- commitOption = A_COMMIT_OPTION;
- } else if (commit.equals("B")) {
- commitOption = B_COMMIT_OPTION;
- } else if (commit.equals("C")) {
- commitOption = C_COMMIT_OPTION;
- } else throw new DeploymentException("Invalid commit option");
- }
+ commitOption = stringToCommitOption(commit);
// the classes which can understand the following are dynamically
loaded during deployment :
// We save the Elements for them to use later
@@ -148,6 +140,25 @@
// Protected -----------------------------------------------------
// Private -------------------------------------------------------
-
+ private static String commitOptionToString(byte commitOption)
+ throws DeploymentException {
+
+ try {
+ return commitOptionStrings[commitOption];
+ } catch( ArrayIndexOutOfBoundsException e ) {
+ throw new DeploymentException("Invalid commit option: " +
commitOption);
+ }
+ }
+
+ private static byte stringToCommitOption(String commitOption)
+ throws DeploymentException {
+
+ for( byte i=0; i<commitOptionStrings.length; ++i )
+ if( commitOptionStrings[i].equals(commitOption) )
+ return i;
+
+ throw new DeploymentException("Invalid commit option: '" + commitOption +
"'");
+ }
+
// Inner classes -------------------------------------------------
}
1.10 +10 -4 jboss/src/main/org/jboss/metadata/MetaData.java
Index: MetaData.java
===================================================================
RCS file: /products/cvs/ejboss/jboss/src/main/org/jboss/metadata/MetaData.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- MetaData.java 2000/09/28 19:14:28 1.9
+++ MetaData.java 2000/11/24 18:51:41 1.10
@@ -22,7 +22,7 @@
*
* @see <related>
* @author <a href="mailto:[EMAIL PROTECTED]">Sebastien Alborini</a>
- * @version $Revision: 1.9 $
+ * @version $Revision: 1.10 $
*/
public abstract class MetaData implements XmlLoadable {
// Constants -----------------------------------------------------
@@ -88,16 +88,22 @@
}
public static String getElementContent(Element element) throws
DeploymentException {
- if (element == null) return null;
+
+ return getElementContent(element, null);
+ }
+
+ public static String getElementContent(Element element, String defaultStr)
throws DeploymentException {
+ if (element == null) return defaultStr;
NodeList children = element.getChildNodes();
if ((children.getLength() == 1) && (children.item(0).getNodeType() ==
Node.TEXT_NODE)) {
- return children.item(0).getNodeValue();
+ String result = children.item(0).getNodeValue();
+ return result == null ? null : result.trim();
} else {
return null;
}
}
-
+
// Constructors --------------------------------------------------