[dna-commits] DNA SVN: r441 - 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
Tue Aug 19 08:05:11 EDT 2008


Author: spagop
Date: 2008-08-19 08:05:11 -0400 (Tue, 19 Aug 2008)
New Revision: 441

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/CompilationUnitParser.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/JavaMetadataUtil.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ClassMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ImportOnDemandMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MarkerAnnotationMetadata.java
   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/MethodTypeMemberMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/NormalAnnotationMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReferenceFieldMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleImportMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleMemberAnnotationMetadata.java
   trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java
Log:
- support sequencing package declaration( FQL name of the package). Not supported is to get information for package annotation
- support for sequencing class definition (modifiers, class name)
- support for sequencing imports (single import and import on demand)
- support for primitive type sequencing (modifiers, types, variables).Not supported is the javadoc
- support for methods sequencing (modifiers, return type, method name, parameters).Not supported are javadoc
- dna-sequencer-java.patch (randall)

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-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/AbstractJavaMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -66,7 +66,7 @@
 import org.jboss.dna.sequencer.java.metadata.Variable;
 
 /**
- * Abstract definition of a <tt>JavaMetadata<tt>. This class exposes some useful methods, that can
+ * Abstract definition of a <code>JavaMetadata<code>. This class exposes some useful methods, that can
  * be used to create meta data of a compilation unit. Methods can also separately be used.
  * 
  * @author Serge Pagop
@@ -205,12 +205,14 @@
     }
 
     /**
-     * @param typeDeclaration
-     * @param classMetadata
+     * Process modifiers of {@link TypeDeclaration}.
+     * 
+     * @param typeDeclaration - the type declaration.
+     * @param classMetadata - class meta data.
      */
     @SuppressWarnings( "unchecked" )
