1 package com.atlassian.plugin.spring.pluginns;
2
3 import com.atlassian.plugin.spring.PluginBeanDefinitionRegistry;
4 import org.springframework.beans.factory.config.BeanDefinitionHolder;
5 import org.springframework.beans.factory.xml.BeanDefinitionDecorator;
6 import org.springframework.beans.factory.xml.ParserContext;
7 import org.w3c.dom.Node;
8
9 import javax.annotation.Nonnull;
10
11
12
13
14 public class PluginInterfaceBeanDefinitionDecorator implements BeanDefinitionDecorator {
15
16
17
18
19
20
21
22
23 @Nonnull
24 @Override
25 public BeanDefinitionHolder decorate(@Nonnull Node source, @Nonnull BeanDefinitionHolder holder,
26 @Nonnull ParserContext ctx) {
27 final String inf = source.getTextContent();
28 if (inf != null) {
29 new PluginBeanDefinitionRegistry(ctx.getRegistry()).addBeanInterface(holder.getBeanName(), inf.trim());
30 }
31 return holder;
32 }
33 }