001    /*
002     * JBoss DNA (http://www.jboss.org/dna)
003     * See the COPYRIGHT.txt file distributed with this work for information
004     * regarding copyright ownership.  Some portions may be licensed
005     * to Red Hat, Inc. under one or more contributor license agreements.
006     * See the AUTHORS.txt file in the distribution for a full listing of 
007     * individual contributors. 
008     *
009     * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
010     * is licensed to you under the terms of the GNU Lesser General Public License as
011     * published by the Free Software Foundation; either version 2.1 of
012     * the License, or (at your option) any later version.
013     *
014     * JBoss DNA is distributed in the hope that it will be useful,
015     * but WITHOUT ANY WARRANTY; without even the implied warranty of
016     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
017     * Lesser General Public License for more details.
018     *
019     * You should have received a copy of the GNU Lesser General Public
020     * License along with this software; if not, write to the Free
021     * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
022     * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
023     */
024    package org.jboss.dna.sequencer.java;
025    
026    /**
027     * JavaSourceCndDefinition defines each elements and sub elements, that must be found in the java source cnd document.
028     * 
029     * @author Serge Pagop
030     */
031    public interface JavaSourceCndDefinition {
032    
033        public static final String SLASH = "/";
034    
035        public static final String JAVA_COMPILATION_UNIT_NODE = "java:compilationUnit";
036        public static final String JAVA_COMPILATION_UNIT_PRIMARY_TYPE = "jcr:primaryType";
037    
038        // package declaration
039        public static final String JAVA_PACKAGE_CHILD_NODE = "java:package";
040        public static final String JAVA_PACKAGE_DECLARATION_CHILD_NODE = "java:packageDeclaration";
041        public static final String JAVA_PACKAGE_NAME = "java:packageName";
042    
043        // Annnotation declaration
044        public static final String JAVA_ANNOTATION_CHILD_NODE = "java:annotation";
045        public static final String JAVA_ANNOTATION_DECLARATION_CHILD_NODE = "java:annotationDeclaration";
046        public static final String JAVA_ANNOTATION_TYPE_CHILD_NODE = "java:annotationType";
047    
048        // Marker annotation
049        public static final String JAVA_MARKER_ANNOTATION_CHILD_NODE = "java:markerAnnotation";
050        public static final String JAVA_MARKER_ANNOTATION_NAME = "java:markerAnnotationName ";
051    
052        // Normal annotation
053        public static final String JAVA_NORMAL_ANNOTATION_CHILD_NODE = "java:normalAnnotation";
054        public static final String JAVA_NORMALANNOTATION_NAME = "java:normalAnnotationName";
055    
056        // Single element annotation
057        public static final String JAVA_SINGLE_ELEMENT_ANNOTATION_CHILD_NODE = "java:singleElementAnnotation";
058        public static final String JAVA_SINGLE_ANNOTATION_NAME = "java:singleElementAnnotationName";
059    
060        // Import declaration
061        public static final String JAVA_IMPORT_CHILD_NODE = "java:import";
062        public static final String JAVA_IMPORT_DECLARATION_CHILD_NODE = "java:importDeclaration";
063    
064        // Single import declaration
065        public static final String JAVA_SINGLE_IMPORT_CHILD_NODE = "java:singleImport";
066        public static final String JAVA_SINGLE_IMPORT_TYPE_DECLARATION_CHILD_NODE = "java:singleTypeImportDeclaration";
067        public static final String JAVA_SINGLE_IMPORT_NAME = "java:singleImportName ";
068    
069        // OnDemand import declaration
070        public static final String JAVA_ON_DEMAND_IMPORT_CHILD_NODE = "java:importOnDemand";
071        public static final String JAVA_ON_DEMAND_IMPORT_TYPE_DECLARATION_CHILD_NODE = "java:typeImportOnDemandDeclaration";
072        public static final String JAVA_ON_DEMAND_IMPORT_NAME = "java:onDemandImportName";
073    
074        // Class declaration
075        public static final String JAVA_UNIT_TYPE_CHILD_NODE = "java:unitType";
076        public static final String JAVA_CLASS_DECLARATION_CHILD_NODE = "java:classDeclaration";
077    
078        // Normal class declaration
079        public static final String JAVA_NORMAL_CLASS_CHILD_NODE = "java:normalClass";
080        public static final String JAVA_NORMAL_CLASS_DECLARATION_CHILD_NODE = "java:normalClassDeclaration";
081        public static final String JAVA_NORMAL_CLASS_NAME = "java:normalClassName";
082    
083        // Modifier declaration
084        public static final String JAVA_MODIFIER_CHILD_NODE = "java:modifier";
085        public static final String JAVA_MODIFIER_DECLARATION_CHILD_NODE = "java:modifierDeclaration";
086        public static final String JAVA_MODIFIER_NAME = "java:modifierName";
087    
088        // Variable declaration
089        public static final String JAVA_VARIABLE = "java:variable";
090        public static final String JAVA_VARIABLE_NAME = "java:variableName";
091    
092        // Primitive type
093        public static final String JAVA_FIELD_CHILD_NODE = "java:field";
094        public static final String JAVA_FIELD_TYPE_CHILD_NODE = "java:fieldType";
095        public static final String JAVA_TYPE_CHILD_NODE = "java:type";
096        public static final String JAVA_PRIMITIVE_TYPE_CHILD_NODE = "java:primitiveType";
097        public static final String JAVA_PRIMITIVE_TYPE_NAME = "java:primitiveTypeName";
098        public static final String JAVA_PRIMITIVE_TYPE_VARIABLE = "java:primitiveVariable";
099    
100        // Method declaration
101        public static final String JAVA_METHOD_CHILD_NODE = "java:method";
102        public static final String JAVA_METHOD_DECLARATION_CHILD_NODE = "java:methodDeclaration";
103        public static final String JAVA_METHOD_NAME = "java:methodName";
104    
105        // Constructor
106        public static final String JAVA_CONSTRUCTOR_CHILD_NODE = "java:constructor";
107        public static final String JAVA_CONSTRUCTOR_DECLARATION_CHILD_NODE = "java:constructorDeclaration";
108        public static final String JAVA_CONSTRUCTOR_NAME = "java:constructorName";
109    
110        // Parameter
111        public static final String JAVA_PARAMETER = "java:parameter";
112        public static final String JAVA_FORMAL_PARAMETER = "java:formalParameter";
113        public static final String JAVA_PARAMETER_NAME = "java:parameterName";
114    
115        public static final String JAVA_RETURN_TYPE = "java:resultType";
116    
117        // Simple type
118        public static final String JAVA_SIMPLE_TYPE_CHILD_NODE = "java:simpleType";
119        public static final String JAVA_SIMPLE_TYPE_DESCRIPTION = "java:simpleTypeDescription";
120        public static final String JAVA_SIMPLE_TYPE_NAME = "java:simpleTypeName";
121        public static final String JAVA_SIMPLE_TYPE_VARIABLE = "java:simpleTypeVariable";
122        public static final String JAVA_SIMPLE_TYPE_MODIFIER_CHILD_NODE = "java:simpleTypeModifier";
123        
124        // Parameterized type
125        public static final String JAVA_PARAMETERIZED_TYPE_CHILD_NODE="java:parameterizedType";
126        public static final String JAVA_PARAMETERIZED_TYPE_DESCRIPTION ="java:parameterizedTypeDescription";
127        public static final String JAVA_PARAMETERIZED_TYPE_MODIFIER_CHILD_NODE ="java:parameterizedTypeModifier";
128        public static final String JAVA_PARAMETERIZED_TYPE_NAME ="java:parameterizedTypeName";
129        public static final String JAVA_PARAMETERIZED_TYPE_VARIABLE ="java:parameterizedTypeVariable";
130        
131        // Array type
132        public static final String JAVA_ARRAY_TYPE_CHILD_NODE="java:arrayType";
133        public static final String JAVA_ARRAY_TYPE_DESCRIPTION ="java:arrayTypeDescription";
134        public static final String JAVA_ARRAY_TYPE_MODIFIER_CHILD_NODE ="java:arrayTypeModifier";
135        public static final String JAVA_ARRAY_TYPE_NAME ="java:arrayTypeName";
136        public static final String JAVA_ARRAY_TYPE_VARIABLE ="java:arrayTypeVariable";
137    
138    }