From 56fc57552d788f1e0915ac32b20af03f41c93e61 Mon Sep 17 00:00:00 2001 From: Matthias Eichner Date: Fri, 13 Dec 2024 16:06:22 +0100 Subject: [PATCH 1/2] make repsitory builder more extensible --- .../io/ocfl/core/OcflRepositoryBuilder.java | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java b/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java index f2fb53ae..aae5a724 100644 --- a/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java +++ b/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java @@ -69,21 +69,21 @@ */ public class OcflRepositoryBuilder { - private OcflStorage storage; - private OcflConfig config; - private OcflExtensionConfig defaultLayoutConfig; - private Path workDir; - private boolean verifyStaging; - private Duration fileLockTimeoutDuration; - - private ObjectLock objectLock; - private Cache inventoryCache; - private InventoryMapper inventoryMapper; - private LogicalPathMapper logicalPathMapper; - private ContentPathConstraintProcessor contentPathConstraintProcessor; - private ObjectDetailsDatabase objectDetailsDb; - private UnsupportedExtensionBehavior unsupportedBehavior; - private Set ignoreUnsupportedExtensions; + protected OcflStorage storage; + protected OcflConfig config; + protected OcflExtensionConfig defaultLayoutConfig; + protected Path workDir; + protected boolean verifyStaging; + protected Duration fileLockTimeoutDuration; + + protected ObjectLock objectLock; + protected Cache inventoryCache; + protected InventoryMapper inventoryMapper; + protected LogicalPathMapper logicalPathMapper; + protected ContentPathConstraintProcessor contentPathConstraintProcessor; + protected ObjectDetailsDatabase objectDetailsDb; + protected UnsupportedExtensionBehavior unsupportedBehavior; + protected Set ignoreUnsupportedExtensions; /** * Constructs a local file system based OCFL repository sensible defaults that can be overridden prior to calling @@ -411,7 +411,7 @@ public MutableOcflRepository buildMutable() { return buildInternal(DefaultMutableOcflRepository.class); } - private T buildInternal(Class clazz) { + protected T buildInternal(Class clazz) { Enforce.notNull(storage, "storage cannot be null"); Enforce.notNull(workDir, "workDir cannot be null"); @@ -454,14 +454,14 @@ private T buildInternal(Class clazz) { fileLockTimeoutDuration)); } - private OcflStorage cache(OcflStorage storage) { + protected OcflStorage cache(OcflStorage storage) { if (inventoryCache != null) { return new CachingOcflStorage(inventoryCache, storage); } return storage; } - private OcflStorage db(OcflStorage storage) { + protected OcflStorage db(OcflStorage storage) { if (objectDetailsDb != null) { return new ObjectDetailsDbOcflStorage(objectDetailsDb, storage); } From 6a1b2c4ad8540b31e23d96e87c4ca2199793a23a Mon Sep 17 00:00:00 2001 From: Matthias Eichner Date: Mon, 16 Dec 2024 10:37:47 +0100 Subject: [PATCH 2/2] make buildInternal() private again --- .../src/main/java/io/ocfl/core/OcflRepositoryBuilder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java b/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java index aae5a724..60766c68 100644 --- a/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java +++ b/ocfl-java-core/src/main/java/io/ocfl/core/OcflRepositoryBuilder.java @@ -411,7 +411,7 @@ public MutableOcflRepository buildMutable() { return buildInternal(DefaultMutableOcflRepository.class); } - protected T buildInternal(Class clazz) { + private T buildInternal(Class clazz) { Enforce.notNull(storage, "storage cannot be null"); Enforce.notNull(workDir, "workDir cannot be null");