@Override
    public void setup(ProfilerPluginSetupContext context) {
        final TomcatConfig config = new TomcatConfig(context.getConfig());
        if (!config.isEnable()) {
            logger.info("{} disabled", this.getClass().getSimpleName());
            return;
        }
        logger.info("{} config:{}", this.getClass().getSimpleName(), config);

        if (ServiceType.UNDEFINED.equals(context.getConfiguredApplicationType())) {
            final TomcatDetector tomcatDetector = new TomcatDetector(config.getBootstrapMains());
            if (tomcatDetector.detect()) {
                logger.info("Detected application type : {}", TomcatConstants.TOMCAT);
                if (!context.registerApplicationType(TomcatConstants.TOMCAT)) {
                    logger.info("Application type [{}] already set, skipping [{}] registration.", context.getApplicationType(), TomcatConstants.TOMCAT);
                }
            }
        }

        if (shouldAddTransformers(context)) {
            logger.info("Adding Tomcat transformers");
            addTransformers(config);
        } else {
            logger.info("Not adding Tomcat transformers");
        }
    }
@author Jongho Moon
@author jaehong.kim
agent-module/plugins/tomcat/src/main/java/com/navercorp/pinpoint/plugin/tomcat/TomcatPlugin.java