<?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:aop="http://www.springframework.org/schema/aop"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">

	<bean id="printStringAspect"
		class="integration.anyframe.services.aop.aspect.xml.PrintStringUsingXML" />

	<aop:config>
		<aop:aspect ref="printStringAspect">
			<aop:pointcut id="getMethods"
				expression="execution(public * integration.anyframe.services..*Impl.get*(..))" />
			<aop:pointcut id="updateMethods"
				expression="execution(public * integration.anyframe.services..*Impl.update*(..))" />
			<aop:before method="beforeExecuteGetMethod"
				pointcut-ref="getMethods" />
			<aop:after-returning method="afterReturningExecuteGetMethod"
				returning="retVal" pointcut-ref="getMethods" />
			<aop:after-throwing method="afterThrowingExecuteGetMethod"
				throwing="exception" pointcut-ref="getMethods" />
			<aop:after method="afterExecuteGetMethod"
				pointcut-ref="getMethods" />
			<aop:around method="aroundExecuteUpdateMethod"
				pointcut-ref="updateMethods" />
		</aop:aspect>
	</aop:config>
</beans>

