[dna-commits] DNA SVN: r428 - in trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java: metadata and 1 other directory.

dna-commits at lists.jboss.org dna-commits at lists.jboss.org
Thu Aug 14 17:40:18 EDT 2008


Author: spagop
Date: 2008-08-14 17:40:16 -0400 (Thu, 14 Aug 2008)
New Revision: 428

Removed:
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java
Modified:
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
Log:
support for sequencing constructors/methods with or without primitive type parameters, return primitive type

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java	2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java	2008-08-14 21:40:16 UTC (rev 428)
@@ -58,7 +58,7 @@
 import org.jboss.dna.sequencer.java.metadata.PackageMetadata;
 import org.jboss.dna.sequencer.java.metadata.ParameterizedFieldMetadata;
 import org.jboss.dna.sequencer.java.metadata.PrimitiveFieldMetadata;
-import org.jboss.dna.sequencer.java.metadata.ReturnType;
+import org.jboss.dna.sequencer.java.metadata.ReferenceFieldMetadata;
 import org.jboss.dna.sequencer.java.metadata.SimpleFieldMetadata;
 import org.jboss.dna.sequencer.java.metadata.SingleImportMetadata;
 import org.jboss.dna.sequencer.java.metadata.SingleMemberAnnotationMetadata;
@@ -275,16 +275,15 @@
     private void processReturnTypeOfMethodDeclaration( MethodDeclaration methodDeclaration,
                                                        MethodMetadata methodMetadata ) {
         Type type = methodDeclaration.getReturnType2();
-        ReturnType returnType = null;
         if(type.isPrimitiveType()) {
-            returnType = new ReturnType();
-            returnType.setName(((PrimitiveType)type).getPrimitiveTypeCode().toString());
-            methodMetadata.setReturnType(returnType);
+            PrimitiveFieldMetadata primitive = new PrimitiveFieldMetadata();
+            primitive.setType(((PrimitiveType)type).getPrimitiveTypeCode().toString());
+            methodMetadata.setReturnType(primitive);
         }
         if(type.isSimpleType()) {
-            returnType = new ReturnType();
-            returnType.setName(JavaMetadataUtil.getName(((SimpleType)type).getName()));
-            methodMetadata.setReturnType(returnType);
+            ReferenceFieldMetadata referenceFieldMetadata = new ReferenceFieldMetadata();
+            referenceFieldMetadata.setType(JavaMetadataUtil.getName(((SimpleType)type).getName()));
+            methodMetadata.setReturnType(referenceFieldMetadata);
         }
     }
 

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java	2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java	2008-08-14 21:40:16 UTC (rev 428)
@@ -184,9 +184,10 @@
     // parameter
     public static final String JAVA_PARAMETER = "java:parameter";
     public static final String JAVA_FORMAL_PARAMETER = "java:formalParameter";
-
     public static final String JAVA_PARAMETER_NAME = "java:parameterName";
 
