package at.gv.egiz.moazs.config; import at.gv.egiz.moazs.scheme.NameSpace; import at.gv.egiz.moazs.scheme.NotificationResponse; import at.gv.egiz.moazs.scheme.RequestStatusResponse; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Profile; import java.util.Map; import java.util.function.Function; @Configuration @Profile("!cluster") public class RepositoryConfig { @Bean public int expiresAfterWrite(@Value("${repository.expiresAfterWrite}") int exp) { return exp; } @Bean public Map> idGenerators() { return Map.of(NameSpace.MSG_DELIVERY_REQUEST_STATUS, RequestStatusResponse::getResponseID, NameSpace.MSG_DELIVERY_RESPONSE, RequestStatusResponse::getResponseID, NameSpace.MSG_DELIVERY_NOTIFICATION, NotificationResponse::getResponseID); } }