Предпочтительно, используя аннотацию @Indexed
или каким-либо другим декларативным способом, возможно ли внедрить системное свойство, предпочтительно используя SPeL.
Я пробовал следующее, но обнаружил, что expireAfterSeconds
выдает ошибку, потому что он хочет int:
@Data
@Document(collection = "#{@xyzUpdates.collectionName}")
public class UpdatesFromXyz {
@Id
@Field("resourceId")
private UUID resourceId;
@Indexed(expireAfterSeconds = "#{@xyzUpdates.maxRecords}")
private LocalDate updateDate;
}
и мой класс свойств:
@ConfigurationProperties("xyz.updates")
@Getter
@Setter
@Component
public class XyzUpdates {
private String collectionName = "updatesFromXyz";
private int maxRecords;
}