[jboss-cvs] JBossAS SVN: r61526 - trunk/connector/src/main/org/jboss/resource/deployers/builder.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Mar 21 04:36:39 EDT 2007
Author: weston.price at jboss.com
Date: 2007-03-21 04:36:39 -0400 (Wed, 21 Mar 2007)
New Revision: 61526
Modified:
trunk/connector/src/main/org/jboss/resource/deployers/builder/AbstractBuilder.java
trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionFactoryBindingBuilder.java
trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionManagerBuilder.java
trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionFactoryBuilder.java
trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionPoolBuilder.java
trunk/connector/src/main/org/jboss/resource/deployers/builder/MetaDataTypeMappingBuilder.java
Log:
[JBAS-1425] Builder work.
Modified: trunk/connector/src/main/org/jboss/resource/deployers/builder/AbstractBuilder.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/builder/AbstractBuilder.java 2007-03-21 08:36:12 UTC (rev 61525)
+++ trunk/connector/src/main/org/jboss/resource/deployers/builder/AbstractBuilder.java 2007-03-21 08:36:39 UTC (rev 61526)
@@ -40,7 +40,7 @@
*/
public abstract class AbstractBuilder
{
-
+ //TODO make this simple string in anticipation of move to MC
public abstract ObjectName buildObjectName(ManagedConnectionFactoryDeploymentMetaData md);
public abstract String getCode(ManagedConnectionFactoryDeploymentMetaData md);
@@ -97,6 +97,7 @@
att.setName(name);
att.setValue(dep);
return att;
+
}
Modified: trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionFactoryBindingBuilder.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionFactoryBindingBuilder.java 2007-03-21 08:36:12 UTC (rev 61525)
+++ trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionFactoryBindingBuilder.java 2007-03-21 08:36:39 UTC (rev 61526)
@@ -29,6 +29,7 @@
import org.jboss.mx.util.ObjectNameFactory;
import org.jboss.resource.metadata.mcf.DataSourceDeploymentMetaData;
import org.jboss.resource.metadata.mcf.ManagedConnectionFactoryDeploymentMetaData;
+import org.jboss.resource.metadata.mcf.ManagedConnectionFactoryTransactionSupportMetaData;
import org.jboss.system.metadata.ServiceAttributeMetaData;
import org.jboss.system.metadata.ServiceTextValueMetaData;
@@ -58,7 +59,14 @@
attribute.setName("UseJavaContext");
attribute.setValue(new ServiceTextValueMetaData(String.valueOf(md.isUseJavaContext())));
attributes.add(attribute);
-
+
+ if(!md.isUseJavaContext())
+ {
+ attribute = buildDependencyAttribute("JMXInvokerName", md.getJmxInvokerName());
+ attributes.add(attribute);
+ }
+
+ attribute = buildDependencyAttribute("ConnectionManager", buildCMName(md));
return attributes;
}
@@ -84,15 +92,47 @@
public String getCode(ManagedConnectionFactoryDeploymentMetaData md)
{
- if(md instanceof DataSourceDeploymentMetaData)
+ return (md instanceof DataSourceDeploymentMetaData) ? DATASOURCE : CONNECTION_FACTORY;
+
+ }
+
+ private String buildCMName(ManagedConnectionFactoryDeploymentMetaData md)
+ {
+ //THIS IS A HACK!
+ String cmType = "jboss.jca:service=";
+ String jndiName = md.getJndiName();
+
+ if(md.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.NONE))
{
- return DATASOURCE;
+ cmType += "NoTxCM,name=" + jndiName;
}
- else
+ else if(md.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.LOCAL))
{
- return CONNECTION_FACTORY;
+ if(md instanceof DataSourceDeploymentMetaData)
+ {
+ cmType += "LocalTxCM,name=" + jndiName;
+ }
+ else
+ {
+ cmType += "TxCM,name=" + jndiName;
+
+ }
+
+ }else
+ {
+ if(md instanceof DataSourceDeploymentMetaData)
+ {
+ cmType += "XATxCM,name=" + jndiName;
+
+ }
+ else
+ {
+ cmType += "TxCM,name=" + jndiName;
+
+ }
}
+ return cmType;
}
}
Modified: trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionManagerBuilder.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionManagerBuilder.java 2007-03-21 08:36:12 UTC (rev 61525)
+++ trunk/connector/src/main/org/jboss/resource/deployers/builder/ConnectionManagerBuilder.java 2007-03-21 08:36:39 UTC (rev 61526)
@@ -26,9 +26,11 @@
import javax.management.ObjectName;
+import org.jboss.mx.util.ObjectNameFactory;
import org.jboss.resource.connectionmanager.NoTxConnectionManager;
import org.jboss.resource.connectionmanager.TxConnectionManager;
import org.jboss.resource.metadata.mcf.DataSourceDeploymentMetaData;
+import org.jboss.resource.metadata.mcf.LocalDataSourceDeploymentMetaData;
import org.jboss.resource.metadata.mcf.ManagedConnectionFactoryDeploymentMetaData;
import org.jboss.resource.metadata.mcf.ManagedConnectionFactoryTransactionSupportMetaData;
import org.jboss.resource.metadata.repository.JCAMetaDataRepository;
@@ -46,44 +48,54 @@
*/
public class ConnectionManagerBuilder extends AbstractBuilder
{
- private JCAMetaDataRepository repository;
+ private static final String CCM_JMX = "jboss.jca:service=CachedConnectionManager";
+ private static final String JAAS_JMX = "jboss.security:service=JaasSecurityManager";
+ private static final String TM_JMX = "jboss:service=TransactionManager";
@Override
public List<ServiceAttributeMetaData> buildAttributes(ManagedConnectionFactoryDeploymentMetaData md)
{
- // TODO Auto-generated method stub
- return null;
+ List<ServiceAttributeMetaData> attributes = new ArrayList<ServiceAttributeMetaData>();
+ ServiceAttributeMetaData attribute = null;
+
+ attribute = buildSimpleAttribute("JndiName", md.getJndiName());
+ attributes.add(attribute);
+
+ attribute = buildDependencyAttribute("CachedConnectionManager", CCM_JMX);
+ attributes.add(attribute);
+
+ attribute = buildDependencyAttribute("JaasSecurityManagerService", JAAS_JMX);
+ attributes.add(attribute);
+
+ if(!md.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.NONE))
+ {
+ attribute = buildDependencyAttribute("TransactionManagerService", TM_JMX);
+ attributes.add(attribute);
+
+ attribute = buildSimpleAttribute("LocalTransactions", String.valueOf(md.isLocalTransactions()));
+ attributes.add(attribute);
+
+ attribute = buildSimpleAttribute("TrackConnectionByTx", String.valueOf(md.isTrackConnectionByTransaction()));
+ attributes.add(attribute);
+ }
+
+ return attributes;
}
@Override
public ObjectName buildObjectName(ManagedConnectionFactoryDeploymentMetaData md)
{
- return null;
- }
-
- @Override
- public String getCode(ManagedConnectionFactoryDeploymentMetaData md)
- {
- // TODO Auto-generated method stub
- return null;
- }
-
- public ServiceMetaData buildManagedConnectionFactoryDeployment(ManagedConnectionFactoryDeploymentMetaData deployment, List<ServiceMetaData> deployments) throws Exception
- {
- ServiceMetaData cmMetaData = new ServiceMetaData();
- String jndiName = deployment.getJndiName();
-
String cmType = "jboss.jca:service=";
+ String jndiName = md.getJndiName();
- if(deployment.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.NONE))
+ if(md.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.NONE))
{
- cmType += "NoTxCM,name=" + deployment.getJndiName();
- cmMetaData.setCode(NoTxConnectionManager.class.getName());
+ cmType += "NoTxCM,name=" + jndiName;
- }else if(deployment.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.LOCAL))
+ }
+ else if(md.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.LOCAL))
{
-
- if(deployment instanceof DataSourceDeploymentMetaData)
+ if(md instanceof DataSourceDeploymentMetaData)
{
cmType += "LocalTxCM,name=" + jndiName;
}
@@ -93,11 +105,9 @@
}
- cmMetaData.setCode(TxConnectionManager.class.getName());
-
}else
{
- if(deployment instanceof DataSourceDeploymentMetaData)
+ if(md instanceof DataSourceDeploymentMetaData)
{
cmType += "XATxCM,name=" + jndiName;
@@ -107,37 +117,28 @@
cmType += "TxCM,name=" + jndiName;
}
- cmMetaData.setCode(TxConnectionManager.class.getName());
-
}
- ObjectName cmName = new ObjectName(cmType);
- cmMetaData.setObjectName(cmName);
- List<ServiceAttributeMetaData> cmAttributes = new ArrayList<ServiceAttributeMetaData>();
- ServiceAttributeMetaData cmAttribute = null;
- ServiceConstructorMetaData constructor = new ServiceConstructorMetaData();
- constructor.setParameters(new Object[]{});
- constructor.setParams(new String[]{});
- cmMetaData.setConstructor(constructor);
+ return ObjectNameFactory.create(cmType);
+ }
+
+ @Override
+ public String getCode(ManagedConnectionFactoryDeploymentMetaData md)
+ {
- cmAttribute = buildSimpleAttribute("JndiName", jndiName);
- cmAttributes.add(cmAttribute);
+ String code = null;
- cmAttribute = buildDependencyAttribute("CachedConnectionManager", "jboss.jca:service=CachedConnectionManager");
+ if(md.getTransactionSupportMetaData().equals(ManagedConnectionFactoryTransactionSupportMetaData.NONE))
+ {
+ code = NoTxConnectionManager.class.getName();
+ }
+ else
+ {
+ code = TxConnectionManager.class.getName();
+ }
- cmAttributes.add(cmAttribute);
-
- return cmMetaData;
+ return code;
}
-
- public boolean hasDependency()
- {
- return true;
- }
-
- public void setMetaDataRepository(JCAMetaDataRepository repository)
- {
- this.repository = repository;
- }
-
+
+
}
Modified: trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionFactoryBuilder.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionFactoryBuilder.java 2007-03-21 08:36:12 UTC (rev 61525)
+++ trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionFactoryBuilder.java 2007-03-21 08:36:39 UTC (rev 61526)
@@ -43,8 +43,9 @@
public class ManagedConnectionFactoryBuilder extends AbstractBuilder
{
private JCAMetaDataRepository repository;
- private static final String MCF = "";
- private static final String MCF_JMX = "";
+ private static final String MCF = "org.jboss.resource.connectionmanager.ManagedConnectionFactoryDeployment";
+ private static final String RAR_JMX = "jboss.jca:service=RARDeployment,name='";
+ private static final String MCF_JMX = "jboss.jca:service=ManagedConnectionFactory,name=";
public void setMetaDataRepository(JCAMetaDataRepository repository)
{
@@ -54,21 +55,14 @@
@Override
public ObjectName buildObjectName(ManagedConnectionFactoryDeploymentMetaData md)
{
- return ObjectNameFactory.create("" + md.getJndiName());
+ return ObjectNameFactory.create(MCF_JMX + md.getJndiName());
}
@Override
public List<ServiceAttributeMetaData> buildAttributes(ManagedConnectionFactoryDeploymentMetaData deployment)
{
List<ServiceAttributeMetaData> attributes = new ArrayList<ServiceAttributeMetaData>();
- ServiceAttributeMetaData attribute = null;
- ServiceDependencyValueMetaData dep = new ServiceDependencyValueMetaData();
- dep.setDependency("jboss.jca:service=RARDeployment,name='" + deployment.getRarName() + "'");
-
- attribute = new ServiceAttributeMetaData();
- attribute.setName("OldRarDeployment");
- attribute.setValue(dep);
- attribute.setTrim(false);
+ ServiceAttributeMetaData attribute = buildDependencyAttribute("OldRarDeployment", RAR_JMX + deployment.getRarName() + "'");
attributes.add(attribute);
return attributes;
}
@@ -87,7 +81,7 @@
@Override
public String getCode(ManagedConnectionFactoryDeploymentMetaData md)
{
- return null;
+ return MCF;
}
}
Modified: trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionPoolBuilder.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionPoolBuilder.java 2007-03-21 08:36:12 UTC (rev 61525)
+++ trunk/connector/src/main/org/jboss/resource/deployers/builder/ManagedConnectionPoolBuilder.java 2007-03-21 08:36:39 UTC (rev 61526)
@@ -43,6 +43,7 @@
*/
public class ManagedConnectionPoolBuilder extends AbstractBuilder
{
+ private static final String POOL = "org.jboss.resource.connectionmanager.JBossManagedConnectionPool";
private static final Map<SecurityDeploymentType, String> securityTypeMap = new HashMap<SecurityDeploymentType, String>();
static
@@ -62,8 +63,7 @@
@Override
public String getCode(ManagedConnectionFactoryDeploymentMetaData md)
{
- // TODO Auto-generated method stub
- return null;
+ return POOL;
}
@Override
@@ -71,20 +71,14 @@
{
List<ServiceAttributeMetaData> poolAttributes = new ArrayList<ServiceAttributeMetaData>();
ServiceAttributeMetaData poolAttribute = null;
-
- poolAttribute = new ServiceAttributeMetaData();
- poolAttribute.setName("PoolJndiName");
- poolAttribute.setValue(new ServiceTextValueMetaData(md.getJndiName()));
+
+ poolAttribute = buildSimpleAttribute("PoolJndiName", md.getJndiName());
poolAttributes.add(poolAttribute);
- poolAttribute = new ServiceAttributeMetaData();
- poolAttribute.setName("MinSize");
- poolAttribute.setValue(new ServiceTextValueMetaData(String.valueOf(md.getMinSize())));
+ poolAttribute = buildSimpleAttribute("MinSize", String.valueOf(md.getMinSize()));
poolAttributes.add(poolAttribute);
- poolAttribute = new ServiceAttributeMetaData();
- poolAttribute.setName("MaxSize");
- poolAttribute.setValue(new ServiceTextValueMetaData(String.valueOf(md.getMaxSize())));
+ poolAttribute = buildSimpleAttribute("MaxSize", String.valueOf(md.getMaxSize()));
poolAttributes.add(poolAttribute);
poolAttribute = new ServiceAttributeMetaData();
Modified: trunk/connector/src/main/org/jboss/resource/deployers/builder/MetaDataTypeMappingBuilder.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/builder/MetaDataTypeMappingBuilder.java 2007-03-21 08:36:12 UTC (rev 61525)
+++ trunk/connector/src/main/org/jboss/resource/deployers/builder/MetaDataTypeMappingBuilder.java 2007-03-21 08:36:39 UTC (rev 61526)
@@ -21,12 +21,15 @@
*/
package org.jboss.resource.deployers.builder;
+import java.util.ArrayList;
import java.util.List;
import javax.management.ObjectName;
+import org.jboss.mx.util.ObjectNameFactory;
import org.jboss.resource.metadata.mcf.ManagedConnectionFactoryDeploymentMetaData;
import org.jboss.system.metadata.ServiceAttributeMetaData;
+import org.jboss.system.metadata.ServiceMetaData;
/**
* A MetaDataTypeMappingBuilder.
@@ -36,23 +39,49 @@
*/
public class MetaDataTypeMappingBuilder extends AbstractBuilder
{
+ private static final String BINDING_JMX = "jboss.jdbc:service=metadata,datasource=";
+ private static final String BINDING = "org.jboss.ejb.plugins.cmp.jdbc.metadata.DataSourceMetaData";
@Override
public List<ServiceAttributeMetaData> buildAttributes(ManagedConnectionFactoryDeploymentMetaData md)
{
- return null;
+
+ List<ServiceAttributeMetaData> attributes = new ArrayList<ServiceAttributeMetaData>();
+ ServiceAttributeMetaData attribute = null;
+
+ attribute = buildDependencyAttribute("MetadataLibrary", "jboss.jdbc:service=metadata");
+ attributes.add(attribute);
+
+ attribute = buildSimpleAttribute("TypeMapping", md.getTypeMapping());
+ attributes.add(attribute);
+
+ return attributes;
}
-
+
@Override
+ public ServiceMetaData build(ManagedConnectionFactoryDeploymentMetaData mcfmd)
+ {
+ ServiceMetaData md = null;
+
+ if(mcfmd.getTypeMapping() != null)
+ {
+ md = super.build(mcfmd);
+
+ }
+ return md;
+
+ }
+
+ @Override
public ObjectName buildObjectName(ManagedConnectionFactoryDeploymentMetaData md)
{
- return null;
+ return ObjectNameFactory.create(BINDING_JMX + md.getJndiName());
}
@Override
public String getCode(ManagedConnectionFactoryDeploymentMetaData md)
{
- return null;
+ return BINDING;
}
}
More information about the jboss-cvs-commits
mailing list