Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.openmrs.module.patientnarratives.aop;
- import java.lang.reflect.Method;
- import java.util.Arrays;
- import org.aopalliance.aop.Advice;
- import org.aopalliance.intercept.MethodInterceptor;
- import org.aopalliance.intercept.MethodInvocation;
- import org.apache.commons.logging.Log;
- import org.apache.commons.logging.LogFactory;
- import org.openmrs.Encounter;
- import org.openmrs.User;
- import org.openmrs.api.context.Context;
- import org.springframework.aop.Advisor;
- import org.springframework.aop.support.StaticMethodMatcherPointcutAdvisor;
- public class HtmlFormParametersAroundAdvisor extends StaticMethodMatcherPointcutAdvisor implements Advisor {
- private static final long serialVersionUID = 3333L;
- private Log log = LogFactory.getLog(this.getClass());
- public boolean matches(Method method, Class targetClass) {
- // only 'run' this advice on the save methods
- if (method.getName().startsWith("save"))
- return true;
- return false;
- }
- @Override
- public Advice getAdvice() {
- log.debug("Getting new around advice");
- return new PrintingAroundAdvice();
- }
- private class PrintingAroundAdvice implements MethodInterceptor {
- public Object invoke(MethodInvocation invocation) throws Throwable {
- Object object = null;
- String methodName = invocation.getMethod().getName();
- if (methodName.equals("saveEncounter")) {
- Encounter encounter = (Encounter) invocation.getArguments()[0];
- User user = Context.getUserService().getUser(2);
- encounter.setCreator(user);
- object = invocation.proceed();
- }
- // log.debug("Before " + methodName + ".");
- // log.debug("After " + invocation.getMethod().getName() + ".");
- return object;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement