diff --git a/booklore-api/src/main/java/com/adityachandel/booklore/service/metadata/BookMetadataService.java b/booklore-api/src/main/java/com/adityachandel/booklore/service/metadata/BookMetadataService.java index bbd9451c8..5d13feecd 100644 --- a/booklore-api/src/main/java/com/adityachandel/booklore/service/metadata/BookMetadataService.java +++ b/booklore-api/src/main/java/com/adityachandel/booklore/service/metadata/BookMetadataService.java @@ -96,6 +96,11 @@ public class BookMetadataService { List books = getBookEntities(request); for (BookEntity bookEntity : books) { try { + Boolean allFieldsLocked = bookEntity.getMetadata().getAllFieldsLocked(); + if (allFieldsLocked) { + log.info("Skipping metadata refresh for locked book: {}", bookEntity.getFileName()); + continue; + } Map metadataMap = fetchMetadataForBook(providers, bookEntity); if (providers.contains(GoodReads)) { Thread.sleep(ThreadLocalRandom.current().nextLong(500, 1500));