diff --git a/code/cloud_library_export/cloud_library_export.jar b/code/cloud_library_export/cloud_library_export.jar index d8df512a86..2b52777076 100644 Binary files a/code/cloud_library_export/cloud_library_export.jar and b/code/cloud_library_export/cloud_library_export.jar differ diff --git a/code/cloud_library_export/src/com/turning_leaf_technologies/cloud_library/CloudLibraryExporter.java b/code/cloud_library_export/src/com/turning_leaf_technologies/cloud_library/CloudLibraryExporter.java index b3dc03727a..5f8606f1d2 100644 --- a/code/cloud_library_export/src/com/turning_leaf_technologies/cloud_library/CloudLibraryExporter.java +++ b/code/cloud_library_export/src/com/turning_leaf_technologies/cloud_library/CloudLibraryExporter.java @@ -408,7 +408,7 @@ CloudLibraryAvailability loadAvailabilityForRecord(String cloudLibraryId) { boolean callSucceeded = false; CloudLibraryAvailability availability = new CloudLibraryAvailability(); String apiPath = "/cirrus/library/" + settings.getLibraryId() + "/item/summary/" + cloudLibraryId; - while (!callSucceeded && numTries < 3) { + while (numTries < 3) { if (numTries > 0) { try { //Sleep a little bit to allow the server to calm down. @@ -446,7 +446,10 @@ CloudLibraryAvailability loadAvailabilityForRecord(String cloudLibraryId) { } } numTries++; - if (numTries == 3 && !callSucceeded) { + if (callSucceeded) { + break; + } + if (numTries == 3) { logEntry.incErrors("Did not get a successful API response after 3 tries for " + settings.getBaseUrl() + apiPath); break; } @@ -460,11 +463,11 @@ CloudLibraryAvailabilityType loadAvailabilityTypeForRecord(String cloudLibraryId boolean callSucceeded = false; CloudLibraryAvailabilityType availabilityType = new CloudLibraryAvailabilityType(); String apiPath = "/cirrus/library/" + settings.getLibraryId() + "/circulation/item/" + cloudLibraryId; - while (!callSucceeded && numTries < 3) { + while (numTries < 3) { if (numTries > 0) { try { //Sleep a little bit to allow the server to calm down. - Thread.sleep(60000); + Thread.sleep(15000); } catch (InterruptedException e) { //Not a big deal if this gets interrupted } @@ -484,6 +487,8 @@ CloudLibraryAvailabilityType loadAvailabilityTypeForRecord(String cloudLibraryId logger.info("Error getting availability type from " + apiPath + ": " + response.getResponseCode()); } } else { + callSucceeded = true; + availabilityType.setRawResponse(response.getMessage()); CloudLibraryAvailabilityTypeHandler handler = new CloudLibraryAvailabilityTypeHandler(availabilityType); @@ -497,7 +502,10 @@ CloudLibraryAvailabilityType loadAvailabilityTypeForRecord(String cloudLibraryId } } numTries++; - if (numTries == 3 && !callSucceeded) { + if (callSucceeded) { + break; + } + if (numTries == 3) { logEntry.incErrors("Did not get a successful API response after 3 tries for " + settings.getBaseUrl() + apiPath); break; } diff --git a/code/reindexer/reindexer.jar b/code/reindexer/reindexer.jar index 6fbaf46335..6700961f55 100644 Binary files a/code/reindexer/reindexer.jar and b/code/reindexer/reindexer.jar differ diff --git a/code/reindexer/src/org/aspen_discovery/format_classification/KohaRecordFormatClassifier.java b/code/reindexer/src/org/aspen_discovery/format_classification/KohaRecordFormatClassifier.java index 131060c861..f34c213f47 100644 --- a/code/reindexer/src/org/aspen_discovery/format_classification/KohaRecordFormatClassifier.java +++ b/code/reindexer/src/org/aspen_discovery/format_classification/KohaRecordFormatClassifier.java @@ -92,12 +92,14 @@ public FormatInfo getFormatInfoForItem(DataField itemField, BaseIndexingSettings if (!foundFormatFromShelfLocation && !foundFormatFromSublocation && !foundFormatFromCollection && !foundFormatFromIType) { String format = MarcUtil.getItemSubfieldData(profile.getFormatSubfield(), itemField, logEntry, logger); - String translatedFormat = profile.translateValue("format", format); - if (translatedFormat != null && !translatedFormat.isEmpty()) { - formatInfo.format = translatedFormat; - formatInfo.formatCategory = profile.translateValue("format_category", format); - if (profile.hasTranslation("format_boost", format)) { - formatBoost = profile.translateValue("format_boost", format); + if (format != null && profile.hasTranslation("format", format)) { + String translatedFormat = profile.translateValue("format", format); + if (translatedFormat != null && !translatedFormat.isEmpty()) { + formatInfo.format = translatedFormat; + formatInfo.formatCategory = profile.translateValue("format_category", format); + if (profile.hasTranslation("format_boost", format)) { + formatBoost = profile.translateValue("format_boost", format); + } } } }