You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by de...@apache.org on 2005/12/22 05:56:42 UTC

svn commit: r358494 - /webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java

Author: deepal
Date: Wed Dec 21 20:56:35 2005
New Revision: 358494

URL: http://svn.apache.org/viewcvs?rev=358494&view=rev
Log:
added a method to get pull parser for a given bean

Modified:
    webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java

Modified: webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java?rev=358494&r1=358493&r2=358494&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java (original)
+++ webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java Wed Dec 21 20:56:35 2005
@@ -64,13 +64,13 @@
                 } else if (SimpleTypeMapper.isArrayList(ptype)) {
                     Object value = propDesc.getReadMethod().invoke(beanObject, null);
                     ArrayList objList = (ArrayList) value;
-                    if(objList!=null && objList.size()>0 ){
+                    if (objList != null && objList.size() > 0) {
                         //this was given error , when the array.size = 0
                         // and if the array contain simple type , then the ADBPullParser asked
                         // PullParser from That simpel type
                         for (int j = 0; j < objList.size(); j++) {
                             Object o = objList.get(j);
-                            if(SimpleTypeMapper.isSimpleType(o)){
+                            if (SimpleTypeMapper.isSimpleType(o)) {
                                 object.add(propDesc.getName());
                                 object.add(o);
                             } else {
@@ -96,11 +96,24 @@
         }
     }
 
+    /**
+     * to get the pull parser for a given bean object , generate the wrpper elemnet using class name
+     *
+     * @param beanObject
+     */
+    public static Object getPullParser(Object beanObject) {
+        String className = beanObject.getClass().getName();
+        if (className.indexOf(".") > 0) {
+            className = className.substring(className.lastIndexOf('.') + 1, className.length());
+        }
+        return getPullParser(beanObject, new QName(className));
+    }
+
     public static Object deserialize(Class beanClass, OMElement beanElement) throws AxisFault {
         Object beanObj;
         try {
-            if(SimpleTypeMapper.isSimpleType(beanClass)){
-                return  SimpleTypeMapper.getSimpleTypeObject(beanClass,beanElement);
+            if (SimpleTypeMapper.isSimpleType(beanClass)) {
+                return SimpleTypeMapper.getSimpleTypeObject(beanClass, beanElement);
             }
             HashMap properties = new HashMap();
             BeanInfo beanInfo = Introspector.getBeanInfo(beanClass);