[jboss-cvs] JBossAS SVN: r112432 - projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sun Nov 6 10:22:16 EST 2011
Author: jeff.zhang
Date: 2011-11-06 10:22:16 -0500 (Sun, 06 Nov 2011)
New Revision: 112432
Added:
projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/RaImpl.java
Modified:
projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/Main.java
Log:
[JBJCA-696] resource-adapters output
Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/Main.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/Main.java 2011-11-05 16:06:43 UTC (rev 112431)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/Main.java 2011-11-06 15:22:16 UTC (rev 112432)
@@ -21,7 +21,12 @@
*/
package org.jboss.jca.as.rarinfo;
+import org.jboss.jca.common.api.metadata.Defaults;
+import org.jboss.jca.common.api.metadata.common.CommonAdminObject;
+import org.jboss.jca.common.api.metadata.common.CommonConnDef;
+import org.jboss.jca.common.api.metadata.common.TransactionSupportEnum;
import org.jboss.jca.common.api.metadata.ra.AdminObject;
+import org.jboss.jca.common.api.metadata.ra.ConfigProperty;
import org.jboss.jca.common.api.metadata.ra.ConnectionDefinition;
import org.jboss.jca.common.api.metadata.ra.Connector;
import org.jboss.jca.common.api.metadata.ra.Connector.Version;
@@ -29,13 +34,20 @@
import org.jboss.jca.common.api.metadata.ra.ResourceAdapter;
import org.jboss.jca.common.api.metadata.ra.ResourceAdapter1516;
import org.jboss.jca.common.api.metadata.ra.ra10.ResourceAdapter10;
+import org.jboss.jca.common.metadata.common.CommonAdminObjectImpl;
+import org.jboss.jca.common.metadata.common.CommonConnDefImpl;
import org.jboss.jca.common.metadata.ra.RaParser;
import org.jboss.jca.validator.Validation;
import java.io.File;
import java.io.InputStream;
import java.io.PrintStream;
+import java.io.StringReader;
+import java.util.ArrayList;
import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
@@ -48,8 +60,6 @@
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
/**
@@ -104,7 +114,6 @@
boolean hasRaXml = false;
boolean exsitNativeFile = false;
Connector connector = null;
- Node raNode = null;
Enumeration zipEntries = zipFile.entries();
@@ -122,13 +131,7 @@
RaParser parser = new RaParser();
connector = parser.parse(raIn);
raIn.close();
-
- DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
- DocumentBuilder db = dbf.newDocumentBuilder();
- Document doc = db.parse(new InputSource(zipFile.getInputStream(ze)));
- NodeList raList = doc.getElementsByTagName("resourceadapter");
- if (raList != null && raList.getLength() > 0)
- raNode = raList.item(0);
+
}
}
@@ -208,6 +211,12 @@
else
out.println("No");
+ String classname = "";
+ Map<String, String> raConfigProperties = null;
+ TransactionSupportEnum transSupport = TransactionSupportEnum.NoTransaction;
+ List<CommonAdminObject> adminObjects = null;
+ List<CommonConnDef> connDefs = null;
+
if (connector.getVersion() != Version.V_10)
{
ResourceAdapter1516 ra1516 = (ResourceAdapter1516)ra;
@@ -219,17 +228,53 @@
out.println("Managed-connection-factory:");
if (ra1516.getOutboundResourceadapter() != null)
{
+ if (ra1516.getOutboundResourceadapter().getConnectionDefinitions() != null)
+ connDefs = new ArrayList<CommonConnDef>();
for (ConnectionDefinition mcf : ra1516.getOutboundResourceadapter().getConnectionDefinitions())
{
- out.println(" Class: " + mcf.getManagedConnectionFactoryClass());
+ classname = mcf.getManagedConnectionFactoryClass().toString();
+ out.println(" Class: " + classname);
+
+ Map<String, String> configProperty = null;
+ if (mcf.getConfigProperties() != null)
+ configProperty = new HashMap<String, String>();
+ for (ConfigProperty cp : mcf.getConfigProperties())
+ {
+ configProperty.put(cp.getConfigPropertyName().toString(), cp.getConfigPropertyValue().toString());
+ }
+ String poolName = classname.substring(classname.lastIndexOf('.') + 1);
+ CommonConnDefImpl connImpl = new CommonConnDefImpl(configProperty, classname,
+ "java:jboss/eis/" + poolName, poolName,
+ Defaults.ENABLED, Defaults.USE_JAVA_CONTEXT, Defaults.USE_CCM,
+ null, null, null, null, null);
+ connDefs.add(connImpl);
}
+
+ transSupport = ra1516.getOutboundResourceadapter().getTransactionSupport();
}
-
+
out.println();
out.println("Admin-object:");
+
+ if (ra1516.getAdminObjects() != null)
+ {
+ adminObjects = new ArrayList<CommonAdminObject>();
+ }
for (AdminObject ao : ra1516.getAdminObjects())
{
- out.println(" Class: " + ao.getAdminobjectClass());
+ String aoClassname = ao.getAdminobjectClass().toString();
+ out.println(" Class: " + aoClassname);
+ String poolName = classname.substring(aoClassname.lastIndexOf('.') + 1);
+ Map<String, String> configProperty = null;
+ if (ao.getConfigProperties() != null)
+ configProperty = new HashMap<String, String>();
+ for (ConfigProperty cp : ao.getConfigProperties())
+ {
+ configProperty.put(cp.getConfigPropertyName().toString(), cp.getConfigPropertyValue().toString());
+ }
+ CommonAdminObjectImpl aoImpl = new CommonAdminObjectImpl(configProperty, aoClassname,
+ "java:jboss/eis/" + poolName, poolName, Defaults.ENABLED, Defaults.USE_JAVA_CONTEXT);
+ adminObjects.add(aoImpl);
}
out.println();
@@ -242,6 +287,17 @@
out.println(" Class: " + ml.getActivationspec().getActivationspecClass());
}
}
+
+
+ if (ra1516.getConfigProperties() != null)
+ {
+ raConfigProperties = new HashMap<String, String>();
+ for (ConfigProperty cp : ra1516.getConfigProperties())
+ {
+ raConfigProperties.put(cp.getConfigPropertyName().toString(), cp.getConfigPropertyValue().toString());
+ }
+ }
+
}
else
{
@@ -249,10 +305,38 @@
ResourceAdapter10 ra10 = (ResourceAdapter10)ra;
out.println(" Class: " + ra10.getManagedConnectionFactoryClass());
+
+ classname = ra10.getManagedConnectionFactoryClass().toString();
+ transSupport = ra10.getTransactionSupport();
+
+ Map<String, String> configProperty = null;
+ if (ra10.getConfigProperties() != null)
+ configProperty = new HashMap<String, String>();
+ for (ConfigProperty cp : ra10.getConfigProperties())
+ {
+ configProperty.put(cp.getConfigPropertyName().toString(), cp.getConfigPropertyValue().toString());
+ }
+ String poolName = classname.substring(classname.lastIndexOf('.') + 1);
+ CommonConnDefImpl connImpl = new CommonConnDefImpl(configProperty, classname,
+ "java:jboss/eis/" + poolName, poolName,
+ Defaults.ENABLED, Defaults.USE_JAVA_CONTEXT, Defaults.USE_CCM,
+ null, null, null, null, null);
+ connDefs = new ArrayList<CommonConnDef>();
+ connDefs.add(connImpl);
}
- if (raNode != null)
+
+ RaImpl raImpl = new RaImpl(rarFile, transSupport, connDefs, adminObjects, raConfigProperties);
+ raImpl.buildResourceAdapterImpl();
+
+ String raString = "<resource-adapters>" + raImpl.toString() + "</resource-adapters>";
+ if (!raString.equals(""))
{
+
+ DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
+ DocumentBuilder db = dbf.newDocumentBuilder();
+ Document doc = db.parse(new InputSource(new StringReader(raString)));
+
out.println();
out.println("Deployment descriptor:");
@@ -264,7 +348,7 @@
serializer.setOutputProperty(OutputKeys.INDENT, "yes");
serializer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
- serializer.transform(new DOMSource(raNode), new StreamResult(out));
+ serializer.transform(new DOMSource(doc), new StreamResult(out));
}
System.out.println("Done.");
Added: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/RaImpl.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/RaImpl.java (rev 0)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/rarinfo/RaImpl.java 2011-11-06 15:22:16 UTC (rev 112432)
@@ -0,0 +1,84 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2011, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.as.rarinfo;
+
+import org.jboss.jca.common.api.metadata.common.CommonAdminObject;
+import org.jboss.jca.common.api.metadata.common.CommonConnDef;
+import org.jboss.jca.common.api.metadata.common.TransactionSupportEnum;
+
+import org.jboss.jca.common.metadata.resourceadapter.ResourceAdapterImpl;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * A Resource Adpater impl.
+ *
+ * @author Jeff Zhang
+ * @version $Revision: $
+ */
+public class RaImpl
+{
+ private ResourceAdapterImpl raImpl = null;
+
+ private TransactionSupportEnum transactionSupport;
+ private List<CommonConnDef> connectionDefinitions;
+ private List<CommonAdminObject> adminObjects;
+ private Map<String, String> raConfigProperties;
+ private String rarName;
+
+
+ /**
+ * RaImpl
+ * @param rarName rarName
+ * @param transactionSupport transactionSupport
+ * @param connectionDefinitions connectionDefinitions
+ * @param adminObjects adminObjects
+ * @param raConfigProperties raConfigProperties
+ */
+ public RaImpl(String rarName, TransactionSupportEnum transactionSupport, List<CommonConnDef> connectionDefinitions,
+ List<CommonAdminObject> adminObjects, Map<String, String> raConfigProperties)
+ {
+ this.rarName = rarName;
+ this.transactionSupport = transactionSupport;
+ this.connectionDefinitions = connectionDefinitions;
+ this.raConfigProperties = raConfigProperties;
+ this.adminObjects = adminObjects;
+ }
+
+ /**
+ * buildResourceAdapterImpl
+ * @throws Exception exception
+ */
+ public void buildResourceAdapterImpl() throws Exception
+ {
+ raImpl = new ResourceAdapterImpl(rarName, transactionSupport, connectionDefinitions, adminObjects,
+ raConfigProperties, null, null);
+ }
+
+ @Override
+ public String toString()
+ {
+ String out = raImpl.toString();
+ return out;
+ }
+}
More information about the jboss-cvs-commits
mailing list