+    public static final String JAVA_RETURN_TYPE = "java:resultType";
+
     /**
      * {@inheritDoc}
      * 
@@ -435,24 +436,27 @@
                                                    modifierMetadata.getName());
                                 constructorModifierIndex++;
                             }
-                            // parameters
-                            List<FieldMetadata> params = constructorMetadata.getParameters();
+
+                            // constructor parameters
                             int constructorParameterIndex = 1;
-                            for (FieldMetadata fieldMetadata2 : params) {
-                                String constructorParameterPath = createPathWithIndex(constructorRootPath.toString() + SLASH
-                                                                                      + JAVA_PARAMETER + SLASH
-                                                                                      + JAVA_FORMAL_PARAMETER,
-                                                                                      constructorParameterIndex).toString();
+                            for (FieldMetadata fieldMetadata2 : constructorMetadata.getParameters()) {
+
+                                String constructorParameterRootPath = createPathWithIndex(constructorRootPath.toString() + SLASH
+                                                                                          + JAVA_PARAMETER + SLASH
+                                                                                          + JAVA_FORMAL_PARAMETER,
+                                                                                          constructorParameterIndex).toString();
+
                                 if (fieldMetadata2 instanceof PrimitiveFieldMetadata) {
+
                                     PrimitiveFieldMetadata primitive = (PrimitiveFieldMetadata)fieldMetadata2;
-                                    String constructPrimitiveFormalParamRootPath = createPath(constructorParameterPath + SLASH
-                                                                                              + JAVA_TYPE_CHILD_NODE + SLASH
+                                    String constructPrimitiveFormalParamRootPath = createPath(constructorParameterRootPath
+                                                                                              + SLASH + JAVA_TYPE_CHILD_NODE
+                                                                                              + SLASH
                                                                                               + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
-                                    List<Variable> paramterVariables = primitive.getVariables();
                                     String constructorPrimitiveParamVariablePath = createPath(constructPrimitiveFormalParamRootPath
                                                                                               + SLASH + JAVA_VARIABLE).toString();
                                     Path constructorParamChildNode = pathFactory.create(constructorPrimitiveParamVariablePath);
-                                    for (Variable variable : paramterVariables) {
+                                    for (Variable variable : primitive.getVariables()) {
                                         // name
                                         output.setProperty(constructorParamChildNode,
                                                            nameFactory.create(JAVA_VARIABLE_NAME),
@@ -465,8 +469,9 @@
                                                        primitive.getType());
 
                                 }
-                                
-                                // TODO for reference types
+
+                                // TODO parameter reference types
+
                                 constructorParameterIndex++;
                             }
 
@@ -486,6 +491,77 @@
                             output.setProperty(methodChildNode,
                                                nameFactory.create(JAVA_METHOD_NAME),
                                                methodTypeMemberMetadata.getName());
+
+                            // method modifiers
+                            int methodModierIndex = 1;
+                            for (ModifierMetadata modifierMetadata : methodTypeMemberMetadata.getModifiers()) {
+                                String methodModifierPath = createPathWithIndex(methodRootPath.toString() + SLASH
+                                                                                + JAVA_MODIFIER_CHILD_NODE + SLASH
+                                                                                + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
+                                                                                methodModierIndex).toString();
+                                Path methodModifierChildNode = pathFactory.create(methodModifierPath);
+                                output.setProperty(methodModifierChildNode,
+                                                   nameFactory.create(JAVA_MODIFIER_NAME),
+                                                   modifierMetadata.getName());
+                                methodModierIndex++;
+                            }
+
+                            int methodParameterIndex = 1;
+                            for (FieldMetadata fieldMetadata : methodMetadata.getParameters()) {
+
+                                String methodPrimitiveParamRootPath = createPathWithIndex(methodRootPath.toString() + SLASH
+                                                                                          + JAVA_PARAMETER + SLASH
+                                                                                          + JAVA_FORMAL_PARAMETER,
+                                                                                          methodParameterIndex).toString();
+
+                                if (fieldMetadata instanceof PrimitiveFieldMetadata) {
+
+                                    PrimitiveFieldMetadata primitive = (PrimitiveFieldMetadata)fieldMetadata;
+
+                                    String methodPrimitiveFormalParamRootPath = createPath(methodPrimitiveParamRootPath + SLASH
+                                                                                           + JAVA_TYPE_CHILD_NODE + SLASH
+                                                                                           + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+
+                                    String methodPrimitiveParamVariablePath = createPath(methodPrimitiveFormalParamRootPath
+                                                                                         + SLASH + JAVA_VARIABLE).toString();
+
+                                    Path methodParamChildNode = pathFactory.create(methodPrimitiveParamVariablePath);
+                                    for (Variable variable : primitive.getVariables()) {
+                                        // name
+                                        output.setProperty(methodParamChildNode,
+                                                           nameFactory.create(JAVA_VARIABLE_NAME),
+                                                           variable.getName());
+                                    }
+                                    // type
+                                    Path methodPrimitiveTypeParamChildNode = pathFactory.create(methodPrimitiveFormalParamRootPath);
+                                    output.setProperty(methodPrimitiveTypeParamChildNode,
+                                                       nameFactory.create(JAVA_TYPE),
+                                                       primitive.getType());
+
+                                }
+
+                                // TODO parameter reference types
+
+                                methodParameterIndex++;
+                            }
+
+                            // method return type
+                            FieldMetadata methodReturnType = methodTypeMemberMetadata.getReturnType();
+                            
+                            if (methodReturnType instanceof PrimitiveFieldMetadata) {
+                                PrimitiveFieldMetadata methodReturnPrimitiveType = (PrimitiveFieldMetadata)methodReturnType;
+                                String methodReturnPrimitiveTypePath = createPath(methodRootPath.toString() + SLASH
+                                                                                  + JAVA_RETURN_TYPE + SLASH
+                                                                                  + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+                                Path methodReturnPrimitiveTypeChildNode = pathFactory.create(methodReturnPrimitiveTypePath);
+                                output.setProperty(methodReturnPrimitiveTypeChildNode,
+                                                   nameFactory.create(JAVA_TYPE),
+                                                   methodReturnPrimitiveType.getType());
+
+                            }
+
+                            // TODO method return reference type
+
                             methodIndex++;
                         }
                     }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java	2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java	2008-08-14 21:40:16 UTC (rev 428)
@@ -31,7 +31,7 @@
 
     private String name;
     
-    private ReturnType returnType;
+    private FieldMetadata returnType;
 
     public abstract boolean isContructor();
     
@@ -84,14 +84,14 @@
     /**
      * @return returnType
      */
-    public ReturnType getReturnType() {
+    public FieldMetadata getReturnType() {
         return returnType;
     }
 
     /**
      * @param returnType Sets returnType to the specified value.
      */
-    public void setReturnType( ReturnType returnType ) {
+    public void setReturnType( FieldMetadata returnType ) {
         this.returnType = returnType;
     }
 }

Deleted: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java	2008-08-14 21:02:38 UTC (rev 427)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java	2008-08-14 21:40:16 UTC (rev 428)
@@ -1,43 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, 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.dna.sequencer.java.metadata;
-
-/**
- * 
- */
-public class ReturnType {
-    private String name;
-
-    /**
-     * @return name
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * @param name Sets name to the specified value.
-     */
-    public void setName( String name ) {
-        this.name = name;
-    }
-}




More information about the dna-commits mailing list