-    private void processModifiersOfTypDeclaration( TypeDeclaration typeDeclaration,
-                                                   ClassMetadata classMetadata ) {
+    protected void processModifiersOfTypDeclaration( TypeDeclaration typeDeclaration,
+                                                     ClassMetadata classMetadata ) {
         List<IExtendedModifier> modifiers = typeDeclaration.modifiers();
 
         for (IExtendedModifier extendedModifier : modifiers) {
@@ -237,7 +239,7 @@
      * @param methodDeclaration - the MethodDeclaration.
      * @return methodMetadata - the method meta data.
      */
-    private MethodMetadata getMethodMetadataFrom( MethodDeclaration methodDeclaration ) {
+    protected MethodMetadata getMethodMetadataFrom( MethodDeclaration methodDeclaration ) {
         if (methodDeclaration != null) {
             if (methodDeclaration.isConstructor()) {
                 return getConstructorMetadataFrom(methodDeclaration);
@@ -255,7 +257,7 @@
      * @return methodTypeMemberMetadata
      */
     @SuppressWarnings( "unchecked" )
-    private MethodMetadata getMethodTypeMemberMetadataFrom( MethodDeclaration methodDeclaration ) {
+    protected MethodMetadata getMethodTypeMemberMetadataFrom( MethodDeclaration methodDeclaration ) {
         MethodTypeMemberMetadata methodTypeMemberMetadata = new MethodTypeMemberMetadata();
         processReturnTypeOfMethodDeclaration(methodDeclaration, methodTypeMemberMetadata);
         processModifiersOfMethodDeclaration(methodDeclaration, methodTypeMemberMetadata);
@@ -269,18 +271,20 @@
     }
 
     /**
-     * @param methodDeclaration
-     * @param methodMetadata
+     * Process return type of a {@link MethodDeclaration}.
+     * 
+     * @param methodDeclaration - the method declaration.
+     * @param methodMetadata - the method meta data.
      */
-    private void processReturnTypeOfMethodDeclaration( MethodDeclaration methodDeclaration,
-                                                       MethodMetadata methodMetadata ) {
+    protected void processReturnTypeOfMethodDeclaration( MethodDeclaration methodDeclaration,
+                                                         MethodMetadata methodMetadata ) {
         Type type = methodDeclaration.getReturnType2();
-        if(type.isPrimitiveType()) {
+        if (type.isPrimitiveType()) {
             PrimitiveFieldMetadata primitive = new PrimitiveFieldMetadata();
             primitive.setType(((PrimitiveType)type).getPrimitiveTypeCode().toString());
             methodMetadata.setReturnType(primitive);
         }
-        if(type.isSimpleType()) {
+        if (type.isSimpleType()) {
             ReferenceFieldMetadata referenceFieldMetadata = new ReferenceFieldMetadata();
             referenceFieldMetadata.setType(JavaMetadataUtil.getName(((SimpleType)type).getName()));
             methodMetadata.setReturnType(referenceFieldMetadata);
@@ -288,12 +292,14 @@
     }
 
     /**
-     * @param methodDeclaration
-     * @param methodMetadata
+     * Process parameters of a {@link MethodDeclaration}.
+     * 
+     * @param methodDeclaration - the method declaration.
+     * @param methodMetadata - the method meta data.
      */
     @SuppressWarnings( "unchecked" )
-    private void processParametersOfMethodDeclaration( MethodDeclaration methodDeclaration,
-                                                       MethodMetadata methodMetadata ) {
+    protected void processParametersOfMethodDeclaration( MethodDeclaration methodDeclaration,
+                                                         MethodMetadata methodMetadata ) {
         List<SingleVariableDeclaration> params = methodDeclaration.parameters();
         for (SingleVariableDeclaration singleVariableDeclaration : params) {
             Type type = singleVariableDeclaration.getType();
@@ -358,7 +364,7 @@
      * @param methodDeclaration
      * @return constructorMetadata
      */
-    private MethodMetadata getConstructorMetadataFrom( MethodDeclaration methodDeclaration ) {
+    protected MethodMetadata getConstructorMetadataFrom( MethodDeclaration methodDeclaration ) {
         ConstructorMetadata constructorMetadata = new ConstructorMetadata();
         // modifiers
         processModifiersOfMethodDeclaration(methodDeclaration, constructorMetadata);
@@ -374,8 +380,7 @@
      * @param fieldDeclaration - the declaration.
      * @return fieldMetadata - meta data.
      */
-    @SuppressWarnings( "unchecked" )
-    private FieldMetadata getFieldMetadataFrom( FieldDeclaration fieldDeclaration ) {
+    protected FieldMetadata getFieldMetadataFrom( FieldDeclaration fieldDeclaration ) {
         if (fieldDeclaration != null && fieldDeclaration.getType() != null && (!fieldDeclaration.fragments().isEmpty())) {
             // type
             Type type = fieldDeclaration.getType();
@@ -412,12 +417,14 @@
     }
 
     /**
-     * @param fieldDeclaration
-     * @param type
-     * @return SimpleFieldMetadata
+     * Process the simple type of a {@link FieldDeclaration}.
+     * 
+     * @param fieldDeclaration - the field declaration.
+     * @param type - the type.
+     * @return SimpleFieldMetadata.
      */
-    private SimpleFieldMetadata processSimpleType( FieldDeclaration fieldDeclaration,
-                                                   Type type ) {
+    protected SimpleFieldMetadata processSimpleType( FieldDeclaration fieldDeclaration,
+                                                     Type type ) {
         SimpleType simpleType = (SimpleType)type;
         SimpleFieldMetadata simpleFieldMetadata = new SimpleFieldMetadata();
         simpleFieldMetadata.setType(JavaMetadataUtil.getName(simpleType.getName()));
@@ -428,12 +435,14 @@
     }
 
     /**
-     * @param fieldDeclaration
-     * @param type
-     * @return ParameterizedFieldMetadata
+     * Process the parameterized type of a {@link FieldDeclaration}.
+     * 
+     * @param fieldDeclaration - the field declaration.
+     * @param type - the type.
+     * @return ParameterizedFieldMetadata.
      */
-    private ParameterizedFieldMetadata processParameterizedType( FieldDeclaration fieldDeclaration,
-                                                                 Type type ) {
+    protected ParameterizedFieldMetadata processParameterizedType( FieldDeclaration fieldDeclaration,
+                                                                   Type type ) {
         ParameterizedType parameterizedType = (ParameterizedType)type;
         Type typeOfParameterizedType = parameterizedType.getType(); // type may be a simple type or a qualified type.
         ParameterizedFieldMetadata referenceFieldMetadata = (ParameterizedFieldMetadata)createParameterizedFieldMetadataFrom(typeOfParameterizedType);
@@ -445,12 +454,14 @@
     }
 
     /**
-     * @param fieldDeclaration
-     * @param type
-     * @return PrimitiveFieldMetadata
+     * Process the primitive type of a {@link FieldDeclaration}.
+     * 
+     * @param fieldDeclaration - the field declaration.
+     * @param type - the type.
+     * @return PrimitiveFieldMetadata.
      */
-    private PrimitiveFieldMetadata processPrimitiveType( FieldDeclaration fieldDeclaration,
-                                                         Type type ) {
+    protected PrimitiveFieldMetadata processPrimitiveType( FieldDeclaration fieldDeclaration,
+                                                           Type type ) {
         PrimitiveType primitiveType = (PrimitiveType)type;
         PrimitiveFieldMetadata primitiveFieldMetadata = new PrimitiveFieldMetadata();
         primitiveFieldMetadata.setType(primitiveType.getPrimitiveTypeCode().toString());
@@ -491,8 +502,8 @@
      * @param methodMetadata
      */
     @SuppressWarnings( "unchecked" )
-    private void processModifiersOfMethodDeclaration( MethodDeclaration methodDeclaration,
-                                                      MethodMetadata methodMetadata ) {
+    protected void processModifiersOfMethodDeclaration( MethodDeclaration methodDeclaration,
+                                                        MethodMetadata methodMetadata ) {
         List<IExtendedModifier> extendedModifiers = methodDeclaration.modifiers();
         for (IExtendedModifier extendedModifier : extendedModifiers) {
             ModifierMetadata modifierMetadata = new ModifierMetadata();

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/CompilationUnitParser.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/CompilationUnitParser.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/CompilationUnitParser.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -29,7 +29,6 @@
  * The Parser, tha process the a compilation unit.
  * 
  * @author Serge Pagop
- *
  */
 public class CompilationUnitParser {
 
@@ -54,5 +53,5 @@
         ASTNode result = parser.createAST(null);
         return result;
     }
-   
+
 }

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-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataSequencer.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -26,6 +26,7 @@
 import java.util.List;
 import org.apache.commons.lang.StringUtils;
 import org.jboss.dna.common.monitor.ProgressMonitor;
+import org.jboss.dna.common.util.ArgCheck;
 import org.jboss.dna.sequencer.java.metadata.AnnotationMetadata;
 import org.jboss.dna.sequencer.java.metadata.ClassMetadata;
 import org.jboss.dna.sequencer.java.metadata.ConstructorMetadata;
@@ -231,11 +232,10 @@
                                        javaMetadata.getPackageMetadata().getName());
                 }
 
-                List<AnnotationMetadata> annotations = packageMetadata.getAnnotationMetada();
                 int markerAnnotationIndex = 1;
                 int singleAnnatationIndex = 1;
                 int normalAnnotationIndex = 1;
-                for (AnnotationMetadata annotationMetadata : annotations) {
+                for (AnnotationMetadata annotationMetadata : packageMetadata.getAnnotationMetada()) {
                     if (annotationMetadata instanceof MarkerAnnotationMetadata) {
                         MarkerAnnotationMetadata markerAnnotationMetadata = (MarkerAnnotationMetadata)annotationMetadata;
                         Path markerAnnotationChildNode = pathFactory.create(JAVA_COMPILATION_UNIT_NODE + SLASH
@@ -287,10 +287,9 @@
             }
 
             // sequence import declarations of a unit
-            List<ImportMetadata> imports = javaMetadata.getImports();
             int importOnDemandIndex = 1;
             int singleImportIndex = 1;
-            for (ImportMetadata importMetadata : imports) {
+            for (ImportMetadata importMetadata : javaMetadata.getImports()) {
                 if (importMetadata instanceof ImportOnDemandMetadata) {
                     ImportOnDemandMetadata importOnDemandMetadata = (ImportOnDemandMetadata)importMetadata;
                     Path importOnDemandChildNode = pathFactory.create(JAVA_COMPILATION_UNIT_NODE + SLASH + JAVA_IMPORT_CHILD_NODE
@@ -318,8 +317,7 @@
             }
 
             // sequence type declaration (class declaration) information
-            List<TypeMetadata> types = javaMetadata.getTypeMetadata();
-            for (TypeMetadata typeMetadata : types) {
+            for (TypeMetadata typeMetadata : javaMetadata.getTypeMetadata()) {
                 // class declaration
                 if (typeMetadata instanceof ClassMetadata) {
                     ClassMetadata classMetadata = (ClassMetadata)typeMetadata;
@@ -349,21 +347,19 @@
                     }
 
                     // process fields of the class unit.
-                    List<FieldMetadata> fields = classMetadata.getFields();
                     int primitiveIndex = 1;
-                    for (FieldMetadata fieldMetadata : fields) {
+                    for (FieldMetadata fieldMetadata : classMetadata.getFields()) {
                         if (fieldMetadata instanceof PrimitiveFieldMetadata) {
                             PrimitiveFieldMetadata primitiveFieldMetadata = (PrimitiveFieldMetadata)fieldMetadata;
-                            StringBuffer primitiveFieldRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
-                                                                                      + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
-                                                                                      + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
-                                                                                      + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
-                                                                                      + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE
-                                                                                      + SLASH + JAVA_FIELD_CHILD_NODE + SLASH
-                                                                                      + JAVA_FIELD_TYPE_CHILD_NODE + SLASH
-                                                                                      + JAVA_TYPE_CHILD_NODE + SLASH
-                                                                                      + JAVA_PRIMITIVE_TYPE_CHILD_NODE,
-                                                                                      primitiveIndex);
+                            String primitiveFieldRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
+                                                                                + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+                                                                                + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+                                                                                + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+                                                                                + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE
+                                                                                + SLASH + JAVA_FIELD_CHILD_NODE + SLASH
+                                                                                + JAVA_FIELD_TYPE_CHILD_NODE + SLASH
+                                                                                + JAVA_TYPE_CHILD_NODE + SLASH
+                                                                                + JAVA_PRIMITIVE_TYPE_CHILD_NODE, primitiveIndex);
                             // type
                             Path primitiveTypeChildNode = pathFactory.create(primitiveFieldRootPath);
                             output.setProperty(primitiveTypeChildNode,
@@ -373,10 +369,10 @@
                             List<ModifierMetadata> modifiers = primitiveFieldMetadata.getModifiers();
                             int primitiveModifierIndex = 1;
                             for (ModifierMetadata modifierMetadata2 : modifiers) {
-                                String modifierPath = createPathWithIndex(primitiveFieldRootPath.toString() + SLASH
+                                String modifierPath = createPathWithIndex(primitiveFieldRootPath + SLASH
                                                                           + JAVA_MODIFIER_CHILD_NODE + SLASH
                                                                           + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
-                                                                          primitiveModifierIndex).toString();
+                                                                          primitiveModifierIndex);
                                 Path modifierChildNode = pathFactory.create(modifierPath);
                                 output.setProperty(modifierChildNode,
                                                    nameFactory.create(JAVA_MODIFIER_NAME),
@@ -410,15 +406,15 @@
                         if (methodMetadata.isContructor()) {
                             // process contructor
                             ConstructorMetadata constructorMetadata = (ConstructorMetadata)methodMetadata;
-                            StringBuffer constructorRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
-                                                                                   + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
-                                                                                   + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
-                                                                                   + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
-                                                                                   + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE
-                                                                                   + SLASH + JAVA_CONSTRUCTOR_CHILD_NODE + SLASH
-                                                                                   + JAVA_CONSTRUCTOR_DECLARATION_CHILD_NODE,
-                                                                                   constructorIndex);
-                            Path constructorChildNode = pathFactory.create(constructorRootPath.toString());
+                            String constructorRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
+                                                                             + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+                                                                             + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+                                                                             + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+                                                                             + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
+                                                                             + JAVA_CONSTRUCTOR_CHILD_NODE + SLASH
+                                                                             + JAVA_CONSTRUCTOR_DECLARATION_CHILD_NODE,
+                                                                             constructorIndex);
+                            Path constructorChildNode = pathFactory.create(constructorRootPath);
                             output.setProperty(constructorChildNode,
                                                nameFactory.create(JAVA_METHOD_NAME),
                                                constructorMetadata.getName());
@@ -426,10 +422,10 @@
                             // modifiers
                             int constructorModifierIndex = 1;
                             for (ModifierMetadata modifierMetadata : modifiers) {
-                                String contructorModifierPath = createPathWithIndex(constructorRootPath.toString() + SLASH
+                                String contructorModifierPath = createPathWithIndex(constructorRootPath + SLASH
                                                                                     + JAVA_MODIFIER_CHILD_NODE + SLASH
                                                                                     + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
-                                                                                    constructorModifierIndex).toString();
+                                                                                    constructorModifierIndex);
                                 Path constructorModifierChildNode = pathFactory.create(contructorModifierPath);
                                 output.setProperty(constructorModifierChildNode,
                                                    nameFactory.create(JAVA_MODIFIER_NAME),
@@ -441,10 +437,10 @@
                             int constructorParameterIndex = 1;
                             for (FieldMetadata fieldMetadata2 : constructorMetadata.getParameters()) {
 
-                                String constructorParameterRootPath = createPathWithIndex(constructorRootPath.toString() + SLASH
+                                String constructorParameterRootPath = createPathWithIndex(constructorRootPath + SLASH
                                                                                           + JAVA_PARAMETER + SLASH
                                                                                           + JAVA_FORMAL_PARAMETER,
-                                                                                          constructorParameterIndex).toString();
+                                                                                          constructorParameterIndex);
 
                                 if (fieldMetadata2 instanceof PrimitiveFieldMetadata) {
 
@@ -452,9 +448,9 @@
                                     String constructPrimitiveFormalParamRootPath = createPath(constructorParameterRootPath
                                                                                               + SLASH + JAVA_TYPE_CHILD_NODE
                                                                                               + SLASH
-                                                                                              + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+                                                                                              + JAVA_PRIMITIVE_TYPE_CHILD_NODE);
                                     String constructorPrimitiveParamVariablePath = createPath(constructPrimitiveFormalParamRootPath
-                                                                                              + SLASH + JAVA_VARIABLE).toString();
+                                                                                              + SLASH + JAVA_VARIABLE);
                                     Path constructorParamChildNode = pathFactory.create(constructorPrimitiveParamVariablePath);
                                     for (Variable variable : primitive.getVariables()) {
                                         // name
@@ -480,14 +476,14 @@
 
                             // normal method
                             MethodTypeMemberMetadata methodTypeMemberMetadata = (MethodTypeMemberMetadata)methodMetadata;
-                            StringBuffer methodRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
-                                                                              + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
-                                                                              + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
-                                                                              + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
-                                                                              + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
-                                                                              + JAVA_METHOD_CHILD_NODE + SLASH
-                                                                              + JAVA_METHOD_DECLARATION_CHILD_NODE, methodIndex);
-                            Path methodChildNode = pathFactory.create(methodRootPath.toString());
+                            String methodRootPath = createPathWithIndex(JAVA_COMPILATION_UNIT_NODE + SLASH
+                                                                        + JAVA_UNIT_TYPE_CHILD_NODE + SLASH
+                                                                        + JAVA_CLASS_DECLARATION_CHILD_NODE + SLASH
+                                                                        + JAVA_NORMAL_CLASS_CHILD_NODE + SLASH
+                                                                        + JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE + SLASH
+                                                                        + JAVA_METHOD_CHILD_NODE + SLASH
+                                                                        + JAVA_METHOD_DECLARATION_CHILD_NODE, methodIndex);
+                            Path methodChildNode = pathFactory.create(methodRootPath);
                             output.setProperty(methodChildNode,
                                                nameFactory.create(JAVA_METHOD_NAME),
                                                methodTypeMemberMetadata.getName());
@@ -495,10 +491,9 @@
                             // 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();
+                                String methodModifierPath = createPathWithIndex(methodRootPath + SLASH + JAVA_MODIFIER_CHILD_NODE
+                                                                                + SLASH + JAVA_MODIFIER_DECLARATION_CHILD_NODE,
+                                                                                methodModierIndex);
                                 Path methodModifierChildNode = pathFactory.create(methodModifierPath);
                                 output.setProperty(methodModifierChildNode,
                                                    nameFactory.create(JAVA_MODIFIER_NAME),
@@ -509,10 +504,9 @@
                             int methodParameterIndex = 1;
                             for (FieldMetadata fieldMetadata : methodMetadata.getParameters()) {
 
-                                String methodPrimitiveParamRootPath = createPathWithIndex(methodRootPath.toString() + SLASH
-                                                                                          + JAVA_PARAMETER + SLASH
-                                                                                          + JAVA_FORMAL_PARAMETER,
-                                                                                          methodParameterIndex).toString();
+                                String methodPrimitiveParamRootPath = createPathWithIndex(methodRootPath + SLASH + JAVA_PARAMETER
+                                                                                          + SLASH + JAVA_FORMAL_PARAMETER,
+                                                                                          methodParameterIndex);
 
                                 if (fieldMetadata instanceof PrimitiveFieldMetadata) {
 
@@ -520,10 +514,10 @@
 
                                     String methodPrimitiveFormalParamRootPath = createPath(methodPrimitiveParamRootPath + SLASH
                                                                                            + JAVA_TYPE_CHILD_NODE + SLASH
-                                                                                           + JAVA_PRIMITIVE_TYPE_CHILD_NODE).toString();
+                                                                                           + JAVA_PRIMITIVE_TYPE_CHILD_NODE);
 
                                     String methodPrimitiveParamVariablePath = createPath(methodPrimitiveFormalParamRootPath
-                                                                                         + SLASH + JAVA_VARIABLE).toString();
+                                                                                         + SLASH + JAVA_VARIABLE);
 
                                     Path methodParamChildNode = pathFactory.create(methodPrimitiveParamVariablePath);
                                     for (Variable variable : primitive.getVariables()) {
@@ -547,12 +541,12 @@
 
                             // 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();
+                                                                                  + JAVA_PRIMITIVE_TYPE_CHILD_NODE);
                                 Path methodReturnPrimitiveTypeChildNode = pathFactory.create(methodReturnPrimitiveTypePath);
                                 output.setProperty(methodReturnPrimitiveTypeChildNode,
                                                    nameFactory.create(JAVA_TYPE),
@@ -578,34 +572,27 @@
     /**
      * Create a path for the tree with index.
      * 
-     * @param path - the path.
-     * @param index - the index begin with 1.
-     * @return {@link StringBuffer}
+     * @param path the path.
+     * @param index the index begin with 1.
+     * @return the string
+     * @throws IllegalArgumentException if the path is null, blank or empty, or if the index is not a positive value
      */
-    private StringBuffer createPathWithIndex( String path,
-                                              int index ) {
-        StringBuffer rootPath = new StringBuffer();
-
-        if (StringUtils.isEmpty(path)) {
-            throw new IllegalArgumentException("path has to be unique and not empty");
-        }
-        if (index < 1) {
-            throw new IllegalArgumentException("index must begin with 1");
-        }
-        rootPath.append(path + "[" + index + "]");
-        return rootPath;
+    private String createPathWithIndex( String path,
+                                        int index ) {
+        ArgCheck.isNotEmpty(path, "path");
+        ArgCheck.isPositive(index, "index");
+        return path + "[" + index + "]";
     }
 
     /**
      * Create a path for the tree without index.
      * 
      * @param path - the path.
-     * @return a {@link StringBuffer}
+     * @return the string
+     * @throws IllegalArgumentException if the path is null, blank or empty
      */
-    private StringBuffer createPath( String path ) {
-        if (StringUtils.isEmpty(path)) {
-            throw new IllegalArgumentException("path has to be unique and not empty");
-        }
-        return new StringBuffer().append(path);
+    private String createPath( String path ) {
+        ArgCheck.isNotEmpty(path, "path");
+        return path;
     }
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataUtil.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataUtil.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/JavaMetadataUtil.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -25,13 +25,14 @@
 import java.io.InputStream;
 import org.eclipse.jdt.core.dom.Name;
 import org.eclipse.jdt.internal.compiler.util.Util;
+import org.jboss.dna.common.util.ArgCheck;
 
 /**
  * @author Serge Pagop
  */
 public class JavaMetadataUtil {
     /**
-     * Get the length of the inputstream.
+     * Get the length of the input stream.
      * 
      * @param stream - the <code>InputStream</code>
      * @return the length of the stream.
@@ -46,7 +47,7 @@
      * 
      * @param inputStream - the <code>FileInputStream</code>.
      * @param length - the length of the java file.
-     * @param encoding - the encoding of the sourece, if there is one.
+     * @param encoding - the encoding of the source, if there is one.
      * @return the array character of the java source.
      * @throws IOException - exceptional error can be thrown during the reading of the file.
      */
@@ -64,10 +65,11 @@
      * @return a FQN of the name.
      */
     public static String getName( Name name ) {
-        if (name != null) {
-            return name.getFullyQualifiedName();
-        }
-        final String message = "name cannot be null";
-        throw new IllegalArgumentException(message);
+        ArgCheck.isNotNull(name, "name");
+        return name.getFullyQualifiedName();
     }
+
+    // prevent construction
+    private JavaMetadataUtil() {
+    }
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/AnnotationMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -25,11 +25,12 @@
  * @author Serge Pagop
  */
 public abstract class AnnotationMetadata {
-    
+
     private String name;
 
     /**
      * Get the name of the modifier.
+     * 
      * @return name of the modifier.
      */
     public String getName() {
@@ -42,5 +43,5 @@
     public void setName( String name ) {
         this.name = name;
     }
-    
+
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ClassMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ClassMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ClassMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,12 +21,9 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
-
 /**
  * @author Serge Pagop
  */
 public class ClassMetadata extends TypeMetadata {
 
-
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -28,13 +28,13 @@
  * @author Serge Pagop
  */
 public class FieldMetadata {
-    
+
     /** The type of the field */
     private String type;
-    
+
     /** The variables */
     private List<Variable> variables = new ArrayList<Variable>();
-    
+
     private List<ModifierMetadata> modifierMetadatas = new ArrayList<ModifierMetadata>();
 
     /**

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ImportOnDemandMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ImportOnDemandMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ImportOnDemandMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,7 +21,6 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * @author Serge Pagop
  */
@@ -29,7 +28,7 @@
 
     /**
      * {@inheritDoc}
-     *
+     * 
      * @see org.jboss.dna.sequencer.java.metadata.ImportMetadata#isOnDemand()
      */
     @Override
@@ -39,12 +38,12 @@
 
     /**
      * {@inheritDoc}
-     *
+     * 
      * @see org.jboss.dna.sequencer.java.metadata.ImportMetadata#isSingle()
      */
     @Override
     protected boolean isSingle() {
         return false;
     }
-    
+
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MarkerAnnotationMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MarkerAnnotationMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MarkerAnnotationMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,7 +21,6 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * 
  */

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-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -30,11 +30,11 @@
 public abstract class MethodMetadata {
 
     private String name;
-    
+
     private FieldMetadata returnType;
 
     public abstract boolean isContructor();
-    
+
     private List<ModifierMetadata> modifiers = new ArrayList<ModifierMetadata>();
 
     private List<FieldMetadata> parameters = new ArrayList<FieldMetadata>();

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -28,7 +28,7 @@
 
     /**
      * {@inheritDoc}
-     *
+     * 
      * @see org.jboss.dna.sequencer.java.metadata.MethodMetadata#isContructor()
      */
     @Override

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -25,5 +25,5 @@
  * 
  */
 public class ModifierMetadata extends AnnotationMetadata {
-    
+
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/NormalAnnotationMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/NormalAnnotationMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/NormalAnnotationMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,12 +21,11 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * 
  */
 public class NormalAnnotationMetadata extends AnnotationMetadata {
-    private  boolean normal;
+    private boolean normal;
 
     /**
      * @return normal

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,11 +21,9 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * Field meta data for parameterized type.
  */
 public class ParameterizedFieldMetadata extends ReferenceFieldMetadata {
 
-
 }

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReferenceFieldMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReferenceFieldMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReferenceFieldMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,7 +21,6 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * Field meta data for parameterized type.
  */

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleImportMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleImportMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleImportMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,7 +21,6 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * Serge Pagop
  */
@@ -29,7 +28,7 @@
 
     /**
      * {@inheritDoc}
-     *
+     * 
      * @see org.jboss.dna.sequencer.java.metadata.ImportMetadata#isOnDemand()
      */
     @Override
@@ -39,7 +38,7 @@
 
     /**
      * {@inheritDoc}
-     *
+     * 
      * @see org.jboss.dna.sequencer.java.metadata.ImportMetadata#isSingle()
      */
     @Override

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleMemberAnnotationMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleMemberAnnotationMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SingleMemberAnnotationMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -21,7 +21,6 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
-
 /**
  * 
  */

Modified: trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java
===================================================================
--- trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java	2008-08-18 21:38:58 UTC (rev 440)
+++ trunk/extensions/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java	2008-08-19 12:05:11 UTC (rev 441)
@@ -81,7 +81,6 @@
     }
 
     /**
-     * 
      * @return modifiers
      */
     public List<ModifierMetadata> getModifiers() {




More information about the dna-commits mailing list