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>