org.zodiac.autoconfigure.bootstrap.condition.ConditionalOnRuleEnabled Maven / Gradle / Ivy
package org.zodiac.autoconfigure.bootstrap.condition;
import org.springframework.boot.autoconfigure.condition.AllNestedConditions;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Conditional;
import org.zodiac.commons.constants.SystemPropertiesConstants;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE, ElementType.METHOD})
@Conditional({ConditionalOnRuleEnabled.OnRuleEnabledCondition.class})
public @interface ConditionalOnRuleEnabled {
class OnRuleEnabledCondition extends AllNestedConditions {
public OnRuleEnabledCondition() {
super(ConfigurationPhase.REGISTER_BEAN);
}
@ConditionalOnProperty(value = SystemPropertiesConstants.Zodiac.SPRING_BOOTSTRAP_RULE_ENABLED, havingValue = "true")
static class FoundProperty {
}
}
}