package jnpf.dmsService.search.ocr; import jnpf.dmsService.search.DmsSearchProperties; import org.springframework.stereotype.Component; import java.util.List; import java.util.Locale; import java.util.Optional; @Component public class DmsOcrAdapterRegistry { private final DmsSearchProperties properties; private final List adapters; public DmsOcrAdapterRegistry(DmsSearchProperties properties, List adapters) { this.properties = properties; this.adapters = adapters; } public Optional configuredAdapter() { if (!properties.getOcr().isEnabled()) { return Optional.empty(); } String provider = properties.getOcr().getProvider().trim().toLowerCase(Locale.ROOT); return adapters.stream() .filter(adapter -> adapter.provider().trim().toLowerCase(Locale.ROOT).equals(provider)) .findFirst(); } }