[maven-release-plugin]  copy for tag org.apache.felix.scr.generator-1.1.2

git-svn-id: https://svn.apache.org/repos/asf/felix/releases/org.apache.felix.scr.generator-1.1.2@1146792 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/pom.xml b/pom.xml
index 22fcc6c..633abce 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
     <groupId>org.apache.felix</groupId>
     <artifactId>org.apache.felix.scr.generator</artifactId>
 
-    <version>1.1.3-SNAPSHOT</version>
+    <version>1.1.2</version>
     <packaging>jar</packaging>
 
     <name>Descriptor Generator Implementation</name>
@@ -39,9 +39,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/felix/trunk/scrplugin/generator</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/felix/trunk/scrplugin/generator</developerConnection>
-        <url>http://svn.apache.org/repos/asf/felix/scrplugin/generator</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/felix/releases/org.apache.felix.scr.generator-1.1.2</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/felix/releases/org.apache.felix.scr.generator-1.1.2</developerConnection>
+        <url>scm:svn:https://svn.apache.org/repos/asf/felix/releases/org.apache.felix.scr.generator-1.1.2</url>
     </scm>
 
     <dependencies>
diff --git a/src/main/java/org/apache/felix/scrplugin/JavaClassDescriptorManager.java b/src/main/java/org/apache/felix/scrplugin/JavaClassDescriptorManager.java
index 3da23a7..7583624 100644
--- a/src/main/java/org/apache/felix/scrplugin/JavaClassDescriptorManager.java
+++ b/src/main/java/org/apache/felix/scrplugin/JavaClassDescriptorManager.java
@@ -367,6 +367,18 @@
         return descs;
     }
 
+    private boolean doingHasScrPluginAnnotationCheck = false;
+
+    private boolean hasScrPluginAnnotation(final Class<?> clazz, final JavaClass javaClass)
+    {
+        boolean result;
+        doingHasScrPluginAnnotationCheck = true;
+
+        result = getAnnotationTagProviderManager().hasScrPluginAnnotation( javaClass,
+                new AnnotationJavaClassDescription( clazz, javaClass, this ));
+        doingHasScrPluginAnnotationCheck = false;
+        return result;
+    }
 
     /**
      * Get a java class description for the class.
@@ -393,17 +405,16 @@
                         // check for java annotation descriptions - fallback to
                         // QDox if none found
                         Class<?> clazz = this.classloader.loadClass( className );
-                        if ( this.processAnnotations
-                            && getAnnotationTagProviderManager().hasScrPluginAnnotation( javaClass,
-                                    new AnnotationJavaClassDescription( clazz, javaClasses[index], this )) )
+                        if ( this.processAnnotations && !doingHasScrPluginAnnotationCheck
+                            && hasScrPluginAnnotation(clazz, javaClass) )
                         {
                             this.log.debug( "Found java annotation description for: " + className );
-                            result = new AnnotationJavaClassDescription( clazz, javaClasses[index], this );
+                            result = new AnnotationJavaClassDescription( clazz, javaClass, this );
                         }
                         else if ( this.parseJavadocs )
                         {
                             this.log.debug( "Found qdox description for: " + className );
-                            result = new QDoxJavaClassDescription( clazz, javaClasses[index], this );
+                            result = new QDoxJavaClassDescription( clazz, javaClass, this );
                         }
                     }
                     catch ( ClassNotFoundException e )
@@ -429,7 +440,9 @@
                     throw new SCRDescriptorException( "Unable to load class", className, 0 );
                 }
             }
-            this.javaClassDescriptions.put( className, result );
+            if ( !doingHasScrPluginAnnotationCheck ) {
+                this.javaClassDescriptions.put( className, result );
+            }
         }
         return result;
     }