Author: alien11689
Date: Wed Apr 26 15:55:00 2017
New Revision: 1792759

URL: http://svn.apache.org/viewvc?rev=1792759&view=rev
Log:
[ARIES-1721] Extract Spring annotation handlers to separate jar

Added:
    aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/pom.xml
    aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T1.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T2.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/verify.groovy
    aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/
    aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/pom.xml
    aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/AutowiredAsInject.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentAsNamed.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentBeanFinder.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/DependsOnAttributeResolver.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/LazyAttributeResolver.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/QualifierAsNamed.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/SpringTransactionalFactory.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ValueInjectionHandler.java
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.MethodAnnotationHandler
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.ValueInjectionHandler
Removed:
    
aries/trunk/blueprint/plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/
Modified:
    aries/trunk/blueprint/plugin/blueprint-maven-plugin/pom.xml
    aries/trunk/blueprint/plugin/pom.xml

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/pom.xml
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/pom.xml?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/pom.xml 
(added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/pom.xml 
Wed Apr 26 15:55:00 2017
@@ -0,0 +1,81 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.aries.blueprint.plugin.itest</groupId>
+    <artifactId>spring-project</artifactId>
+    <version>1.0.0-SNAPSHOT</version>
+    <packaging>jar</packaging>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-context</artifactId>
+            <version>3.1.4.RELEASE</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>spring-aop</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>spring-core</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>spring-expression</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>spring-asm</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-tx</artifactId>
+            <version>3.1.4.RELEASE</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.aries.blueprint</groupId>
+                <artifactId>blueprint-maven-plugin</artifactId>
+                <version>@blueprint-maven-plugin.version@</version>
+                <configuration>
+                    <generatedFileName>blueprint.xml</generatedFileName>
+                    <generatedDir>custom/my</generatedDir>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>add-resource-dir</goal>
+                            <goal>blueprint-generate</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T1.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T1.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T1.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T1.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,26 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package p1;
+
+import org.springframework.stereotype.Component;
+
+@Component
+public class T1 {
+
+}
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T2.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T2.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T2.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/src/main/java/p1/T2.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,32 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package p1;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+@Component
+public class T2 {
+
+    @Autowired
+    private T2(T1 t1, @Value("test") String t){
+
+    }
+}
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/verify.groovy
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/verify.groovy?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/verify.groovy
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-itest/src/it/spring/verify.groovy
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+def file = new File(basedir, 
'target/generated-sources/blueprint/custom/my/blueprint.xml')
+assert file.exists()
+def xml = new groovy.util.XmlSlurper().parse(file)
+assert xml.name() == 'blueprint'
+assert xml.bean.find {it.@id == 't1'}.@class == 'p1.T1'
+assert xml.bean.find {it.@id == 't2'}.@class == 'p1.T2'
+assert xml.bean.find {it.@id == 't2'}.argument[0].@ref == 't1'
+assert xml.bean.find {it.@id == 't2'}.argument[1].@value == 'test'

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/pom.xml
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/pom.xml?rev=1792759&view=auto
==============================================================================
--- aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/pom.xml 
(added)
+++ aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/pom.xml 
Wed Apr 26 15:55:00 2017
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <parent>
+        <groupId>org.apache.aries</groupId>
+        <artifactId>parent</artifactId>
+        <version>2.0.1</version>
+        <relativePath/>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.aries.blueprint</groupId>
+    <artifactId>blueprint-maven-plugin-spring-handlers</artifactId>
+    <version>1.0.0-SNAPSHOT</version>
+    <name>Apache Aries Blueprint Maven Plugin Spring Handlers</name>
+
+    <scm>
+        
<connection>scm:svn:http://svn.apache.org/repos/asf/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers</connection>
+        
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers</developerConnection>
+        
<url>http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers</url>
+    </scm>
+
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <target>1.7</target>
+                    <source>1.7</source>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.aries.blueprint</groupId>
+            <artifactId>blueprint-maven-plugin-spi</artifactId>
+            <version>1.0.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-context</artifactId>
+            <version>3.1.4.RELEASE</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>spring-aop</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>spring-core</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>spring-expression</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>spring-asm</artifactId>
+                    <groupId>org.springframework</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-tx</artifactId>
+            <version>3.1.4.RELEASE</version>
+        </dependency>
+
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+            <version>19.0</version>
+        </dependency>
+    </dependencies>
+
+</project>
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/AutowiredAsInject.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/AutowiredAsInject.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/AutowiredAsInject.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/AutowiredAsInject.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,29 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.apache.aries.blueprint.plugin.spi.InjectLikeHandler;
+import org.springframework.beans.factory.annotation.Autowired;
+
+public class AutowiredAsInject implements InjectLikeHandler<Autowired> {
+    @Override
+    public Class<Autowired> getAnnotation() {
+        return Autowired.class;
+    }
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentAsNamed.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentAsNamed.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentAsNamed.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentAsNamed.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,49 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.apache.aries.blueprint.plugin.spi.NamedLikeHandler;
+import org.springframework.stereotype.Component;
+
+import java.lang.reflect.AnnotatedElement;
+
+public class ComponentAsNamed implements NamedLikeHandler {
+    @Override
+    public Class getAnnotation() {
+        return Component.class;
+    }
+
+    @Override
+    public String getName(Class clazz, AnnotatedElement annotatedElement) {
+        Component annotation = annotatedElement.getAnnotation(Component.class);
+        if (annotation != null && annotation.value() != null && 
!"".equals(annotation.value())) {
+            return annotation.value();
+        }
+        return null;
+    }
+
+    @Override
+    public String getName(Object annotation) {
+        Component component = Component.class.cast(annotation);
+        if (component != null && component.value() != null && 
!"".equals(component.value())) {
+            return component.value();
+        }
+        return null;
+    }
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentBeanFinder.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentBeanFinder.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentBeanFinder.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ComponentBeanFinder.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,35 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.apache.aries.blueprint.plugin.spi.BeanFinder;
+import org.springframework.stereotype.Component;
+
+public class ComponentBeanFinder implements BeanFinder<Component> {
+
+    @Override
+    public Class<Component> getAnnotation() {
+        return Component.class;
+    }
+
+    @Override
+    public boolean isSingleton() {
+        return true;
+    }
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/DependsOnAttributeResolver.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/DependsOnAttributeResolver.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/DependsOnAttributeResolver.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/DependsOnAttributeResolver.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,46 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler;
+import org.apache.aries.blueprint.plugin.spi.BeanEnricher;
+import org.apache.aries.blueprint.plugin.spi.ContextEnricher;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.context.annotation.DependsOn;
+
+import java.lang.reflect.AnnotatedElement;
+
+public class DependsOnAttributeResolver implements 
BeanAnnotationHandler<DependsOn> {
+    @Override
+    public Class<DependsOn> getAnnotation() {
+        return DependsOn.class;
+    }
+
+    @Override
+    public void handleBeanAnnotation(AnnotatedElement annotatedElement, String 
id, ContextEnricher contextEnricher, BeanEnricher beanEnricher) {
+        DependsOn annotation = annotatedElement.getAnnotation(DependsOn.class);
+        String[] value = annotation.value();
+        if (value.length == 0) {
+            return;
+        }
+        String dependsOnValue = StringUtils.join(value, " ");
+        beanEnricher.addAttribute("depends-on", dependsOnValue);
+    }
+
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/LazyAttributeResolver.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/LazyAttributeResolver.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/LazyAttributeResolver.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/LazyAttributeResolver.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,40 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler;
+import org.apache.aries.blueprint.plugin.spi.BeanEnricher;
+import org.apache.aries.blueprint.plugin.spi.ContextEnricher;
+import org.springframework.context.annotation.Lazy;
+
+import java.lang.reflect.AnnotatedElement;
+
+public class LazyAttributeResolver implements BeanAnnotationHandler<Lazy> {
+    @Override
+    public Class<Lazy> getAnnotation() {
+        return Lazy.class;
+    }
+
+    @Override
+    public void handleBeanAnnotation(AnnotatedElement annotatedElement, String 
id, ContextEnricher contextEnricher, BeanEnricher beanEnricher) {
+        Lazy lazy = annotatedElement.getAnnotation(Lazy.class);
+        beanEnricher.addAttribute("activation", lazy.value() ? "lazy" : 
"eager");
+    }
+
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/QualifierAsNamed.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/QualifierAsNamed.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/QualifierAsNamed.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/QualifierAsNamed.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,49 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.apache.aries.blueprint.plugin.spi.NamedLikeHandler;
+import org.springframework.beans.factory.annotation.Qualifier;
+
+import java.lang.reflect.AnnotatedElement;
+
+public class QualifierAsNamed implements NamedLikeHandler {
+    @Override
+    public Class getAnnotation() {
+        return Qualifier.class;
+    }
+
+    @Override
+    public String getName(Class clazz, AnnotatedElement annotatedElement) {
+        Qualifier annotation = annotatedElement.getAnnotation(Qualifier.class);
+        if (annotation != null && annotation.value() != null && 
!"".equals(annotation.value())) {
+            return annotation.value();
+        }
+        return null;
+    }
+
+    @Override
+    public String getName(Object annotation) {
+        Qualifier qualifier = Qualifier.class.cast(annotation);
+        if (qualifier != null && qualifier.value() != null && 
!"".equals(qualifier.value())) {
+            return qualifier.value();
+        }
+        return null;
+    }
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/SpringTransactionalFactory.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/SpringTransactionalFactory.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/SpringTransactionalFactory.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/SpringTransactionalFactory.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,148 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import com.google.common.base.CaseFormat;
+
+import org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler;
+import org.apache.aries.blueprint.plugin.spi.BeanEnricher;
+import org.apache.aries.blueprint.plugin.spi.BlueprintConfiguration;
+import org.apache.aries.blueprint.plugin.spi.ContextEnricher;
+import org.apache.aries.blueprint.plugin.spi.MethodAnnotationHandler;
+import org.apache.aries.blueprint.plugin.spi.XmlWriter;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamWriter;
+
+import java.lang.reflect.AnnotatedElement;
+import java.lang.reflect.Method;
+import java.util.List;
+import java.util.Set;
+
+public class SpringTransactionalFactory implements 
BeanAnnotationHandler<Transactional>, MethodAnnotationHandler<Transactional> {
+    private static final String PATTERN_NS_TX1 = 
"http\\:\\/\\/aries\\.apache\\.org\\/xmlns\\/transactions\\/v1\\.(.)\\.(.)";
+    private static final String PATTERN_NS_TX2 = 
"http\\:\\/\\/aries\\.apache\\.org\\/xmlns\\/transactions\\/v2\\.(.)\\.(.)";
+    private static final String NS_TX_1_2_0 = 
"http://aries.apache.org/xmlns/transactions/v1.2.0";;
+    private static final String ENABLE_ANNOTATION = 
"transaction.enableAnnotation";
+
+    private String getTransactionTypeName(Transactional transactional) {
+        Propagation propagation = transactional.propagation();
+        if (propagation == Propagation.NESTED) {
+            throw new UnsupportedOperationException("Nested transactions not 
supported");
+        }
+        return CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.UPPER_CAMEL, 
propagation.name());
+    }
+
+    @Override
+    public Class<Transactional> getAnnotation() {
+        return Transactional.class;
+    }
+
+    @Override
+    public void handleMethodAnnotation(Class<?> clazz, List<Method> methods, 
ContextEnricher contextEnricher, BeanEnricher beanEnricher) {
+        final String nsTx1 = 
getNamespaceByPattern(contextEnricher.getBlueprintConfiguration().getNamespaces(),
 PATTERN_NS_TX1);     
+        if (nsTx1 != null) {
+            enableAnnotationTx1(contextEnricher, nsTx1);
+            for (final Method method : methods) {
+                final Transactional transactional = 
method.getAnnotation(Transactional.class);
+                final String transactionTypeName = 
getTransactionTypeName(transactional);
+                final String name = method.getName();
+                
beanEnricher.addBeanContentWriter("javax.transactional.method/" + 
clazz.getName() + "/" + name + "/" + transactionTypeName, new XmlWriter() {
+                    @Override
+                    public void write(XMLStreamWriter writer) throws 
XMLStreamException {
+                        writer.writeEmptyElement("transaction");
+                        writer.writeDefaultNamespace(nsTx1);
+                        writer.writeAttribute("method", name);
+                        writer.writeAttribute("value", transactionTypeName);
+                    }
+                });
+            }
+        }
+        final String nsTx2 = 
getNamespaceByPattern(contextEnricher.getBlueprintConfiguration().getNamespaces(),
 PATTERN_NS_TX2);
+        if (nsTx2 != null) {
+            insertEnableAnnotationTx2(contextEnricher, nsTx2);
+        }
+    }
+
+    @Override
+    public void handleBeanAnnotation(AnnotatedElement annotatedElement, String 
id, ContextEnricher contextEnricher, BeanEnricher beanEnricher) {
+        final String nsTx1 = 
getNamespaceByPattern(contextEnricher.getBlueprintConfiguration().getNamespaces(),
 PATTERN_NS_TX1);
+        if (nsTx1 != null) {
+            enableAnnotationTx1(contextEnricher, nsTx1);
+            final Transactional transactional = 
annotatedElement.getAnnotation(Transactional.class);
+            final String transactionTypeName = 
getTransactionTypeName(transactional);
+            beanEnricher.addBeanContentWriter("javax.transactional.method/" + 
annotatedElement + "/*/" + transactionTypeName, new XmlWriter() {
+                @Override
+                public void write(XMLStreamWriter writer) throws 
XMLStreamException {
+                    writer.writeEmptyElement("transaction");
+                    writer.writeDefaultNamespace(nsTx1);
+                    writer.writeAttribute("method", "*");
+                    writer.writeAttribute("value", transactionTypeName);
+                }
+            });
+        }
+        final String nsTx2 = 
getNamespaceByPattern(contextEnricher.getBlueprintConfiguration().getNamespaces(),
 PATTERN_NS_TX1);
+        if (nsTx2 != null) {
+            insertEnableAnnotationTx2(contextEnricher, nsTx2);
+        }
+    }
+
+    private String getNamespaceByPattern(Set<String> namespaces, String 
pattern) {
+        for (String namespace : namespaces) {
+            if (namespace.matches(pattern)) {
+                return namespace;
+            }
+        }
+        return null;
+    }
+    
+    private void enableAnnotationTx1(ContextEnricher contextEnricher, final 
String nsTx1) {
+        // TX1 enable-annotation are valid only in 1.2.0 schema
+        if (NS_TX_1_2_0.equals(nsTx1) && 
getEnableAnnotationConfig(contextEnricher.getBlueprintConfiguration())) {
+            insertEnableAnnotationTx1(contextEnricher, nsTx1);
+        }
+    }
+
+    private boolean getEnableAnnotationConfig(BlueprintConfiguration 
blueprintConfig) {
+        String enableAnnotation = 
blueprintConfig.getCustomParameters().get(ENABLE_ANNOTATION);
+        return enableAnnotation == null || 
Boolean.parseBoolean(enableAnnotation);
+    }
+
+    private void insertEnableAnnotationTx1(ContextEnricher contextEnricher, 
final String namespace) {
+        
contextEnricher.addBlueprintContentWriter("transaction/ennable-annotation", new 
XmlWriter() {
+            @Override
+            public void write(XMLStreamWriter writer) throws 
XMLStreamException {
+                writer.writeEmptyElement("enable-annotations");
+                writer.writeDefaultNamespace(namespace);
+            }
+        });
+    }
+        
+    private void insertEnableAnnotationTx2(ContextEnricher contextEnricher, 
final String namespace) {
+        
contextEnricher.addBlueprintContentWriter("transaction/ennable-annotation", new 
XmlWriter() {
+            @Override
+            public void write(XMLStreamWriter writer) throws 
XMLStreamException {
+                writer.writeEmptyElement("enable");
+                writer.writeDefaultNamespace(namespace);
+            }
+        });
+    }
+} 

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ValueInjectionHandler.java
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ValueInjectionHandler.java?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ValueInjectionHandler.java
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/java/org/apache/aries/blueprint/plugin/handlers/spring/ValueInjectionHandler.java
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,35 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.plugin.handlers.spring;
+
+import org.springframework.beans.factory.annotation.Value;
+
+public class ValueInjectionHandler implements 
org.apache.aries.blueprint.plugin.spi.ValueInjectionHandler<Value> {
+
+    @Override
+    public Class<Value> getAnnotation() {
+        return Value.class;
+    }
+
+    @Override
+    public String getValue(Object annotation) {
+        Value value = Value.class.cast(annotation);
+        return value.value().replaceAll("\\:.*\\}", "}");
+    }
+}

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanAnnotationHandler
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,20 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.apache.aries.blueprint.plugin.handlers.spring.LazyAttributeResolver
+org.apache.aries.blueprint.plugin.handlers.spring.DependsOnAttributeResolver
+org.apache.aries.blueprint.plugin.handlers.spring.SpringTransactionalFactory
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.apache.aries.blueprint.plugin.handlers.spring.ComponentBeanFinder
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.apache.aries.blueprint.plugin.handlers.spring.AutowiredAsInject
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.MethodAnnotationHandler
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.MethodAnnotationHandler?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.MethodAnnotationHandler
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.MethodAnnotationHandler
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.apache.aries.blueprint.plugin.handlers.spring.SpringTransactionalFactory
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.apache.aries.blueprint.plugin.handlers.spring.ComponentAsNamed
+org.apache.aries.blueprint.plugin.handlers.spring.QualifierAsNamed
\ No newline at end of file

Added: 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.ValueInjectionHandler
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.ValueInjectionHandler?rev=1792759&view=auto
==============================================================================
--- 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.ValueInjectionHandler
 (added)
+++ 
aries/trunk/blueprint/plugin/blueprint-maven-plugin-spring-handlers/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.ValueInjectionHandler
 Wed Apr 26 15:55:00 2017
@@ -0,0 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.apache.aries.blueprint.plugin.handlers.spring.ValueInjectionHandler

Modified: aries/trunk/blueprint/plugin/blueprint-maven-plugin/pom.xml
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/blueprint-maven-plugin/pom.xml?rev=1792759&r1=1792758&r2=1792759&view=diff
==============================================================================
--- aries/trunk/blueprint/plugin/blueprint-maven-plugin/pom.xml (original)
+++ aries/trunk/blueprint/plugin/blueprint-maven-plugin/pom.xml Wed Apr 26 
15:55:00 2017
@@ -145,6 +145,11 @@
             <artifactId>blueprint-maven-plugin-spi</artifactId>
             <version>1.0.0</version>
         </dependency>
+        <dependency>
+            <groupId>org.apache.aries.blueprint</groupId>
+            <artifactId>blueprint-maven-plugin-spring-handlers</artifactId>
+            <version>1.0.0-SNAPSHOT</version>
+        </dependency>
 
         <dependency>
             <groupId>org.apache.maven.plugin-tools</groupId>
@@ -254,36 +259,6 @@
             <version>4.5</version>
         </dependency>
 
-        <!-- For the spring annotations -->
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-context</artifactId>
-            <version>3.1.4.RELEASE</version>
-            <exclusions>
-                <exclusion>
-                    <artifactId>spring-aop</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-core</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-expression</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-asm</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-tx</artifactId>
-            <version>3.1.4.RELEASE</version>
-        </dependency>
-
         <!-- For the CDI annotations -->
         <dependency>
             <groupId>javax.transaction.cdi</groupId>

Modified: aries/trunk/blueprint/plugin/pom.xml
URL: 
http://svn.apache.org/viewvc/aries/trunk/blueprint/plugin/pom.xml?rev=1792759&r1=1792758&r2=1792759&view=diff
==============================================================================
--- aries/trunk/blueprint/plugin/pom.xml (original)
+++ aries/trunk/blueprint/plugin/pom.xml Wed Apr 26 15:55:00 2017
@@ -36,6 +36,7 @@
     <modules>
         <module>blueprint-maven-plugin-spi</module>
         <module>blueprint-maven-plugin-annotation</module>
+        <module>blueprint-maven-plugin-spring-handlers</module>
         <module>blueprint-maven-plugin</module>
         <module>blueprint-maven-plugin-itest</module>
     </modules>


Reply via email to