@Override
    public void setup(ProfilerPluginSetupContext context) {
        final boolean enable = context.getConfig().readBoolean(ENABLE, true);
        if (!enable) {
            logger.info("{} disabled", this.getClass().getSimpleName());
            return;
        }

        final SpringBeansConfig config = new SpringBeansConfig(context.getConfig());
        logger.info("{} config:{}", this.getClass().getSimpleName(), config);
        if (logger.isInfoEnabled()) {
            logger.info("SpringBeans targets=" + config.getTargets());
        }

        if (config.hasTarget(SpringBeansTargetScope.COMPONENT_SCAN)) {
            // since spring-context 2.5
            addClassPathDefinitionScannerTransformer();
        }

        if (config.hasTarget(SpringBeansTargetScope.POST_PROCESSOR)) {
            addAbstractAutowireCapableBeanFactoryTransformer();
        }
    }
@author Jongho Moon
@author jaehong.kim
agent-module/plugins/spring/src/main/java/com/navercorp/pinpoint/plugin/spring/beans/SpringBeansPlugin.java