summaryrefslogtreecommitdiffstats
path: root/catalog-be/src/main/resources/application-context.xml
blob: 2b1d5ef3bdba5c4e5819f62db33e100f263186f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
  xmlns:aop="http://www.springframework.org/schema/aop"
  xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">

  <context:annotation-config />
  <aop:aspectj-autoproxy proxy-target-class="true" />

  <context:component-scan
          base-package= "org.openecomp.sdc.be.components.health,
                         org.openecomp.sdc.be.servlets,
                         org.openecomp.sdc.be.externalapi.servlet,
                         org.openecomp.sdc.be.components.scheduledtasks,
                         org.openecomp.sdc.be.facade.operations,
                         org.openecomp.sdc.be.components.kafka,
                         org.openecomp.sdc.be.components.impl">
  </context:component-scan>

  <bean class="org.openecomp.sdc.be.dao.config.DAOSpringConfig"/>
  <bean class="org.openecomp.sdc.be.config.CatalogModelSpringConfig"/>
  <bean class="org.openecomp.sdc.be.components.distribution.engine.config.DistributionEngineSpringConfig"/>
  <bean class="org.openecomp.sdc.config.CatalogBESpringConfig"/>
  <bean class="org.openecomp.sdc.config.MicrometerSpringConfig"/>
  <bean class="org.openecomp.sdc.be.components.kafka.KafkaHandler"/>

  <aop:config>
    <aop:aspect id="lockAspect" ref="componentLockAspect">
      <aop:pointcut id="lockingTransaction" expression="@annotation(org.openecomp.sdc.be.components.impl.lock.LockingTransactional) and args(componentId, componentType,..)"/>
      <aop:around method="lock" arg-names="proceedingJoinPoint,componentId,componentType" pointcut-ref="lockingTransaction"/>
    </aop:aspect>
    <aop:aspect id="roleAuthorizationAspect" ref="roleAuthorizationHandler">
      <aop:pointcut id="roleAuthorize" expression="@annotation(permissions)"/>
      <aop:before method="authorizeRole" arg-names="joinPoint, permissions" pointcut-ref="roleAuthorize"/>
    </aop:aspect>
  </aop:config>

</beans>