package com.qianwen.smart.core.auto.common; import com.qianwen.smart.core.auto.annotation.AutoContextInitializer; import com.qianwen.smart.core.auto.annotation.AutoFailureAnalyzer; import com.qianwen.smart.core.auto.annotation.AutoListener; import com.qianwen.smart.core.auto.annotation.AutoRunListener; public enum BootAutoType { CONTEXT_INITIALIZER(AutoContextInitializer.class.getName(), "org.springframework.context.ApplicationContextInitializer"), LISTENER(AutoListener.class.getName(), "org.springframework.context.ApplicationListener"), RUN_LISTENER(AutoRunListener.class.getName(), "org.springframework.boot.SpringApplicationRunListener"), FAILURE_ANALYZER(AutoFailureAnalyzer.class.getName(), "org.springframework.boot.diagnostics.FailureAnalyzer"), COMPONENT("org.springframework.stereotype.Component", "org.springframework.boot.autoconfigure.EnableAutoConfiguration"); private final String annotationName; private final String configureKey; BootAutoType(String annotationName, String configureKey) { this.annotationName = annotationName; this.configureKey = configureKey; } public final String getAnnotationName() { return this.annotationName; } public final String getConfigureKey() { return this.configureKey; } }