Я пытаюсь создать сервис с помощью среды весенней загрузки.
Итак, сейчас у меня есть готовый сервис, и я хочу написать бин для своего сервиса.Однако то, как я это делаю, дает мне ошибку, что атрибут должен быть константой.Есть ли способ написать бин для генерации сервиса, как я хочу?
Файл конфигурации выглядит так:
@Configuration
public class ServiceConfig {
static DataSource.Type dst = ...;
static ItemSource.Type ist = ...;
@Bean
public ServiceEngine getServiceEngine (
@DataSource( dst ) RuleStore < SKURule > rs,
@ItemSource( ist ) SKUStore ss
) {
return new ServiceEngine( rs, ss );
}
@Target({ElementType.FIELD,
ElementType.METHOD,
ElementType.TYPE,
ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@Qualifier
public @interface ItemSource {
Type value();
enum Type {
LOCAL,
API,
}
}
@Target({ElementType.FIELD,
ElementType.METHOD,
ElementType.TYPE,
ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@Qualifier
public @interface DataSource {
Type value();
enum Type {
LOCAL,
S3,
}
}
...
// other beans
...
}