[dna-commits] DNA SVN: r412 - trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata.

dna-commits at lists.jboss.org dna-commits at lists.jboss.org
Sun Aug 10 14:42:32 EDT 2008


Author: spagop
Date: 2008-08-10 14:42:32 -0400 (Sun, 10 Aug 2008)
New Revision: 412

Added:
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java
Modified:
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ConstructorMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/PrimitiveFieldMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SimpleFieldMetadata.java
   trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java
Log:
enhance abstract meta data to support modifiers, return type and parameters of methods and more and also test units

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ConstructorMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ConstructorMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ConstructorMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -21,6 +21,8 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
+import java.util.List;
+
 /**
  * 
  */
@@ -38,4 +40,5 @@
     public boolean isContructor() {
         return true;
     }
+
 }

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/FieldMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -28,9 +28,14 @@
  * @author Serge Pagop
  */
 public class FieldMetadata {
-
-    /** The name */
+    
+    /** The type of the field */
+    private String type;
+    
+    /** The variables */
     private List<Variable> variables = new ArrayList<Variable>();
+    
+    private List<ModifierMetadata> modifierMetadatas = new ArrayList<ModifierMetadata>();
 
     /**
      * @return variables
@@ -45,4 +50,32 @@
     public void setVariables( List<Variable> variables ) {
         this.variables = variables;
     }
+
+    /**
+     * @return type
+     */
+    public String getType() {
+        return type;
+    }
+
+    /**
+     * @param type Sets type to the specified value.
+     */
+    public void setType( String type ) {
+        this.type = type;
+    }
+
+    /**
+     * @return modifierMetadatas
+     */
+    public List<ModifierMetadata> getModifiers() {
+        return modifierMetadatas;
+    }
+
+    /**
+     * @param modifierMetadatas Sets modifierMetadatas to the specified value.
+     */
+    public void setModifiers( List<ModifierMetadata> modifierMetadatas ) {
+        this.modifierMetadatas = modifierMetadatas;
+    }
 }

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -21,11 +21,24 @@
  */
 package org.jboss.dna.sequencer.java.metadata;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
- * 
+ * MethodMetadata
  */
-public class MethodMetadata {
+public abstract class MethodMetadata {
+
     private String name;
+    
+    private ReturnType returnType;
+
+    public abstract boolean isContructor();
+    
+    private List<ModifierMetadata> modifiers = new ArrayList<ModifierMetadata>();
+
+    private List<FieldMetadata> parameters = new ArrayList<FieldMetadata>();
+
     /**
      * @return name
      */
@@ -41,9 +54,44 @@
     }
 
     /**
-     * @return isContructor
+     * @return modifiers
      */
-    public boolean isContructor() {
-        return false;
-    }    
+    public List<ModifierMetadata> getModifiers() {
+        return modifiers;
+    }
+
+    /**
+     * @param modifiers Sets modifiers to the specified value.
+     */
+    public void setModifiers( List<ModifierMetadata> modifiers ) {
+        this.modifiers = modifiers;
+    }
+
+    /**
+     * @return parameters
+     */
+    public List<FieldMetadata> getParameters() {
+        return parameters;
+    }
+
+    /**
+     * @param parameters Sets parameters to the specified value.
+     */
+    public void setParameters( List<FieldMetadata> parameters ) {
+        this.parameters = parameters;
+    }
+
+    /**
+     * @return returnType
+     */
+    public ReturnType getReturnType() {
+        return returnType;
+    }
+
+    /**
+     * @param returnType Sets returnType to the specified value.
+     */
+    public void setReturnType( ReturnType returnType ) {
+        this.returnType = returnType;
+    }
 }

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/MethodTypeMemberMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -26,4 +26,14 @@
  */
 public class MethodTypeMemberMetadata extends MethodMetadata {
 
+    /**
+     * {@inheritDoc}
+     *
+     * @see org.jboss.dna.sequencer.java.metadata.MethodMetadata#isContructor()
+     */
+    @Override
+    public boolean isContructor() {
+        return false;
+    }
+
 }

Added: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java	                        (rev 0)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ModifierMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -0,0 +1,29 @@
+/*
+ * 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 ModifierMetadata extends AnnotationMetadata {
+    
+}

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ParameterizedFieldMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -25,22 +25,7 @@
 /**
  * Field meta data for parameterized type.
  */
-public class ParameterizedFieldMetadata extends FieldMetadata {
+public class ParameterizedFieldMetadata extends ReferenceFieldMetadata {
 
-    private String name;
 
-    /**
-     * @param name
-     */
-    public void setName( String name ) {
-        this.name = name;
-    }
-
-    /**
-     * @return name
-     */
-    public String getName() {
-        return name;
-    }
-
 }

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/PrimitiveFieldMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/PrimitiveFieldMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/PrimitiveFieldMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -26,21 +26,4 @@
  */
 public class PrimitiveFieldMetadata extends FieldMetadata {
 
-    /** The code */
-    private String code;
-
-    /**
-     * @return code
-     */
-    public String getCode() {
-        return code;
-    }
-
-    /**
-     * @param code Sets code to the specified value.
-     */
-    public void setCode( String code ) {
-        this.code = code;
-    }
-
 }

Added: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java	                        (rev 0)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/ReturnType.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -0,0 +1,43 @@
+/*
+ * 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;
+    }
+}

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SimpleFieldMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SimpleFieldMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/SimpleFieldMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -24,22 +24,6 @@
 /**
  * field meta data for simple type.
  */
-public class SimpleFieldMetadata extends FieldMetadata {
+public class SimpleFieldMetadata extends ReferenceFieldMetadata {
 
-    private String name;
-
-    /**
-     * @param name
-     */
-    public void setName( String name ) {
-        this.name = name;
-    }
-
-    /**
-     * @return name
-     */
-    public String getName() {
-        return name;
-    }
-
 }

Modified: trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java
===================================================================
--- trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java	2008-08-10 18:41:55 UTC (rev 411)
+++ trunk/sequencers/dna-sequencer-java/src/main/java/org/jboss/dna/sequencer/java/metadata/TypeMetadata.java	2008-08-10 18:42:32 UTC (rev 412)
@@ -39,7 +39,7 @@
     private String name;
 
     /** All modifiers of a top level type */
-    private Map<Integer, String> modifiers = new HashMap<Integer, String>();
+    private List<ModifierMetadata> modifiers = new ArrayList<ModifierMetadata>();
 
     /** All annotations of a top level type */
     private List<AnnotationMetadata> annotations = new ArrayList<AnnotationMetadata>();
@@ -86,14 +86,14 @@
      * 
      * @return modifiers
      */
-    public Map<Integer, String> getModifiers() {
+    public List<ModifierMetadata> getModifiers() {
         return modifiers;
     }
 
     /**
      * @param modifiers Sets modifiers to the specified value.
      */
-    public void setModifiers( Map<Integer, String> modifiers ) {
+    public void setModifiers( List<ModifierMetadata> modifiers ) {
         this.modifiers = modifiers;
     }
 




More information about the dna-commits mailing list