org.zodiac.autoconfigure.loadbalancer.EnableLoadBalancerClients Maven / Gradle / Ivy
package org.zodiac.autoconfigure.loadbalancer;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Import;
import org.zodiac.autoconfigure.bootstrap.condition.ConditionalOnSpringCloudBootstrapDisabled;
import org.zodiac.core.loadbalancer.annotation.AppLoadBalancerClientSpecification;
import org.zodiac.core.loadbalancer.support.AppLoadBalancerClientFactory;
@SpringBootConfiguration
@ConditionalOnSpringCloudBootstrapDisabled
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
@Documented
@Import(AppLoadBalancerClientConfigurationRegistrar.class)
public @interface EnableLoadBalancerClients {
EnableAppLoadBalancerClient[] value() default {};
/**
* {@link AppLoadBalancerClientConfigurationRegistrar} creates a {@link AppLoadBalancerClientSpecification} with
* this as an argument. These in turn are added as default contexts in {@link AppLoadBalancerClientFactory}.
* Configuration defined in these classes are used as defaults if values aren't defined via
* {@link EnableAppLoadBalancerClient#configuration()}
*
* @return classes for default configurations
*/
Class>[] defaultConfiguration() default {};
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy