• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java AbstractAspectJAdvice类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.springframework.aop.aspectj.AbstractAspectJAdvice的典型用法代码示例。如果您正苦于以下问题:Java AbstractAspectJAdvice类的具体用法?Java AbstractAspectJAdvice怎么用?Java AbstractAspectJAdvice使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



AbstractAspectJAdvice类属于org.springframework.aop.aspectj包,在下文中一共展示了AbstractAspectJAdvice类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: toString

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
@Override
public String toString() {
	StringBuilder sb = new StringBuilder();
	Advice advice = this.advisor.getAdvice();
	sb.append(ClassUtils.getShortName(advice.getClass()));
	sb.append(": ");
	if (this.advisor instanceof Ordered) {
		sb.append("order ").append(((Ordered) this.advisor).getOrder()).append(", ");
	}
	if (advice instanceof AbstractAspectJAdvice) {
		AbstractAspectJAdvice ajAdvice = (AbstractAspectJAdvice) advice;
		sb.append(ajAdvice.getAspectName());
		sb.append(", declaration order ");
		sb.append(ajAdvice.getDeclarationOrder());
	}
	return sb.toString();
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:18,代码来源:AspectJAwareAdvisorAutoProxyCreator.java


示例2: makeBeanFactoryTriggerPCAH

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
/**
 * @param jndiUrl
 * @param bf
 * @return
 * @throws ClassNotFoundException
 * @throws NoSuchMethodException
 * @throws InstantiationException
 * @throws IllegalAccessException
 * @throws InvocationTargetException
 * @throws Exception
 */
public static Object makeBeanFactoryTriggerPCAH ( UtilFactory uf, String name, BeanFactory bf ) throws ClassNotFoundException,
        NoSuchMethodException, InstantiationException, IllegalAccessException, InvocationTargetException, Exception {
    AspectInstanceFactory aif = Reflections.createWithoutConstructor(BeanFactoryAspectInstanceFactory.class);
    Reflections.setFieldValue(aif, "beanFactory", bf);
    Reflections.setFieldValue(aif, "name", name);
    AbstractAspectJAdvice advice = Reflections.createWithoutConstructor(AspectJAroundAdvice.class);
    Reflections.setFieldValue(advice, "aspectInstanceFactory", aif);

    // make readObject happy if it is called
    Reflections.setFieldValue(advice, "declaringClass", Object.class);
    Reflections.setFieldValue(advice, "methodName", "toString");
    Reflections.setFieldValue(advice, "parameterTypes", new Class[0]);

    AspectJPointcutAdvisor advisor = Reflections.createWithoutConstructor(AspectJPointcutAdvisor.class);
    Reflections.setFieldValue(advisor, "advice", advice);

    Class<?> pcahCl = Class
            .forName("org.springframework.aop.aspectj.autoproxy.AspectJAwareAdvisorAutoProxyCreator$PartiallyComparableAdvisorHolder");
    Object pcah = Reflections.createWithoutConstructor(pcahCl);
    Reflections.setFieldValue(pcah, "advisor", advisor);
    return uf.makeToStringTriggerUnstable(pcah);
}
 
开发者ID:mbechler,项目名称:marshalsec,代码行数:34,代码来源:SpringUtil.java


示例3: postProcessAfterInitialization

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
@Override
public Object postProcessAfterInitialization(Object bean, String beanName)
		throws BeansException {
	if (bean instanceof Advised) {
		Advised advised = (Advised) bean;

		for (Advisor advisor : advised.getAdvisors()) {
			if (advisor instanceof AspectJPointcutAdvisor) {
				String foundName = ((AbstractAspectJAdvice) ((AspectJPointcutAdvisor) advisor)
						.getAdvice()).getAspectName();
				if (aspect.getName().equals(foundName)) {
					LOG.info(String.format("Found bean '%s' advised by %s; injecting", beanName, aspect));
					try {
						aspect.addAdvised(advised.getTargetSource().getTarget(), beanName);
					} catch (Exception e) {
						throw new RuntimeException(e);
					}
				}
			}
		}
	}
	return bean;
}
 
开发者ID:performancecopilot,项目名称:parfait,代码行数:24,代码来源:AdviceNotifier.java


示例4: extractPojo

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
private Object extractPojo(MyService svc)
{
	Advised advisedBean = (Advised) svc;
	Advisor[] advisors = advisedBean.getAdvisors();
	for(Advisor advisor : advisors)
	{
		Advice advice = advisor.getAdvice();
		if(advice instanceof AbstractAspectJAdvice)
		{
			AbstractAspectJAdvice aaja = (AbstractAspectJAdvice) advice;
			Object target = aaja.getAspectInstanceFactory().getAspectInstance();
			return target;
		}
	}
	return null;
}
 
开发者ID:kenwdelong,项目名称:stability-utils,代码行数:17,代码来源:JmxExportingAspectCircuitBreakerBeanPostprocessorTest.java


示例5: shouldSkip

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
@Override
protected boolean shouldSkip(Class<?> beanClass, String beanName) {
	// TODO: Consider optimization by caching the list of the aspect names
	List<Advisor> candidateAdvisors = findCandidateAdvisors();
	for (Advisor advisor : candidateAdvisors) {
		if (advisor instanceof AspectJPointcutAdvisor) {
			if (((AbstractAspectJAdvice) advisor.getAdvice()).getAspectName().equals(beanName)) {
				return true;
			}
		}
	}
	return super.shouldSkip(beanClass, beanName);
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:14,代码来源:AspectJAwareAdvisorAutoProxyCreator.java


示例6: createAspectJAdvice

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
private Advisor createAspectJAdvice(int advisorOrder, int adviceDeclarationOrder, String aspectName, AbstractAspectJAdvice advice) {
	advice.setDeclarationOrder(adviceDeclarationOrder);
	advice.setAspectName(aspectName);
	AspectJPointcutAdvisor advisor = new AspectJPointcutAdvisor(advice);
	advisor.setOrder(advisorOrder);
	return advisor;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:8,代码来源:AspectJPrecedenceComparatorTests.java


示例7: postProcessAfterInitialization

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException
{
	boolean advised = bean instanceof Advised;
	if(advised)
	{
		Advised advisedBean = (Advised) bean;
		Advisor[] advisors = advisedBean.getAdvisors();
		for(Advisor advisor : advisors)
		{
			Advice advice = advisor.getAdvice();
			if(advice instanceof AbstractAspectJAdvice)
			{
				AbstractAspectJAdvice aaja = (AbstractAspectJAdvice) advice;
				Class<?> aspectPojoClass = aaja.getAspectJAdviceMethod().getDeclaringClass();
				String serviceType = annotationToServiceNames.get(aspectPojoClass);
				if(serviceType != null)
				{
					ObjectName oname;
					String onameString = getDomain(bean) + "." + serviceType + ":bean=" + beanName;
					try
					{
						/* as long as the aspect is marked prototype, each advised bean
						 * gets a new instance, as seen by the return value of this next 
						 * method call.  I've also checked that successive calls to the
						 * getAspectInstance() method return the same object.
						 */
						Object target = aaja.getAspectInstanceFactory().getAspectInstance();
						oname = new ObjectName(onameString);
						registerMBean(oname, target, beanName);
					}
					catch(Exception e)
					{
						logger.error("Cannot register mbean with oname [" + onameString +"]", e);
					}
				}
			}
		}
	}
	return bean;
}
 
开发者ID:kenwdelong,项目名称:stability-utils,代码行数:41,代码来源:JmxExportingAspectPostProcessor.java


示例8: shouldSkip

import org.springframework.aop.aspectj.AbstractAspectJAdvice; //导入依赖的package包/类
@Override
protected boolean shouldSkip(Class beanClass, String beanName) {
	// TODO: Consider optimization by caching the list of the aspect names
	List<Advisor> candidateAdvisors = findCandidateAdvisors();
	for (Advisor advisor : candidateAdvisors) {
		if (advisor instanceof AspectJPointcutAdvisor) {
			if (((AbstractAspectJAdvice) advisor.getAdvice()).getAspectName().equals(beanName)) {
				return true;
			}
		}
	}
	return super.shouldSkip(beanClass, beanName);
}
 
开发者ID:deathspeeder,项目名称:class-guard,代码行数:14,代码来源:AspectJAwareAdvisorAutoProxyCreator.java



注:本文中的org.springframework.aop.aspectj.AbstractAspectJAdvice类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java TransactionManagerLookup类代码示例发布时间:2022-05-23
下一篇:
Java ProspectiveSearchService类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap