List of usage examples for org.springframework.aop.framework Advised removeAdvice
boolean removeAdvice(Advice advice);
From source file:org.openmrs.module.trumpmodule.TrumpModuleActivator.java
/** * This method will remove AuthorizationAdvice from a particular core OpenMRS service. *//*from w w w . jav a 2s. com*/ public void reInitialServiceAdvices() { ArrayList<OpenmrsService> services = new ArrayList<OpenmrsService>(); // painstakingly add all the services to a list, because reflection is dangerous // not the tidiest way, but hey... services.add(Context.getPatientService()); services.add(Context.getAdministrationService()); services.add(Context.getAlertService()); services.add(Context.getCohortService()); services.add(Context.getConceptService()); services.add(Context.getEncounterService()); services.add(Context.getFormService()); services.add(Context.getHL7Service()); services.add(Context.getLocationService()); services.add(Context.getObsService()); services.add(Context.getOrderService()); services.add(Context.getPatientService()); services.add(Context.getProgramWorkflowService()); services.add(Context.getReportObjectService()); services.add(Context.getSchedulerService()); services.add(Context.getSerializationService()); for (OpenmrsService service : services) { Advised advisedService = (Advised) service; Advisor[] advisors = advisedService.getAdvisors(); for (Advisor a : advisors) { if (a.getAdvice() instanceof AuthorizationAdvice) { advisedService.removeAdvice(a.getAdvice()); } } } }
From source file:org.openmrs.api.context.ServiceContext.java
/** * @param cls/*from w w w. ja v a 2 s.c om*/ * @param advice */ @SuppressWarnings("unchecked") public void removeAdvice(Class cls, Advice advice) { Advised advisedService = (Advised) services.get(cls); advisedService.removeAdvice(advice); getAddedAdvice(cls).remove(advice); }
From source file:org.openmrs.api.context.ServiceContext.java
/** * Moves advisors and advice added by ServiceContext from the source service to the target one. * * @param source the existing service/*from w w w . j a va 2 s . c o m*/ * @param target the new service */ @SuppressWarnings("unchecked") private void moveAddedAOP(Advised source, Advised target) { Class serviceClass = source.getClass(); Set<Advisor> existingAdvisors = getAddedAdvisors(serviceClass); for (Advisor advisor : existingAdvisors) { target.addAdvisor(advisor); source.removeAdvisor(advisor); } Set<Advice> existingAdvice = getAddedAdvice(serviceClass); for (Advice advice : existingAdvice) { target.addAdvice(advice); source.removeAdvice(advice); } }