[jboss-cvs] JBossAS SVN: r101234 - in projects/jboss-jca/trunk/deployers/src/main: java/org/jboss/jca/deployers/common/validator/rules/mcf and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Feb 22 02:06:22 EST 2010


Author: jeff.zhang
Date: 2010-02-22 02:06:22 -0500 (Mon, 22 Feb 2010)
New Revision: 101234

Added:
   projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/ra/RAConstructor.java
Modified:
   projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/Validator.java
   projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/mcf/MCFConstructor.java
   projects/jboss-jca/trunk/deployers/src/main/resources/validator.properties
Log:
[JBJCA-278] add RAConstructor rule

Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/Validator.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/Validator.java	2010-02-22 07:05:21 UTC (rev 101233)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/Validator.java	2010-02-22 07:06:22 UTC (rev 101234)
@@ -48,6 +48,7 @@
       "org.jboss.jca.deployers.common.validator.rules.mc.MCGetMetaData",
       "org.jboss.jca.deployers.common.validator.rules.ra.RANull",
       "org.jboss.jca.deployers.common.validator.rules.ra.RA",
+      "org.jboss.jca.deployers.common.validator.rules.ra.RAConstructor",
       "org.jboss.jca.deployers.common.validator.rules.ra.RAHashCode",
       "org.jboss.jca.deployers.common.validator.rules.ra.RAEquals",
       "org.jboss.jca.deployers.common.validator.rules.ra.RAConfigProperties",

Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/mcf/MCFConstructor.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/mcf/MCFConstructor.java	2010-02-22 07:05:21 UTC (rev 101233)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/mcf/MCFConstructor.java	2010-02-22 07:06:22 UTC (rev 101234)
@@ -28,7 +28,6 @@
 import org.jboss.jca.deployers.common.validator.Severity;
 import org.jboss.jca.deployers.common.validator.Validate;
 
-import java.lang.reflect.Constructor;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.ResourceBundle;
@@ -66,7 +65,7 @@
       {
          try
          {
-            Constructor constructor = vo.getClazz().getConstructor(null);
+            vo.getClazz().getConstructor((Class[])null);
          }
          catch (Throwable t)
          {

Added: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/ra/RAConstructor.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/ra/RAConstructor.java	                        (rev 0)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/validator/rules/ra/RAConstructor.java	2010-02-22 07:06:22 UTC (rev 101234)
@@ -0,0 +1,86 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2010, 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.deployers.common.validator.rules.ra;
+
+import org.jboss.jca.deployers.common.validator.Failure;
+import org.jboss.jca.deployers.common.validator.Key;
+import org.jboss.jca.deployers.common.validator.Rule;
+import org.jboss.jca.deployers.common.validator.Severity;
+import org.jboss.jca.deployers.common.validator.Validate;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.ResourceBundle;
+
+/**
+ * A ResourceAdapter must have a default constructor
+ * 
+ * @author Jeff Zhang</a>
+ * @version $Revision: $
+ */
+public class RAConstructor implements Rule
+{
+   /** Section */
+   private static final String SECTION = "19.3";
+
+   /**
+    * Constructor
+    */
+   public RAConstructor()
+   {
+   }
+   
+   /**
+    * Validate
+    * @param vo The validate object
+    * @param rb The resource bundle 
+    * @return The list of failures found; <code>null</code> if none
+    */
+   @SuppressWarnings("unchecked")
+   public List<Failure> validate(Validate vo, ResourceBundle rb)
+   {
+      if (vo != null && 
+          Key.RESOURCE_ADAPTER == vo.getKey() &&
+          vo.getClazz() != null)
+      {
+         try
+         {
+            vo.getClazz().getConstructor((Class[])null);
+         }
+         catch (Throwable t)
+         {
+            List<Failure> failures = new ArrayList<Failure>(1);
+
+            Failure failure = new Failure(Severity.ERROR,
+                                          SECTION,
+                                          rb.getString("ra.RAConstructor"));
+            failures.add(failure);
+
+            return failures;
+         }
+      }
+
+      return null;
+   }
+}
+

Modified: projects/jboss-jca/trunk/deployers/src/main/resources/validator.properties
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/resources/validator.properties	2010-02-22 07:05:21 UTC (rev 101233)
+++ projects/jboss-jca/trunk/deployers/src/main/resources/validator.properties	2010-02-22 07:06:22 UTC (rev 101234)
@@ -7,18 +7,19 @@
 uncategorized=Uncategorized
 mcf.cnfe=ClassNotFoundException during ManagedConnectionFactory creation
 mcf.MCF=The class must implement the javax.resource.spi.ManagedConnectionFactory interface.
+mcf.MCFConfigProperties=Invalid config-property-type for ManagedConnectionFactory.
 mcf.MCFConstructor=A ManagedConnectionFactory must have a default constructor
+mcf.MCFEquals=A ManagedConnectionFactory must implement a "public boolean equals(Object)" method.
 mcf.MCFHashCode=A ManagedConnectionFactory must implement a "public int hashCode()" method.
-mcf.MCFEquals=A ManagedConnectionFactory must implement a "public boolean equals(Object)" method.
-mcf.MCFConfigProperties=Invalid config-property-type for ManagedConnectionFactory.
 mc.MC=The class must provide an implementation of the ManagedConnection interface.
 mc.MCGetMetaData=ManagedConnection.getMetaData() must return a javax.resource.spi.ManagedConnectionMetaData instance
 ra.cnfe=ClassNotFoundException during ResourceAdapter creation
 ra.RA=A ResourceAdapter must implement the javax.resource.spi.ResourceAdapter interface.
+ra.RAConfigProperties=Invalid config-property-type for ResourceAdapter.
+ra.RAConstructor=A ResourceAdapter must have a default constructor
+ra.RAEquals=A ResourceAdapter must implement a "public boolean equals(Object)" method.
+ra.RAHashCode=A ResourceAdapter must implement a "public int hashCode()" method.
 ra.RANull=A ResourceAdapter must be a non-null instance.
-ra.RAHashCode=A ResourceAdapter must implement a "public int hashCode()" method.
-ra.RAEquals=A ResourceAdapter must implement a "public boolean equals(Object)" method.
-ra.RAConfigProperties=Invalid config-property-type for ResourceAdapter.
 cf.CFNull=ConnectionFactory must be a non-null value
 cf.CFSerializable=ConnectionFactory must implement java.io.Serializable
 cf.CFReferenceable=ConnectionFactory must implement javax.resource.Referenceable




More information about the jboss-cvs-commits mailing list