[jboss-cvs] JBossAS SVN: r83933 - in projects/metadata/trunk/src: main/resources/schema and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Feb 6 03:35:26 EST 2009
Author: jeff.zhang
Date: 2009-02-06 03:35:26 -0500 (Fri, 06 Feb 2009)
New Revision: 83933
Added:
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs60UnitTestCase.java
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testBasic.xml
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testLocalTxDsEverything.xml
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testMinimal.xml
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testNoTxDsEverything.xml
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testXaDsEverything.xml
Removed:
projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs50UnitTestCase.java
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testBasic.xml
projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testEverything.xml
Modified:
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceConnectionPropertyMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceDeploymentMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentGroup.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/NonXADataSourceDeploymentMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/SecurityMetaData.java
projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/XADataSourceDeploymentMetaData.java
projects/metadata/trunk/src/main/resources/schema/jboss-ds_6_0.xsd
Log:
[JBMETA-167] add coverage test for ds.xml
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceConnectionPropertyMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceConnectionPropertyMetaData.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceConnectionPropertyMetaData.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -39,16 +39,18 @@
{
private static final long serialVersionUID = 1444129514410015366L;
- @XmlAttribute(name="name")
+ //@XmlAttribute(name="name")
protected String name;
- @XmlValue
+ //@XmlValue
protected String value;
public String getName()
{
return name;
}
+
+ @XmlAttribute(name="name")
public void setName(String name)
{
this.name = name;
@@ -58,6 +60,7 @@
{
return value;
}
+ @XmlValue
public void setValue(String value)
{
this.value = value;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceDeploymentMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceDeploymentMetaData.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/DataSourceDeploymentMetaData.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -77,7 +77,7 @@
@XmlElement(name="share-prepared-statements")
private boolean sharePreparedStatements;
- @XmlElement(name="set-tx-query-timeout")
+ //@XmlElement(name="set-tx-query-timeout")
private boolean useQueryTimeout;
@XmlElement(name="query-timeout")
@@ -255,6 +255,7 @@
return useQueryTimeout;
}
+ @XmlElement(name="set-tx-query-timeout")
public void setUseQueryTimeout(boolean useQueryTimeout)
{
this.useQueryTimeout = useQueryTimeout;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentGroup.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentGroup.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentGroup.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -34,6 +34,7 @@
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
+import org.jboss.metadata.javaee.spec.JavaEEMetaDataConstants;
import org.jboss.xb.annotations.JBossXmlSchema;
/**
@@ -42,14 +43,14 @@
* @author <a href="weston.price at jboss.org">Weston Price</a>
* @author Scott.Stark at jboss.org
* @author Jeff Zhang
- * @version $Revision: $
+ * @version $Revision$
*/
- at XmlRootElement(name="datasources", namespace="")
+ at XmlRootElement(name="datasources", namespace=JavaEEMetaDataConstants.JBOSS_NS)
@JBossXmlSchema(
- xmlns={@XmlNs(namespaceURI = "", prefix = "jee")},
+ xmlns={@XmlNs(namespaceURI = JavaEEMetaDataConstants.JBOSS_NS, prefix = "jboss")},
ignoreUnresolvedFieldOrClass=false,
- namespace="",
- elementFormDefault=XmlNsForm.UNSET,
+ namespace=JavaEEMetaDataConstants.JBOSS_NS,
+ elementFormDefault=XmlNsForm.QUALIFIED,
normalizeSpace=true)
@XmlType(name="datasources", namespace="")
public class ManagedConnectionFactoryDeploymentGroup implements Serializable
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentMetaData.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/ManagedConnectionFactoryDeploymentMetaData.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -70,7 +70,7 @@
//@XmlElement(name="max-pool-size")
private int maxSize = 10;
- @XmlElement(name="blocking-timeout-millis")
+ //@XmlElement(name="blocking-timeout-millis")
private long blockingTimeoutMilliSeconds = 30000;
@XmlElement(name="idle-timeout-minutes")
@@ -105,17 +105,14 @@
@XmlElement(name="statistics-formatter")
private String statisticsFormatter = "org.jboss.resource.statistic.pool.JBossDefaultSubPoolStatisticFormatter";
- @XmlElement(name="isSameRM-override-value")
+ //@XmlElement(name="isSameRM-override-value")
private Boolean isSameRMOverrideValue = Boolean.FALSE;
// is always true now and left here for the xml binding
@Deprecated
- @XmlJavaTypeAdapter(ManagedConnectionEmptyContentAdapter.class)
- @XmlElement(name="track-connection-by-tx")
private Boolean trackConnectionByTransaction;
- @XmlJavaTypeAdapter(ManagedConnectionEmptyContentAdapter.class)
- @XmlElement(name="interleaving")
+
private Boolean interleaving;
/** The transactionSupportMetaData */
@@ -130,7 +127,7 @@
private SecurityMetaData securityMetaData;
- @XmlElement(name="depends")
+ //@XmlElement(name="depends")
private List<String> dependsNames;// = new ArrayList<String>();
//@XmlTransient
@@ -334,6 +331,7 @@
*
* @param dependsNames The dependsNames to set.
*/
+ @XmlElement(name="depends")
public void setDependsNames(List<String> dependsNames)
{
this.dependsNames = dependsNames;
@@ -367,6 +365,7 @@
}
+ @XmlElement(name="blocking-timeout-millis")
public void setBlockingTimeoutMilliSeconds(long blockTimeout)
{
this.blockingTimeoutMilliSeconds = blockTimeout;
@@ -456,6 +455,7 @@
return isSameRMOverrideValue;
}
+ @XmlElement(name="isSameRM-override-value")
public void setIsSameRMOverrideValue(Boolean isSameRMOverrideValue)
{
this.isSameRMOverrideValue = isSameRMOverrideValue;
@@ -468,6 +468,8 @@
}
@Deprecated
+ @XmlJavaTypeAdapter(ManagedConnectionEmptyContentAdapter.class)
+ @XmlElement(name="track-connection-by-tx")
public void setTrackConnectionByTransaction(Boolean trackConnectionByTransaction)
{
if(Boolean.TRUE == getLocalTransactions() && !Boolean.TRUE.equals(trackConnectionByTransaction))
@@ -480,6 +482,8 @@
return interleaving == Boolean.TRUE && !Boolean.TRUE.equals(getLocalTransactions());
}
+ @XmlJavaTypeAdapter(ManagedConnectionEmptyContentAdapter.class)
+ @XmlElement(name="interleaving")
public void setInterleaving(Boolean interleaving)
{
this.interleaving = interleaving;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/NonXADataSourceDeploymentMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/NonXADataSourceDeploymentMetaData.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/NonXADataSourceDeploymentMetaData.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -52,7 +52,7 @@
@XmlElement(name="connection-url", required=true)
private String connectionUrl;
- @XmlElement(name="connection-property")
+ //@XmlElement(name="connection-property")
private List<DataSourceConnectionPropertyMetaData> connectionProperties = new ArrayList<DataSourceConnectionPropertyMetaData>();
public String getConnectionUrl()
@@ -79,7 +79,8 @@
{
return this.connectionProperties;
}
-
+
+ @XmlElement(name="connection-property")
public void setConnectionProperties(List<DataSourceConnectionPropertyMetaData> connectionProperties)
{
this.connectionProperties = connectionProperties;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/SecurityMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/SecurityMetaData.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/SecurityMetaData.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -40,7 +40,7 @@
/** The serialVersionUID */
private static final long serialVersionUID = 8939054836116025885L;
- @XmlValue
+ //@XmlValue
private String domain;
protected SecurityDeploymentType type;
@@ -62,6 +62,7 @@
{
return domain;
}
+ @XmlValue
public void setDomain(String domain)
{
this.domain = domain;
Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/XADataSourceDeploymentMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/XADataSourceDeploymentMetaData.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/rar/jboss/mcf/XADataSourceDeploymentMetaData.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -53,10 +53,8 @@
private static final String RAR_NAME = "jboss-xa-jdbc.rar";
- @XmlElement(name="xa-datasource-class")
private String xaDataSourceClass;
- @XmlElement(name="xa-datasource-property")
private List<XAConnectionPropertyMetaData> xaDataSourceProperties = new ArrayList<XAConnectionPropertyMetaData>();
@XmlElement(name="url-property")
@@ -75,6 +73,7 @@
return xaDataSourceClass;
}
+ @XmlElement(name="xa-datasource-class")
public void setXaDataSourceClass(String xaDataSourceClass)
{
this.xaDataSourceClass = xaDataSourceClass;
@@ -102,6 +101,7 @@
return this.xaDataSourceProperties;
}
+ @XmlElement(name="xa-datasource-property")
public void setXaDataSourceProperties(List<XAConnectionPropertyMetaData> xaDataSourceProperties)
{
this.xaDataSourceProperties = xaDataSourceProperties;
Modified: projects/metadata/trunk/src/main/resources/schema/jboss-ds_6_0.xsd
===================================================================
--- projects/metadata/trunk/src/main/resources/schema/jboss-ds_6_0.xsd 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/main/resources/schema/jboss-ds_6_0.xsd 2009-02-06 08:35:26 UTC (rev 83933)
@@ -191,10 +191,14 @@
type="jboss:type-mappingType"
minOccurs="0"
maxOccurs="1"/>
+ <xsd:element name="depends"
+ type="jboss:dependsType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:group>
- <xsd:complexType name="securityType">
+ <xsd:group name="securityGroup">
<xsd:annotation>
<xsd:documentation>
Security type
@@ -202,14 +206,14 @@
</xsd:annotation>
<xsd:choice>
<xsd:element name="application-managed-security"
- type="javaee:emptyType">
+ type="javaee:emptyType" minOccurs="0">
</xsd:element>
<xsd:element name="security-domain"
- type="jboss:security-domainType"/>
+ type="jboss:security-domainType" minOccurs="0"/>
<xsd:element name="security-domain-and-application"
- type="jboss:security-domain-and-applicationType"/>
+ type="jboss:security-domain-and-applicationType" minOccurs="0"/>
</xsd:choice>
- </xsd:complexType>
+ </xsd:group>
<!--
@@ -230,8 +234,7 @@
type="javaee:emptyType" minOccurs="0" maxOccurs="1"/>
<xsd:group ref="jboss:connectionFactoryGroup"/>
- <xsd:element name="security"
- type="jboss:securityType" minOccurs="0" maxOccurs="1"/>
+ <xsd:group ref="jboss:securityGroup"/>
<xsd:group ref="jboss:connectionPoolGroup"/>
<xsd:element name="no-tx-separate-pools"
@@ -255,8 +258,7 @@
<xsd:element name="jndi-name"
type="jboss:jndi-nameType"/>
<xsd:group ref="jboss:connectionFactoryGroup"/>
- <xsd:element name="security"
- type="jboss:securityType" minOccurs="0" maxOccurs="1"/>
+ <xsd:group ref="jboss:securityGroup"/>
<xsd:group ref="jboss:connectionPoolGroup"/>
<xsd:element name="prefill"
type="jboss:prefillType" minOccurs="0" maxOccurs="1"/>
@@ -280,8 +282,7 @@
<xsd:element name="connection-property"
type="jboss:connection-propertyType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:group ref="jboss:userGroup"/>
- <xsd:element name="security"
- type="jboss:securityType" minOccurs="0" maxOccurs="1"/>
+ <xsd:group ref="jboss:securityGroup"/>
<xsd:group ref="jboss:connectionPoolGroup"/>
<xsd:element name="validate-on-match"
@@ -316,8 +317,7 @@
<xsd:element name="connection-property"
type="jboss:connection-propertyType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:group ref="jboss:userGroup"/>
- <xsd:element name="security"
- type="jboss:securityType" minOccurs="0" maxOccurs="1"/>
+ <xsd:group ref="jboss:securityGroup"/>
<xsd:group ref="jboss:connectionPoolGroup"/>
<xsd:element name="validate-on-match"
@@ -348,8 +348,7 @@
type="jboss:xa-datasource-classType"/>
<xsd:element name="xa-datasource-property"
type="jboss:xa-datasource-propertyType" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="connection-url"
- type="jboss:connection-urlType"/>
+
<xsd:element name="url-property"
type="jboss:url-propertyType" minOccurs="0" maxOccurs="1"/>
<xsd:group ref="jboss:urlGroup"/>
@@ -360,8 +359,7 @@
type="jboss:transaction-isolationType" minOccurs="0" maxOccurs="1"/>
<xsd:group ref="jboss:userGroup"/>
- <xsd:element name="security"
- type="jboss:securityType" minOccurs="0" maxOccurs="1"/>
+ <xsd:group ref="jboss:securityGroup"/>
<xsd:group ref="jboss:connectionPoolGroup"/>
<xsd:element name="validate-on-match"
@@ -515,13 +513,14 @@
Ex:
<security-domain>HsqlDbRealm</security-domain>
- -->
+
<xsd:complexType name="security-domainType">
<xsd:simpleContent>
<xsd:restriction base="javaee:string"/>
</xsd:simpleContent>
</xsd:complexType>
-
+ -->
+
<!--
Indicates that either app supplied parameters (such as from
getConnection(user, pw)) or Subject (from security domain) are used to
Deleted: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs50UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs50UnitTestCase.java 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs50UnitTestCase.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -1,86 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2006, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
-package org.jboss.test.metadata.rar;
-
-import org.jboss.metadata.rar.jboss.mcf.LocalDataSourceDeploymentMetaData;
-import org.jboss.metadata.rar.jboss.mcf.ManagedConnectionFactoryDeploymentGroup;
-import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
-import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
-import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
-
-public class JcaDs50UnitTestCase extends AbstractJavaEEMetaDataTest
-{
- public static SchemaBindingResolver initResolver()
- {
- DefaultSchemaResolver resolver = new DefaultSchemaResolver();
- //resolver.addClassBinding("", ManagedConnectionFactoryDeploymentGroup.class);
- resolver.addClassBindingForLocation("jboss-ds_5_0.dtd", ManagedConnectionFactoryDeploymentGroup.class);
- return resolver;
- }
-
- public JcaDs50UnitTestCase(String name) {
- super(name);
- }
-
-
- public void testBasic() throws Exception
- {
-
- ManagedConnectionFactoryDeploymentGroup ds = unmarshal(ManagedConnectionFactoryDeploymentGroup.class);
- assertNotNull(ds);
- assertEquals(ds.getDeployments().size(), 1);
- assertNotNull(ds.getDeployments().get(0));
- assertTrue(ds.getDeployments().get(0) instanceof LocalDataSourceDeploymentMetaData);
- LocalDataSourceDeploymentMetaData ld = (LocalDataSourceDeploymentMetaData)ds.getDeployments().get(0);
- assertNotNull(ld);
-
- }
-
- public void testEverything() throws Exception
- {
-
- ManagedConnectionFactoryDeploymentGroup ds = unmarshal(ManagedConnectionFactoryDeploymentGroup.class);
- assertNotNull(ds);
- assertEquals(ds.getDeployments().size(), 1);
- assertNotNull(ds.getDeployments().get(0));
- assertTrue(ds.getDeployments().get(0) instanceof LocalDataSourceDeploymentMetaData);
- LocalDataSourceDeploymentMetaData ld = (LocalDataSourceDeploymentMetaData)ds.getDeployments().get(0);
- assertEquals(ld.getJndiName(), "DefaultDS");
- assertTrue(ld.getConnectionUrl().startsWith("jdbc"));
- assertEquals(ld.getConnectionProperties().size(), 0);
- assertEquals(ld.getDriverClass(), "org.hsqldb.jdbcDriver");
- assertEquals(ld.getUserName(), "sa");
- assertEquals(ld.getPassWord(), "");
- assertEquals(ld.getMinSize(), 5);
- assertEquals(ld.getMaxSize(), 20);
- assertEquals(ld.getIdleTimeoutMinutes(), 0);
- assertTrue(ld.getNewConnectionSQL().endsWith("sql"));
- assertTrue(ld.getValidConnectionCheckerClassName().endsWith("Checker"));
- assertTrue(ld.getCheckValidConnectionSQL().startsWith("select"));
- assertTrue(ld.getExceptionSorterClassName().endsWith("Sorter"));
- assertEquals(ld.getTrackStatements(), "");
- assertEquals(ld.getPreparedStatementCacheSize(), 32);
-
-
- }
-}
-
Copied: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs60UnitTestCase.java (from rev 83921, projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs50UnitTestCase.java)
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs60UnitTestCase.java (rev 0)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/rar/JcaDs60UnitTestCase.java 2009-02-06 08:35:26 UTC (rev 83933)
@@ -0,0 +1,236 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.metadata.rar;
+
+import org.jboss.metadata.rar.jboss.mcf.DataSourceDeploymentMetaData;
+import org.jboss.metadata.rar.jboss.mcf.LocalDataSourceDeploymentMetaData;
+import org.jboss.metadata.rar.jboss.mcf.ManagedConnectionFactoryDeploymentGroup;
+import org.jboss.metadata.rar.jboss.mcf.ManagedConnectionFactoryDeploymentMetaData;
+import org.jboss.metadata.rar.jboss.mcf.NonXADataSourceDeploymentMetaData;
+import org.jboss.metadata.rar.jboss.mcf.XADataSourceDeploymentMetaData;
+import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+
+public class JcaDs60UnitTestCase extends AbstractJavaEEMetaDataTest
+{
+ public static SchemaBindingResolver initResolver()
+ {
+ DefaultSchemaResolver resolver = new DefaultSchemaResolver();
+ //resolver.addClassBinding("", ManagedConnectionFactoryDeploymentGroup.class);
+ //resolver.addClassBindingForLocation("jboss-ds_5_0.dtd", ManagedConnectionFactoryDeploymentGroup.class);
+ resolver.addClassBindingForLocation("jboss-ds_6_0.xsd", ManagedConnectionFactoryDeploymentGroup.class);
+ return resolver;
+ }
+
+ public JcaDs60UnitTestCase(String name) {
+ super(name);
+ }
+
+ protected ManagedConnectionFactoryDeploymentGroup unmarshalMCFD() throws Exception
+ {
+ return unmarshal(ManagedConnectionFactoryDeploymentGroup.class);
+ }
+
+ /**
+ * test a minimal local-tx-datasource
+ */
+ public void testMinimal() throws Exception
+ {
+
+ ManagedConnectionFactoryDeploymentGroup ds = unmarshalMCFD();
+ assertNotNull(ds);
+ assertEquals(ds.getDeployments().size(), 1);
+ assertNotNull(ds.getDeployments().get(0));
+ assertTrue(ds.getDeployments().get(0) instanceof LocalDataSourceDeploymentMetaData);
+ LocalDataSourceDeploymentMetaData ld = (LocalDataSourceDeploymentMetaData)ds.getDeployments().get(0);
+ assertTestNoXAMinimal(ld);
+ }
+
+ /**
+ * test a basic local-tx-datasource, for example hsql-ds.xml
+ */
+ public void testBasic() throws Exception
+ {
+
+ ManagedConnectionFactoryDeploymentGroup ds = unmarshalMCFD();
+ LocalDataSourceDeploymentMetaData ld = (LocalDataSourceDeploymentMetaData)ds.getDeployments().get(0);
+ assertTestNoXAMinimal(ld);
+ assertEquals(ld.getConnectionProperties().size(), 0);
+ assertEquals(ld.getUserName(), "sa");
+ assertEquals(ld.getPassWord(), "");
+
+ assertEquals(ld.getSecurityMetaData().getDomain(), "HsqlDbRealm");
+ assertEquals(ld.getMinSize(), 5);
+ assertEquals(ld.getMaxSize(), 20);
+ assertEquals(ld.getIdleTimeoutMinutes(), 0);
+
+
+ assertEquals(ld.getTrackStatements(), "");
+ assertEquals(ld.getPreparedStatementCacheSize(), 32);
+ assertNotNull(ld.getDbmsMetaData());
+ assertEquals(ld.getDbmsMetaData().getTypeMapping(), "Hypersonic SQL");
+ }
+
+ /**
+ * test a everything of no-tx-datasource
+ */
+ public void testNoTxDsEverything() throws Exception
+ {
+ ManagedConnectionFactoryDeploymentGroup ds = unmarshalMCFD();
+ NonXADataSourceDeploymentMetaData ld = (NonXADataSourceDeploymentMetaData)ds.getDeployments().get(0);
+ assertTestNoXAMinimal(ld);
+
+ assertFalse(ld.isUseJavaContext());
+ assertTestUrl(ld);
+
+ assertEquals(ld.getConnectionProperties().size(), 2);
+ assertTrue(ld.getConnectionProperties().get(0).getName().equals("char.encoding"));
+ assertTrue(ld.getConnectionProperties().get(1).getValue().equals("+8"));
+ assertTestUser(ld);
+ assertEquals(ld.getSecurityMetaData().getDomain(), "HsqlDbRealm");
+ assertTestConnectionPool(ld);
+ assertTrue(ld.isValidateOnMatch());
+ assertTestDatasource(ld);
+
+ assertTestAddition(ld);
+ assertTestOption(ld);
+ }
+
+ /**
+ * test a everything of local-tx-datasource
+ */
+ public void testLocalTxDsEverything() throws Exception
+ {
+ ManagedConnectionFactoryDeploymentGroup ds = unmarshalMCFD();
+ LocalDataSourceDeploymentMetaData ld = (LocalDataSourceDeploymentMetaData)ds.getDeployments().get(0);
+ assertTestNoXAMinimal(ld);
+
+ assertFalse(ld.isUseJavaContext());
+ assertTestUrl(ld);
+ assertNotNull(ld.getTransactionIsolation());
+ assertEquals(ld.getConnectionProperties().size(), 2);
+ assertTrue(ld.getConnectionProperties().get(0).getName().equals("char.encoding"));
+ assertTrue(ld.getConnectionProperties().get(1).getValue().equals("+8"));
+ assertTestUser(ld);
+ assertEquals(ld.getSecurityMetaData().getDomain(), "HsqlDbRealm");
+ assertTestConnectionPool(ld);
+ assertTrue(ld.isValidateOnMatch());
+ //assertTrue(ld.getNoTxSeparatePools());
+ assertTestDatasource(ld);
+
+ assertTestAddition(ld);
+ assertTestOption(ld);
+ }
+
+ /**
+ * test a everything of xa-datasource
+ */
+ public void testXaDsEverything() throws Exception
+ {
+ ManagedConnectionFactoryDeploymentGroup ds = unmarshalMCFD();
+ XADataSourceDeploymentMetaData ld = (XADataSourceDeploymentMetaData)ds.getDeployments().get(0);
+
+ assertFalse(ld.isUseJavaContext());
+ //assertTrue(ld.getTrackConnectionByTransaction());
+ assertTrue(ld.isInterleaving());
+
+ assertTrue(ld.getXaDataSourceClass().startsWith("oracle"));
+ assertEquals(ld.getXaDataSourceProperties().size(), 3);
+ assertEquals(ld.getXaDataSourceProperties().get(0).getName(), "URL");
+ assertEquals(ld.getXaDataSourceProperties().get(2).getValue(), "tiger");
+ assertTestUrl(ld);
+
+ assertFalse(ld.getIsSameRMOverrideValue());
+ //transaction-isolation
+
+ assertTestUser(ld);
+ assertEquals(ld.getSecurityMetaData().getDomain(), "HsqlDbRealm");
+ assertTestConnectionPool(ld);
+ assertTrue(ld.isValidateOnMatch());
+ //assertTrue(ld.getNoTxSeparatePools());
+ assertEquals(ld.getXaResourceTimeout(), 300);
+ assertTestDatasource(ld);
+
+ assertTestAddition(ld);
+ assertTestOption(ld);
+ }
+
+ private void assertTestUrl(DataSourceDeploymentMetaData ld)
+ {
+ assertEquals(ld.getUrlDelimiter(), "|");
+ assertTrue(ld.getUrlSelectorStrategyClassName().endsWith("Stratery"));
+ }
+
+ private void assertTestUser(DataSourceDeploymentMetaData ld)
+ {
+ assertEquals(ld.getUserName(), "sa");
+ assertEquals(ld.getPassWord(), "");
+ }
+
+ private void assertTestConnectionPool(ManagedConnectionFactoryDeploymentMetaData ld)
+ {
+ assertEquals(ld.getMinSize(), 5);
+ assertEquals(ld.getMaxSize(), 20);
+ assertEquals(ld.getBlockingTimeoutMilliSeconds(), 30000);
+ assertTrue(ld.isBackgroundValidation());
+ assertEquals(ld.getBackgroundValidationMillis(), 3000);
+ assertEquals(ld.getIdleTimeoutMinutes(), 0);
+ assertEquals(ld.getAllocationRetry(), 0);
+ assertEquals(ld.getAllocationRetryWaitMillis(), 5000);
+ }
+
+ private void assertTestDatasource(DataSourceDeploymentMetaData ld)
+ {
+ assertTrue(ld.getNewConnectionSQL().endsWith("sql"));
+ assertTrue(ld.getValidConnectionCheckerClassName().endsWith("Checker"));
+ assertTrue(ld.getCheckValidConnectionSQL().startsWith("select"));
+ assertTrue(ld.getExceptionSorterClassName().endsWith("Sorter"));
+ assertTrue(ld.getStaleConnectionCheckerClassName().endsWith("Checker"));
+ }
+
+ private void assertTestAddition(DataSourceDeploymentMetaData ld)
+ {
+ assertEquals(ld.getPreparedStatementCacheSize(), 32);
+ assertTrue(ld.isSharePreparedStatements());
+ assertTrue(ld.isUseQueryTimeout());
+ assertEquals(ld.getQueryTimeout(), 300);
+ assertEquals(ld.getUseTryLock(), 300000);
+ assertEquals(ld.getTrackStatements(), "");
+ }
+
+ private void assertTestOption(ManagedConnectionFactoryDeploymentMetaData ld)
+ {
+ assertEquals(ld.getTypeMapping(), "Hypersonic SQL");
+ assertEquals(ld.getDependsNames().size(), 2);
+ assertTrue(ld.getDependsNames().get(0).startsWith("jboss"));
+ }
+
+ protected void assertTestNoXAMinimal(NonXADataSourceDeploymentMetaData xad) throws Exception
+ {
+ assertNotNull(xad);
+ assertEquals(xad.getJndiName(), "DefaultDS");
+ assertTrue(xad.getConnectionUrl().startsWith("jdbc"));
+ assertEquals(xad.getDriverClass(), "org.hsqldb.jdbcDriver");
+ }
+}
+
Deleted: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testBasic.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testBasic.xml 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testBasic.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -1,95 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE datasources PUBLIC
-"-//JBoss//DTD JBOSS JCA Config 5.0//EN"
-"http://www.jboss.org/j2ee/dtd/jboss-ds_5_0.dtd">
-
-<datasources>
- <local-tx-datasource>
-
- <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
- <!-- Datasources are not available outside the virtual machine -->
- <jndi-name>DefaultDS</jndi-name>
-
- <!-- For server mode db, allowing other processes to use hsqldb over tcp.
- This requires the org.jboss.jdbc.HypersonicDatabase mbean.
- <connection-url>jdbc:hsqldb:hsql://${jboss.bind.address}:1701</connection-url>
- -->
- <!-- For totally in-memory db, not saved when jboss stops.
- The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
- <connection-url>jdbc:hsqldb:.</connection-url>
- -->
- <!-- For in-process persistent db, saved when jboss stops.
- The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
- -->
- <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>
-
- <!-- The driver class -->
- <driver-class>org.hsqldb.jdbcDriver</driver-class>
-
- <!-- The login and password -->
- <user-name>sa</user-name>
- <password></password>
-
-
- <!-- Use the getConnection(user, pw) for logins
- <application-managed-security/>
- -->
-
- <!-- Use the security domain defined in conf/login-config.xml -->
- <security-domain>HsqlDbRealm</security-domain>
-
- <!-- Use the security domain defined in conf/login-config.xml or the
- getConnection(user, pw) for logins. The security domain takes precedence.
- <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
- -->
-
- <!--example of how to specify class that determines if exception means connection should be destroyed-->
- <!--exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name-->
-
- <!-- this will be run before a managed connection is removed from the pool for use by a client-->
- <!--<check-valid-connection-sql>select * from something</check-valid-connection-sql> -->
-
- <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
- <min-pool-size>5</min-pool-size>
-
- <!-- The maximum connections in a pool/sub-pool -->
- <max-pool-size>20</max-pool-size>
-
- <!-- The time before an unused connection is destroyed -->
- <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
- <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
- <idle-timeout-minutes>0</idle-timeout-minutes>
-
- <!-- sql to call when connection is created
- <new-connection-sql>some arbitrary sql</new-connection-sql>
- -->
-
- <!-- sql to call on an existing pooled connection when it is obtained from pool
- <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
- -->
-
- <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool
- <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
- -->
-
- <!-- Whether to check all statements are closed when the connection is returned to the pool,
- this is a debugging feature that should be turned off in production -->
- <track-statements/>
-
- <!-- HSQL DB benefits from prepared statement caching -->
- <prepared-statement-cache-size>32</prepared-statement-cache-size>
-
- <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
- <metadata>
- <type-mapping>Hypersonic SQL</type-mapping>
- </metadata>
-
- <!--
- When using in-process (standalone) mode
- <depends>jboss:service=Hypersonic,database=localDB</depends>
- Uncomment when using hsqldb in server mode
- <depends>jboss:service=Hypersonic</depends>
- -->
- </local-tx-datasource>
-
-</datasources>
Deleted: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testEverything.xml 2009-02-06 07:09:29 UTC (rev 83932)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testEverything.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE datasources PUBLIC
-"-//JBoss//DTD JBOSS JCA Config 5.0//EN"
-"http://www.jboss.org/j2ee/dtd/jboss-ds_5_0.dtd">
-
-<datasources>
- <local-tx-datasource>
-
- <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
- <!-- Datasources are not available outside the virtual machine -->
- <jndi-name>DefaultDS</jndi-name>
-
- <!-- For server mode db, allowing other processes to use hsqldb over tcp.
- This requires the org.jboss.jdbc.HypersonicDatabase mbean.
- <connection-url>jdbc:hsqldb:hsql://${jboss.bind.address}:1701</connection-url>
- -->
- <!-- For totally in-memory db, not saved when jboss stops.
- The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
- <connection-url>jdbc:hsqldb:.</connection-url>
- -->
- <!-- For in-process persistent db, saved when jboss stops.
- The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
- -->
- <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>
-
- <!-- The driver class -->
- <driver-class>org.hsqldb.jdbcDriver</driver-class>
-
- <!-- The login and password -->
- <user-name>sa</user-name>
- <password></password>
-
-
- <!-- Use the getConnection(user, pw) for logins
- <application-managed-security/>
- -->
-
- <!-- Use the security domain defined in conf/login-config.xml -->
- <security-domain>HsqlDbRealm</security-domain>
-
- <!-- Use the security domain defined in conf/login-config.xml or the
- getConnection(user, pw) for logins. The security domain takes precedence.
- <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
- -->
-
-
- <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
- <min-pool-size>5</min-pool-size>
-
- <!-- The maximum connections in a pool/sub-pool -->
- <max-pool-size>20</max-pool-size>
-
- <!-- The time before an unused connection is destroyed -->
- <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
- <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
- <idle-timeout-minutes>0</idle-timeout-minutes>
-
- <!-- sql to call when connection is created -->
- <new-connection-sql>some arbitrary sql</new-connection-sql>
-
-
- <!-- this will be run before a managed connection is removed from the pool for use by a client-->
- <check-valid-connection-sql>select * from something</check-valid-connection-sql>
-
-
- <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool -->
- <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
-
- <!--example of how to specify class that determines if exception means connection should be destroyed-->
- <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name>
-
-
- <!-- Whether to check all statements are closed when the connection is returned to the pool,
- this is a debugging feature that should be turned off in production -->
- <track-statements/>
-
- <!-- HSQL DB benefits from prepared statement caching -->
- <prepared-statement-cache-size>32</prepared-statement-cache-size>
-
- <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
- <metadata>
- <type-mapping>Hypersonic SQL</type-mapping>
- </metadata>
-
- <!--
- When using in-process (standalone) mode
- <depends>jboss:service=Hypersonic,database=localDB</depends>
- Uncomment when using hsqldb in server mode
- <depends>jboss:service=Hypersonic</depends>
- -->
- </local-tx-datasource>
-
-</datasources>
Copied: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testBasic.xml (from rev 83921, projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs50_testBasic.xml)
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testBasic.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testBasic.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<datasources xmlns="http://www.jboss.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
+ http://www.jboss.org/j2ee/schema/jboss-ds_6_0.xsd">
+ <local-tx-datasource>
+
+ <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
+ <!-- Datasources are not available outside the virtual machine -->
+ <jndi-name>DefaultDS</jndi-name>
+
+ <!-- For in-process persistent db, saved when jboss stops.
+ The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
+ -->
+ <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>
+
+ <!-- The driver class -->
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+
+ <!-- The login and password -->
+ <user-name>sa</user-name>
+ <password></password>
+
+
+ <!-- Use the getConnection(user, pw) for logins
+ <application-managed-security/>
+ -->
+
+ <!-- Use the security domain defined in conf/login-config.xml -->
+ <security-domain>HsqlDbRealm</security-domain>
+
+ <!-- Use the security domain defined in conf/login-config.xml or the
+ getConnection(user, pw) for logins. The security domain takes precedence.
+ <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
+ -->
+
+ <!--example of how to specify class that determines if exception means connection should be destroyed-->
+ <!--exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name-->
+
+ <!-- this will be run before a managed connection is removed from the pool for use by a client-->
+ <!--<check-valid-connection-sql>select * from something</check-valid-connection-sql> -->
+
+ <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
+ <min-pool-size>5</min-pool-size>
+
+ <!-- The maximum connections in a pool/sub-pool -->
+ <max-pool-size>20</max-pool-size>
+
+ <!-- The time before an unused connection is destroyed -->
+ <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
+ <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+
+ <!-- sql to call when connection is created
+ <new-connection-sql>some arbitrary sql</new-connection-sql>
+ -->
+
+ <!-- sql to call on an existing pooled connection when it is obtained from pool
+ <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
+ -->
+
+ <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool
+ <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
+ -->
+
+ <!-- Whether to check all statements are closed when the connection is returned to the pool,
+ this is a debugging feature that should be turned off in production -->
+ <track-statements/>
+
+ <!-- HSQL DB benefits from prepared statement caching -->
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+
+ <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
+ <metadata>
+ <type-mapping>Hypersonic SQL</type-mapping>
+ </metadata>
+
+ <!--
+ When using in-process (standalone) mode
+ <depends>jboss:service=Hypersonic,database=localDB</depends>
+ Uncomment when using hsqldb in server mode
+ <depends>jboss:service=Hypersonic</depends>
+ -->
+ </local-tx-datasource>
+
+</datasources>
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testLocalTxDsEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testLocalTxDsEverything.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testLocalTxDsEverything.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<datasources xmlns="http://www.jboss.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
+ http://www.jboss.org/j2ee/schema/jboss-ds_6_0.xsd">
+ <local-tx-datasource>
+
+ <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
+ <!-- Datasources are not available outside the virtual machine -->
+ <jndi-name>DefaultDS</jndi-name>
+
+ <use-java-context>false</use-java-context>
+
+ <!-- For in-process persistent db, saved when jboss stops.
+ The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
+ -->
+ <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>
+
+ <url-delimiter>|</url-delimiter>
+
+ <url-selector-strategy-class-name>org.jboss.jca.UrlStratery</url-selector-strategy-class-name>
+
+ <!-- The driver class -->
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+
+ <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
+
+ <connection-property name="char.encoding">UTF-8</connection-property>
+ <connection-property name="time.zone">+8</connection-property>
+
+ <!-- The login and password -->
+ <user-name>sa</user-name>
+ <password></password>
+
+
+ <!-- Use the getConnection(user, pw) for logins
+ <application-managed-security/>
+ -->
+
+ <!-- Use the security domain defined in conf/login-config.xml -->
+ <security-domain>HsqlDbRealm</security-domain>
+
+ <!-- Use the security domain defined in conf/login-config.xml or the
+ getConnection(user, pw) for logins. The security domain takes precedence.
+ <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
+ -->
+
+
+ <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
+ <min-pool-size>5</min-pool-size>
+
+ <!-- The maximum connections in a pool/sub-pool -->
+ <max-pool-size>20</max-pool-size>
+
+ <blocking-timeout-millis>30000</blocking-timeout-millis>
+
+ <background-validation>true</background-validation>
+ <background-validation-millis>3000</background-validation-millis>
+
+ <!-- The time before an unused connection is destroyed -->
+ <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
+ <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+
+ <allocation-retry>0</allocation-retry>
+ <allocation-retry-wait-millis>5000</allocation-retry-wait-millis>
+
+ <validate-on-match>true</validate-on-match>
+ <no-tx-separate-pools/>
+
+ <!-- sql to call when connection is created -->
+ <new-connection-sql>some arbitrary sql</new-connection-sql>
+
+
+ <!-- this will be run before a managed connection is removed from the pool for use by a client-->
+ <check-valid-connection-sql>select * from something</check-valid-connection-sql>
+
+
+ <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool -->
+ <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
+
+ <!--example of how to specify class that determines if exception means connection should be destroyed-->
+ <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name>
+ <stale-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.StaleConnectionChecker</stale-connection-checker-class-name>
+
+ <!-- Whether to check all statements are closed when the connection is returned to the pool,
+ this is a debugging feature that should be turned off in production -->
+ <track-statements/>
+
+ <prefill>true</prefill>
+
+ <!-- HSQL DB benefits from prepared statement caching -->
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+ <share-prepared-statements>true</share-prepared-statements>
+
+ <set-tx-query-timeout>true</set-tx-query-timeout>
+
+ <query-timeout>300</query-timeout>
+ <use-try-lock>300000</use-try-lock>
+
+ <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
+ <type-mapping>Hypersonic SQL</type-mapping>
+
+ <!--
+ When using in-process (standalone) mode
+ Uncomment when using hsqldb in server mode
+ -->
+
+ <depends>jboss:service=Hypersonic,database=localDB</depends>
+ <depends>jboss:service=Hypersonic</depends>
+ </local-tx-datasource>
+
+</datasources>
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testMinimal.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testMinimal.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testMinimal.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<datasources xmlns="http://www.jboss.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
+ http://www.jboss.org/j2ee/schema/jboss-ds_6_0.xsd">
+ <local-tx-datasource>
+ <jndi-name>DefaultDS</jndi-name>
+ <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+ </local-tx-datasource>
+</datasources>
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testNoTxDsEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testNoTxDsEverything.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testNoTxDsEverything.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<datasources xmlns="http://www.jboss.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
+ http://www.jboss.org/j2ee/schema/jboss-ds_6_0.xsd">
+ <no-tx-datasource>
+
+ <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
+ <!-- Datasources are not available outside the virtual machine -->
+ <jndi-name>DefaultDS</jndi-name>
+
+ <use-java-context>false</use-java-context>
+
+ <!-- For in-process persistent db, saved when jboss stops.
+ The org.jboss.jdbc.HypersonicDatabase mbean is required for proper db shutdown
+ -->
+ <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>
+
+ <url-delimiter>|</url-delimiter>
+
+ <url-selector-strategy-class-name>org.jboss.jca.UrlStratery</url-selector-strategy-class-name>
+
+ <!-- The driver class -->
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+
+ <connection-property name="char.encoding">UTF-8</connection-property>
+ <connection-property name="time.zone">+8</connection-property>
+
+ <!-- The login and password -->
+ <user-name>sa</user-name>
+ <password></password>
+
+
+ <!-- Use the getConnection(user, pw) for logins
+ <application-managed-security/>
+ -->
+
+ <!-- Use the security domain defined in conf/login-config.xml -->
+ <security-domain>HsqlDbRealm</security-domain>
+
+ <!-- Use the security domain defined in conf/login-config.xml or the
+ getConnection(user, pw) for logins. The security domain takes precedence.
+ <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
+ -->
+
+
+ <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
+ <min-pool-size>5</min-pool-size>
+
+ <!-- The maximum connections in a pool/sub-pool -->
+ <max-pool-size>20</max-pool-size>
+
+ <blocking-timeout-millis>30000</blocking-timeout-millis>
+
+ <background-validation>true</background-validation>
+ <background-validation-millis>3000</background-validation-millis>
+
+ <!-- The time before an unused connection is destroyed -->
+ <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
+ <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+
+ <allocation-retry>0</allocation-retry>
+ <allocation-retry-wait-millis>5000</allocation-retry-wait-millis>
+
+ <validate-on-match>true</validate-on-match>
+
+ <!-- sql to call when connection is created -->
+ <new-connection-sql>some arbitrary sql</new-connection-sql>
+
+
+ <!-- this will be run before a managed connection is removed from the pool for use by a client-->
+ <check-valid-connection-sql>select * from something</check-valid-connection-sql>
+
+
+ <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool -->
+ <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
+
+ <!--example of how to specify class that determines if exception means connection should be destroyed-->
+ <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name>
+ <stale-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.StaleConnectionChecker</stale-connection-checker-class-name>
+
+ <!-- Whether to check all statements are closed when the connection is returned to the pool,
+ this is a debugging feature that should be turned off in production -->
+ <track-statements/>
+
+ <prefill>true</prefill>
+
+ <!-- HSQL DB benefits from prepared statement caching -->
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+ <share-prepared-statements>true</share-prepared-statements>
+
+ <set-tx-query-timeout>true</set-tx-query-timeout>
+
+ <query-timeout>300</query-timeout>
+ <use-try-lock>300000</use-try-lock>
+
+ <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
+ <type-mapping>Hypersonic SQL</type-mapping>
+
+ <!--
+ When using in-process (standalone) mode
+ Uncomment when using hsqldb in server mode
+ -->
+
+ <depends>jboss:service=Hypersonic,database=localDB</depends>
+ <depends>jboss:service=Hypersonic</depends>
+ </no-tx-datasource>
+
+</datasources>
Added: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testXaDsEverything.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testXaDsEverything.xml (rev 0)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/rar/JcaDs60_testXaDsEverything.xml 2009-02-06 08:35:26 UTC (rev 83933)
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<datasources xmlns="http://www.jboss.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee
+ http://www.jboss.org/j2ee/schema/jboss-ds_6_0.xsd">
+ <xa-datasource>
+
+ <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
+ <!-- Datasources are not available outside the virtual machine -->
+ <jndi-name>DefaultDS</jndi-name>
+
+ <use-java-context>false</use-java-context>
+
+ <track-connection-by-tx/>
+ <interleaving/>
+ <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
+ <xa-datasource-property name="URL">jdbc:oracle:oci8:@tc</xa-datasource-property>
+ <xa-datasource-property name="User">scott</xa-datasource-property>
+ <xa-datasource-property name="Password">tiger</xa-datasource-property>
+
+ <url-property>UrlProperty</url-property>
+
+ <url-delimiter>|</url-delimiter>
+
+ <url-selector-strategy-class-name>org.jboss.jca.UrlStratery</url-selector-strategy-class-name>
+
+ <isSameRM-override-value>false</isSameRM-override-value>
+
+ <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
+
+ <!-- The login and password -->
+ <user-name>sa</user-name>
+ <password></password>
+
+
+ <!-- Use the getConnection(user, pw) for logins
+ <application-managed-security/>
+ -->
+
+ <!-- Use the security domain defined in conf/login-config.xml -->
+ <security-domain>HsqlDbRealm</security-domain>
+
+ <!-- Use the security domain defined in conf/login-config.xml or the
+ getConnection(user, pw) for logins. The security domain takes precedence.
+ <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
+ -->
+
+
+ <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
+ <min-pool-size>5</min-pool-size>
+
+ <!-- The maximum connections in a pool/sub-pool -->
+ <max-pool-size>20</max-pool-size>
+
+ <blocking-timeout-millis>30000</blocking-timeout-millis>
+
+ <background-validation>true</background-validation>
+ <background-validation-millis>3000</background-validation-millis>
+
+ <!-- The time before an unused connection is destroyed -->
+ <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
+ <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+
+ <allocation-retry>0</allocation-retry>
+ <allocation-retry-wait-millis>5000</allocation-retry-wait-millis>
+
+ <validate-on-match>true</validate-on-match>
+ <no-tx-separate-pools/>
+ <xa-resource-timeout>300</xa-resource-timeout>
+
+ <!-- sql to call when connection is created -->
+ <new-connection-sql>some arbitrary sql</new-connection-sql>
+
+
+ <!-- this will be run before a managed connection is removed from the pool for use by a client-->
+ <check-valid-connection-sql>select * from something</check-valid-connection-sql>
+
+
+ <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool -->
+ <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
+
+ <!--example of how to specify class that determines if exception means connection should be destroyed-->
+ <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name>
+ <stale-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.StaleConnectionChecker</stale-connection-checker-class-name>
+
+ <!-- Whether to check all statements are closed when the connection is returned to the pool,
+ this is a debugging feature that should be turned off in production -->
+ <track-statements/>
+
+ <prefill>true</prefill>
+
+ <!-- HSQL DB benefits from prepared statement caching -->
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+ <share-prepared-statements>true</share-prepared-statements>
+
+ <set-tx-query-timeout>true</set-tx-query-timeout>
+
+ <query-timeout>300</query-timeout>
+ <use-try-lock>300000</use-try-lock>
+
+ <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
+ <type-mapping>Hypersonic SQL</type-mapping>
+
+ <!--
+ When using in-process (standalone) mode
+ Uncomment when using hsqldb in server mode
+ -->
+
+ <depends>jboss:service=Hypersonic,database=localDB</depends>
+ <depends>jboss:service=Hypersonic</depends>
+ </xa-datasource>
+
+</datasources>
More information about the jboss-cvs-commits
mailing list