diff --git a/abstract-document/pom.xml b/abstract-document/pom.xml index bdcdd170a43a..c3f783184d33 100644 --- a/abstract-document/pom.xml +++ b/abstract-document/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT abstract-document diff --git a/abstract-document/src/main/java/com/iluwatar/abstractdocument/AbstractDocument.java b/abstract-document/src/main/java/com/iluwatar/abstractdocument/AbstractDocument.java index 36a946cc9eca..fccc23d83b7b 100644 --- a/abstract-document/src/main/java/com/iluwatar/abstractdocument/AbstractDocument.java +++ b/abstract-document/src/main/java/com/iluwatar/abstractdocument/AbstractDocument.java @@ -54,17 +54,16 @@ public Object get(String key) { @Override public Stream children(String key, Function, T> constructor) { - Optional>> any = Stream.of(get(key)).filter(el -> el != null) + Optional>> any = Stream.of(get(key)).filter(Objects::nonNull) .map(el -> (List>) el).findAny(); - return any.isPresent() ? any.get().stream().map(constructor) : Stream.empty(); + return any.map(maps -> maps.stream().map(constructor)).orElseGet(Stream::empty); } @Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append(getClass().getName()).append("["); - properties.entrySet() - .forEach(e -> builder.append("[").append(e.getKey()).append(" : ").append(e.getValue()).append("]")); + properties.forEach((key, value) -> builder.append("[").append(key).append(" : ").append(value).append("]")); builder.append("]"); return builder.toString(); } diff --git a/abstract-factory/pom.xml b/abstract-factory/pom.xml index 00c9a491cf15..402297ed9866 100644 --- a/abstract-factory/pom.xml +++ b/abstract-factory/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT abstract-factory diff --git a/abstract-factory/src/main/java/com/iluwatar/abstractfactory/ElfKingdomFactory.java b/abstract-factory/src/main/java/com/iluwatar/abstractfactory/ElfKingdomFactory.java index 31cfddb70ff8..fc71ded766d6 100644 --- a/abstract-factory/src/main/java/com/iluwatar/abstractfactory/ElfKingdomFactory.java +++ b/abstract-factory/src/main/java/com/iluwatar/abstractfactory/ElfKingdomFactory.java @@ -29,14 +29,17 @@ */ public class ElfKingdomFactory implements KingdomFactory { + @Override public Castle createCastle() { return new ElfCastle(); } + @Override public King createKing() { return new ElfKing(); } + @Override public Army createArmy() { return new ElfArmy(); } diff --git a/abstract-factory/src/main/java/com/iluwatar/abstractfactory/OrcKingdomFactory.java b/abstract-factory/src/main/java/com/iluwatar/abstractfactory/OrcKingdomFactory.java index 5b2ba3a30fc9..43eef13a111b 100644 --- a/abstract-factory/src/main/java/com/iluwatar/abstractfactory/OrcKingdomFactory.java +++ b/abstract-factory/src/main/java/com/iluwatar/abstractfactory/OrcKingdomFactory.java @@ -29,14 +29,17 @@ */ public class OrcKingdomFactory implements KingdomFactory { + @Override public Castle createCastle() { return new OrcCastle(); } + @Override public King createKing() { return new OrcKing(); } + @Override public Army createArmy() { return new OrcArmy(); } diff --git a/acyclic-visitor/pom.xml b/acyclic-visitor/pom.xml index 4a0f740fdd42..a1f2bbf54f97 100644 --- a/acyclic-visitor/pom.xml +++ b/acyclic-visitor/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT acyclic-visitor diff --git a/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/App.java b/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/App.java index 06e4bd2f255d..2a2f64591b6c 100644 --- a/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/App.java +++ b/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/App.java @@ -47,7 +47,7 @@ public static void main(String[] args) { Zoom zoom = new Zoom(); Hayes hayes = new Hayes(); - hayes.accept(conDos); // Hayes modem with Unix configurator + hayes.accept(conDos); // Hayes modem with Dos configurator zoom.accept(conDos); // Zoom modem with Dos configurator hayes.accept(conUnix); // Hayes modem with Unix configurator zoom.accept(conUnix); // Zoom modem with Unix configurator diff --git a/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForDosVisitor.java b/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForDosVisitor.java index a6d66b1db477..4ef69b4b772b 100644 --- a/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForDosVisitor.java +++ b/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForDosVisitor.java @@ -33,10 +33,12 @@ public class ConfigureForDosVisitor implements AllModemVisitor { private static final Logger LOGGER = LoggerFactory.getLogger(ConfigureForDosVisitor.class); + @Override public void visit(Hayes hayes) { LOGGER.info(hayes + " used with Dos configurator."); } + @Override public void visit(Zoom zoom) { LOGGER.info(zoom + " used with Dos configurator."); } diff --git a/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForUnixVisitor.java b/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForUnixVisitor.java index c3546012166d..f3be302f734c 100644 --- a/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForUnixVisitor.java +++ b/acyclic-visitor/src/main/java/com/iluwatar/acyclicvisitor/ConfigureForUnixVisitor.java @@ -34,6 +34,7 @@ public class ConfigureForUnixVisitor implements ZoomVisitor { private static final Logger LOGGER = LoggerFactory.getLogger(ConfigureForUnixVisitor.class); + @Override public void visit(Zoom zoom) { LOGGER.info(zoom + " used with Unix configurator."); } diff --git a/adapter/pom.xml b/adapter/pom.xml index 0c47247dd8a7..c50050037fd7 100644 --- a/adapter/pom.xml +++ b/adapter/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT adapter diff --git a/aggregator-microservices/aggregator-service/pom.xml b/aggregator-microservices/aggregator-service/pom.xml index c4ad9cf1a4a9..dbe303809f9b 100644 --- a/aggregator-microservices/aggregator-service/pom.xml +++ b/aggregator-microservices/aggregator-service/pom.xml @@ -29,7 +29,7 @@ aggregator-microservices com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/aggregator-microservices/information-microservice/pom.xml b/aggregator-microservices/information-microservice/pom.xml index 85992658990b..b15af35e4b82 100644 --- a/aggregator-microservices/information-microservice/pom.xml +++ b/aggregator-microservices/information-microservice/pom.xml @@ -29,7 +29,7 @@ aggregator-microservices com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/aggregator-microservices/inventory-microservice/pom.xml b/aggregator-microservices/inventory-microservice/pom.xml index e19ba55533fb..1791ee72c9e8 100644 --- a/aggregator-microservices/inventory-microservice/pom.xml +++ b/aggregator-microservices/inventory-microservice/pom.xml @@ -29,7 +29,7 @@ aggregator-microservices com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/aggregator-microservices/pom.xml b/aggregator-microservices/pom.xml index 20e912395a05..3bd1832499da 100644 --- a/aggregator-microservices/pom.xml +++ b/aggregator-microservices/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 aggregator-microservices diff --git a/ambassador/pom.xml b/ambassador/pom.xml index efc8437051fe..2c2cf2c1c3c0 100644 --- a/ambassador/pom.xml +++ b/ambassador/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 ambassador diff --git a/api-gateway/api-gateway-service/pom.xml b/api-gateway/api-gateway-service/pom.xml index b17d71bfb905..82aa6aedef80 100644 --- a/api-gateway/api-gateway-service/pom.xml +++ b/api-gateway/api-gateway-service/pom.xml @@ -29,7 +29,7 @@ api-gateway com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 api-gateway-service diff --git a/api-gateway/image-microservice/pom.xml b/api-gateway/image-microservice/pom.xml index bf70cda03c74..c4367cdd8f45 100644 --- a/api-gateway/image-microservice/pom.xml +++ b/api-gateway/image-microservice/pom.xml @@ -29,7 +29,7 @@ api-gateway com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/api-gateway/pom.xml b/api-gateway/pom.xml index a46a511177a7..69437e7c72ac 100644 --- a/api-gateway/pom.xml +++ b/api-gateway/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 api-gateway diff --git a/api-gateway/price-microservice/pom.xml b/api-gateway/price-microservice/pom.xml index 33931cac5b2d..89aaba7ae7d4 100644 --- a/api-gateway/price-microservice/pom.xml +++ b/api-gateway/price-microservice/pom.xml @@ -29,7 +29,7 @@ api-gateway com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/async-method-invocation/pom.xml b/async-method-invocation/pom.xml index 0c42bc970333..c6764f61cad0 100644 --- a/async-method-invocation/pom.xml +++ b/async-method-invocation/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT async-method-invocation diff --git a/balking/pom.xml b/balking/pom.xml index f20969b62765..5da1ea43c71f 100644 --- a/balking/pom.xml +++ b/balking/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/bridge/pom.xml b/bridge/pom.xml index cf45178a1925..2480b06cffad 100644 --- a/bridge/pom.xml +++ b/bridge/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT bridge diff --git a/builder/pom.xml b/builder/pom.xml index dcf61fad5691..0ae5bf1e8368 100644 --- a/builder/pom.xml +++ b/builder/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT builder diff --git a/business-delegate/pom.xml b/business-delegate/pom.xml index ab2f1ae3cb2e..efe9e714586e 100644 --- a/business-delegate/pom.xml +++ b/business-delegate/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT business-delegate diff --git a/bytecode/pom.xml b/bytecode/pom.xml index e9e6247f8eb2..75b5a8c139aa 100644 --- a/bytecode/pom.xml +++ b/bytecode/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/caching/pom.xml b/caching/pom.xml index c678aba4f4e4..76578b8830cc 100644 --- a/caching/pom.xml +++ b/caching/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT caching diff --git a/callback/pom.xml b/callback/pom.xml index 46e9e2c9a5fe..8b74bcc9e8f9 100644 --- a/callback/pom.xml +++ b/callback/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT callback diff --git a/chain/pom.xml b/chain/pom.xml index 86b469ed828f..443e8aee42b2 100644 --- a/chain/pom.xml +++ b/chain/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT chain diff --git a/collection-pipeline/pom.xml b/collection-pipeline/pom.xml index 6003c9b4d7b3..9af2bd42ea73 100644 --- a/collection-pipeline/pom.xml +++ b/collection-pipeline/pom.xml @@ -27,7 +27,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT collection-pipeline diff --git a/command/pom.xml b/command/pom.xml index 6d22f80a3ef1..dc4f5edb92a0 100644 --- a/command/pom.xml +++ b/command/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT command diff --git a/commander/pom.xml b/commander/pom.xml index bbf69b597113..68ff374203b7 100644 --- a/commander/pom.xml +++ b/commander/pom.xml @@ -3,7 +3,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT commander diff --git a/composite/pom.xml b/composite/pom.xml index 9d6f53e2cf08..327e497d757b 100644 --- a/composite/pom.xml +++ b/composite/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT composite diff --git a/converter/pom.xml b/converter/pom.xml index 18b70a1d1e01..ac1b88032fde 100644 --- a/converter/pom.xml +++ b/converter/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/cqrs/pom.xml b/cqrs/pom.xml index 428a9943a2f2..beb195473ced 100644 --- a/cqrs/pom.xml +++ b/cqrs/pom.xml @@ -21,7 +21,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT cqrs diff --git a/dao/pom.xml b/dao/pom.xml index addefc20873b..911ac6b05d1f 100644 --- a/dao/pom.xml +++ b/dao/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT dao diff --git a/data-bus/pom.xml b/data-bus/pom.xml index 918da99040d1..e5a2946951aa 100644 --- a/data-bus/pom.xml +++ b/data-bus/pom.xml @@ -33,7 +33,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT data-bus diff --git a/data-mapper/pom.xml b/data-mapper/pom.xml index e64f44747e55..baf8add13888 100644 --- a/data-mapper/pom.xml +++ b/data-mapper/pom.xml @@ -28,7 +28,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT data-mapper diff --git a/data-transfer-object/pom.xml b/data-transfer-object/pom.xml index 79a54564430e..294f7cbbeebb 100644 --- a/data-transfer-object/pom.xml +++ b/data-transfer-object/pom.xml @@ -28,7 +28,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT data-transfer-object diff --git a/decorator/pom.xml b/decorator/pom.xml index e92b9dc492b2..71c64b331f99 100644 --- a/decorator/pom.xml +++ b/decorator/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT decorator diff --git a/delegation/pom.xml b/delegation/pom.xml index 02b0fda4adeb..89b0b7b4459e 100644 --- a/delegation/pom.xml +++ b/delegation/pom.xml @@ -30,7 +30,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/dependency-injection/pom.xml b/dependency-injection/pom.xml index 21873c86813c..2347cb14f946 100644 --- a/dependency-injection/pom.xml +++ b/dependency-injection/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT dependency-injection diff --git a/dirty-flag/pom.xml b/dirty-flag/pom.xml index de3ef48f0596..31f7edd71284 100644 --- a/dirty-flag/pom.xml +++ b/dirty-flag/pom.xml @@ -29,11 +29,11 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT com.iluwatar dirty-flag - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT dirty-flag http://maven.apache.org diff --git a/double-checked-locking/pom.xml b/double-checked-locking/pom.xml index 49ffe88a77fb..4db5d6fe63bd 100644 --- a/double-checked-locking/pom.xml +++ b/double-checked-locking/pom.xml @@ -27,7 +27,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT double-checked-locking diff --git a/double-dispatch/pom.xml b/double-dispatch/pom.xml index 22fe7a684bc3..6b6c9064c939 100644 --- a/double-dispatch/pom.xml +++ b/double-dispatch/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT double-dispatch diff --git a/eip-aggregator/pom.xml b/eip-aggregator/pom.xml index 54de34334464..f56ae78deb73 100644 --- a/eip-aggregator/pom.xml +++ b/eip-aggregator/pom.xml @@ -26,7 +26,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT diff --git a/eip-message-channel/pom.xml b/eip-message-channel/pom.xml index fd7ee5c0e5e8..9d91b7ead49d 100644 --- a/eip-message-channel/pom.xml +++ b/eip-message-channel/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT eip-message-channel diff --git a/eip-publish-subscribe/pom.xml b/eip-publish-subscribe/pom.xml index 2a041930d048..50c29e300162 100644 --- a/eip-publish-subscribe/pom.xml +++ b/eip-publish-subscribe/pom.xml @@ -28,7 +28,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT eip-publish-subscribe diff --git a/eip-splitter/pom.xml b/eip-splitter/pom.xml index 3f5a79ca1dcc..2bc3eec8402b 100644 --- a/eip-splitter/pom.xml +++ b/eip-splitter/pom.xml @@ -26,7 +26,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT diff --git a/eip-wire-tap/pom.xml b/eip-wire-tap/pom.xml index e3791102d367..efca8d3c4cfb 100644 --- a/eip-wire-tap/pom.xml +++ b/eip-wire-tap/pom.xml @@ -26,7 +26,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT diff --git a/event-aggregator/pom.xml b/event-aggregator/pom.xml index dca72de732eb..2e9f4d9a97fb 100644 --- a/event-aggregator/pom.xml +++ b/event-aggregator/pom.xml @@ -28,7 +28,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT event-aggregator diff --git a/event-asynchronous/pom.xml b/event-asynchronous/pom.xml index 908662d083d9..5efa0252fba9 100644 --- a/event-asynchronous/pom.xml +++ b/event-asynchronous/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT event-asynchronous diff --git a/event-driven-architecture/pom.xml b/event-driven-architecture/pom.xml index a336c9f13962..778949862727 100644 --- a/event-driven-architecture/pom.xml +++ b/event-driven-architecture/pom.xml @@ -31,7 +31,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT event-driven-architecture diff --git a/event-queue/pom.xml b/event-queue/pom.xml index bd80ba5a4bec..dd08a6ae7337 100644 --- a/event-queue/pom.xml +++ b/event-queue/pom.xml @@ -30,7 +30,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT event-queue diff --git a/event-sourcing/pom.xml b/event-sourcing/pom.xml index 4b4d8c701cfa..c97921a1c731 100644 --- a/event-sourcing/pom.xml +++ b/event-sourcing/pom.xml @@ -30,7 +30,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT event-sourcing diff --git a/execute-around/pom.xml b/execute-around/pom.xml index 6fd853ff571f..ac56665fd9f5 100644 --- a/execute-around/pom.xml +++ b/execute-around/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT execute-around diff --git a/extension-objects/pom.xml b/extension-objects/pom.xml index 2dee66d3aa46..37322cc011db 100644 --- a/extension-objects/pom.xml +++ b/extension-objects/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/facade/pom.xml b/facade/pom.xml index 1b9bcb86ad4a..4a8b3e412c7b 100644 --- a/facade/pom.xml +++ b/facade/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT facade diff --git a/factory-kit/pom.xml b/factory-kit/pom.xml index ac23757ec86d..54554a35447a 100644 --- a/factory-kit/pom.xml +++ b/factory-kit/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT factory-kit diff --git a/factory-method/pom.xml b/factory-method/pom.xml index 226c80958e1d..cc4d21d1a4c8 100644 --- a/factory-method/pom.xml +++ b/factory-method/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT factory-method diff --git a/factory-method/src/main/java/com/iluwatar/factory/method/ElfBlacksmith.java b/factory-method/src/main/java/com/iluwatar/factory/method/ElfBlacksmith.java index 66938bb1773b..63e083e3501d 100644 --- a/factory-method/src/main/java/com/iluwatar/factory/method/ElfBlacksmith.java +++ b/factory-method/src/main/java/com/iluwatar/factory/method/ElfBlacksmith.java @@ -29,6 +29,7 @@ */ public class ElfBlacksmith implements Blacksmith { + @Override public Weapon manufactureWeapon(WeaponType weaponType) { return new ElfWeapon(weaponType); } diff --git a/factory-method/src/main/java/com/iluwatar/factory/method/OrcBlacksmith.java b/factory-method/src/main/java/com/iluwatar/factory/method/OrcBlacksmith.java index e2921a4b52cf..6df398a814e9 100644 --- a/factory-method/src/main/java/com/iluwatar/factory/method/OrcBlacksmith.java +++ b/factory-method/src/main/java/com/iluwatar/factory/method/OrcBlacksmith.java @@ -29,6 +29,7 @@ */ public class OrcBlacksmith implements Blacksmith { + @Override public Weapon manufactureWeapon(WeaponType weaponType) { return new OrcWeapon(weaponType); } diff --git a/feature-toggle/pom.xml b/feature-toggle/pom.xml index bd0fb5d71ce5..75da6ec9c0f9 100644 --- a/feature-toggle/pom.xml +++ b/feature-toggle/pom.xml @@ -30,7 +30,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/fluentinterface/pom.xml b/fluentinterface/pom.xml index 605537a73b8a..23fc5d806866 100644 --- a/fluentinterface/pom.xml +++ b/fluentinterface/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/flux/pom.xml b/flux/pom.xml index 726df234a27a..424aaffd2bc2 100644 --- a/flux/pom.xml +++ b/flux/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT flux diff --git a/flyweight/pom.xml b/flyweight/pom.xml index 5bb8f2254950..43b9d3ade3e6 100644 --- a/flyweight/pom.xml +++ b/flyweight/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT flyweight diff --git a/front-controller/pom.xml b/front-controller/pom.xml index 27dc990d110a..d7c2da36ea51 100644 --- a/front-controller/pom.xml +++ b/front-controller/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT front-controller diff --git a/guarded-suspension/pom.xml b/guarded-suspension/pom.xml index c944f8586951..e802eb4bd94a 100644 --- a/guarded-suspension/pom.xml +++ b/guarded-suspension/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT jar guarded-suspension diff --git a/half-sync-half-async/README.md b/half-sync-half-async/README.md index 8a091f8133a3..ef463edadc6f 100644 --- a/half-sync-half-async/README.md +++ b/half-sync-half-async/README.md @@ -27,11 +27,11 @@ Use Half-Sync/Half-Async pattern when ## Real world examples -* [BSD Unix networking subsystem](http://www.cs.wustl.edu/~schmidt/PDF/PLoP-95.pdf) +* [BSD Unix networking subsystem](https://www.dre.vanderbilt.edu/~schmidt/PDF/PLoP-95.pdf) * [Real Time CORBA](http://www.omg.org/news/meetings/workshops/presentations/realtime2001/4-3_Pyarali_thread-pool.pdf) * [Android AsyncTask framework](http://developer.android.com/reference/android/os/AsyncTask.html) ## Credits -* [Douglas C. Schmidt and Charles D. Cranor - Half Sync/Half Async](http://www.cs.wustl.edu/~schmidt/PDF/PLoP-95.pdf) +* [Douglas C. Schmidt and Charles D. Cranor - Half Sync/Half Async](https://www.dre.vanderbilt.edu/~schmidt/PDF/PLoP-95.pdf) * [Pattern Oriented Software Architecture Vol I-V](http://www.amazon.com/Pattern-Oriented-Software-Architecture-Volume-Patterns/dp/0471958697) diff --git a/half-sync-half-async/pom.xml b/half-sync-half-async/pom.xml index a532c619347e..d965298ca364 100644 --- a/half-sync-half-async/pom.xml +++ b/half-sync-half-async/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT half-sync-half-async diff --git a/hexagonal/pom.xml b/hexagonal/pom.xml index a2c9f1925d51..4f56a1020116 100644 --- a/hexagonal/pom.xml +++ b/hexagonal/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT hexagonal diff --git a/intercepting-filter/README.md b/intercepting-filter/README.md index 0d35044de8a7..c287138953eb 100644 --- a/intercepting-filter/README.md +++ b/intercepting-filter/README.md @@ -30,9 +30,8 @@ Use the Intercepting Filter pattern when ## Real world examples * [javax.servlet.FilterChain](https://tomcat.apache.org/tomcat-8.0-doc/servletapi/javax/servlet/FilterChain.html) and [javax.servlet.Filter](https://tomcat.apache.org/tomcat-8.0-doc/servletapi/javax/servlet/Filter.html) -* [Struts 2 - Interceptors](https://struts.apache.org/docs/interceptors.html) +* [Struts 2 - Interceptors](https://struts.apache.org/core-developers/interceptors.html) ## Credits * [TutorialsPoint - Intercepting Filter](http://www.tutorialspoint.com/design_pattern/intercepting_filter_pattern.htm) -* [Presentation Tier Patterns](http://www.javagyan.com/tutorials/corej2eepatterns/presentation-tier-patterns) diff --git a/intercepting-filter/pom.xml b/intercepting-filter/pom.xml index bf78e6792669..c4183c7d0742 100644 --- a/intercepting-filter/pom.xml +++ b/intercepting-filter/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT intercepting-filter diff --git a/interpreter/pom.xml b/interpreter/pom.xml index 1274a4b69557..aa834b2edbb5 100644 --- a/interpreter/pom.xml +++ b/interpreter/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT interpreter diff --git a/iterator/pom.xml b/iterator/pom.xml index fa06c9d3b0f0..6eafcb92cb48 100644 --- a/iterator/pom.xml +++ b/iterator/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT iterator diff --git a/layers/pom.xml b/layers/pom.xml index cdd996ccb515..8237c8f4f6e0 100644 --- a/layers/pom.xml +++ b/layers/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT com.iluwatar.layers layers diff --git a/lazy-loading/pom.xml b/lazy-loading/pom.xml index 773dd7d8bed6..d5dacc7ce041 100644 --- a/lazy-loading/pom.xml +++ b/lazy-loading/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT lazy-loading diff --git a/marker/pom.xml b/marker/pom.xml index faa6868c237d..afa82f4db4bf 100644 --- a/marker/pom.xml +++ b/marker/pom.xml @@ -24,7 +24,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/master-worker-pattern/pom.xml b/master-worker-pattern/pom.xml index 1c317bac9446..be512fdef041 100644 --- a/master-worker-pattern/pom.xml +++ b/master-worker-pattern/pom.xml @@ -27,7 +27,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT master-worker-pattern diff --git a/mediator/pom.xml b/mediator/pom.xml index d14e82bcc522..14aadac8dd9b 100644 --- a/mediator/pom.xml +++ b/mediator/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT mediator diff --git a/memento/pom.xml b/memento/pom.xml index fc3e1954f76d..7eadc5839483 100644 --- a/memento/pom.xml +++ b/memento/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT memento diff --git a/model-view-controller/pom.xml b/model-view-controller/pom.xml index 523319a28e50..64cb39f47f6e 100644 --- a/model-view-controller/pom.xml +++ b/model-view-controller/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT model-view-controller diff --git a/model-view-presenter/pom.xml b/model-view-presenter/pom.xml index a4e91652820d..2be7b30ca848 100644 --- a/model-view-presenter/pom.xml +++ b/model-view-presenter/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT model-view-presenter model-view-presenter diff --git a/module/pom.xml b/module/pom.xml index 0320d97c0a8f..df8c1494214d 100644 --- a/module/pom.xml +++ b/module/pom.xml @@ -28,7 +28,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT module diff --git a/monad/pom.xml b/monad/pom.xml index 45741ee1b6e7..d9a436a6b569 100644 --- a/monad/pom.xml +++ b/monad/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT monad diff --git a/monostate/pom.xml b/monostate/pom.xml index d39071e261ea..018e352483a4 100644 --- a/monostate/pom.xml +++ b/monostate/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT monostate diff --git a/multiton/pom.xml b/multiton/pom.xml index beaccf3e3db8..df26fe204470 100644 --- a/multiton/pom.xml +++ b/multiton/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT multiton diff --git a/mute-idiom/pom.xml b/mute-idiom/pom.xml index 7cdbc5a42e0a..271e5265836c 100644 --- a/mute-idiom/pom.xml +++ b/mute-idiom/pom.xml @@ -21,7 +21,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT mute-idiom diff --git a/mutex/pom.xml b/mutex/pom.xml index 85c5208d83b1..2075fb4a2462 100644 --- a/mutex/pom.xml +++ b/mutex/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT mutex diff --git a/naked-objects/dom/pom.xml b/naked-objects/dom/pom.xml index 519e2cc0d883..69365bd4b00a 100644 --- a/naked-objects/dom/pom.xml +++ b/naked-objects/dom/pom.xml @@ -16,7 +16,7 @@ com.iluwatar naked-objects - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT naked-objects-dom diff --git a/naked-objects/fixture/pom.xml b/naked-objects/fixture/pom.xml index cdb77b1b940e..6426eb1d6473 100644 --- a/naked-objects/fixture/pom.xml +++ b/naked-objects/fixture/pom.xml @@ -16,7 +16,7 @@ com.iluwatar naked-objects - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT naked-objects-fixture diff --git a/naked-objects/integtests/pom.xml b/naked-objects/integtests/pom.xml index 460f2f5060cc..c4dd52dcf652 100644 --- a/naked-objects/integtests/pom.xml +++ b/naked-objects/integtests/pom.xml @@ -16,7 +16,7 @@ com.iluwatar naked-objects - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT naked-objects-integtests diff --git a/naked-objects/pom.xml b/naked-objects/pom.xml index 2a1832ea7e63..8c21504bb6f5 100644 --- a/naked-objects/pom.xml +++ b/naked-objects/pom.xml @@ -15,7 +15,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT naked-objects @@ -350,17 +350,17 @@ ${project.groupId} naked-objects-dom - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT ${project.groupId} naked-objects-fixture - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT ${project.groupId} naked-objects-webapp - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT diff --git a/naked-objects/webapp/pom.xml b/naked-objects/webapp/pom.xml index 54ccc40afae6..e3b8d122aba0 100644 --- a/naked-objects/webapp/pom.xml +++ b/naked-objects/webapp/pom.xml @@ -16,7 +16,7 @@ com.iluwatar naked-objects - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT naked-objects-webapp diff --git a/null-object/pom.xml b/null-object/pom.xml index 5c35e6a0a9e0..f477b861c6d7 100644 --- a/null-object/pom.xml +++ b/null-object/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT null-object diff --git a/object-mother/pom.xml b/object-mother/pom.xml index c0ed50739c74..431d4d3b9dfb 100644 --- a/object-mother/pom.xml +++ b/object-mother/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT object-mother diff --git a/object-pool/pom.xml b/object-pool/pom.xml index fcb95db29fea..a9a0fd044db1 100644 --- a/object-pool/pom.xml +++ b/object-pool/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT object-pool diff --git a/observer/pom.xml b/observer/pom.xml index 2248957c7179..dbe40f22f8ad 100644 --- a/observer/pom.xml +++ b/observer/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT observer diff --git a/page-object/pom.xml b/page-object/pom.xml index ae239725dbe7..93bf25fc9a2e 100644 --- a/page-object/pom.xml +++ b/page-object/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT page-object pom diff --git a/page-object/sample-application/pom.xml b/page-object/sample-application/pom.xml index d78e46b28a78..44bc18a8c6b5 100644 --- a/page-object/sample-application/pom.xml +++ b/page-object/sample-application/pom.xml @@ -29,7 +29,7 @@ page-object com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT sample-application diff --git a/page-object/test-automation/pom.xml b/page-object/test-automation/pom.xml index 7f8bcb12d0e9..f657a8dab0b6 100644 --- a/page-object/test-automation/pom.xml +++ b/page-object/test-automation/pom.xml @@ -29,7 +29,7 @@ page-object com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT test-automation diff --git a/partial-response/pom.xml b/partial-response/pom.xml index 04b760ca833e..db70ffd1c883 100644 --- a/partial-response/pom.xml +++ b/partial-response/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/poison-pill/pom.xml b/poison-pill/pom.xml index eb68f4a108e6..16ee086c7088 100644 --- a/poison-pill/pom.xml +++ b/poison-pill/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT poison-pill diff --git a/pom.xml b/pom.xml index c55ed6492211..cb5dbbd1c343 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ 4.0.0 com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT pom 2014 diff --git a/priority-queue/pom.xml b/priority-queue/pom.xml index 9e5a788066c3..aaf172ef3953 100644 --- a/priority-queue/pom.xml +++ b/priority-queue/pom.xml @@ -31,7 +31,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT diff --git a/private-class-data/pom.xml b/private-class-data/pom.xml index e01e81149459..d3ea624a46b5 100644 --- a/private-class-data/pom.xml +++ b/private-class-data/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT private-class-data diff --git a/producer-consumer/pom.xml b/producer-consumer/pom.xml index 4355df70256c..20cc0a1929e4 100644 --- a/producer-consumer/pom.xml +++ b/producer-consumer/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT producer-consumer diff --git a/promise/pom.xml b/promise/pom.xml index 6c29939d5228..8e7e92ddfccb 100644 --- a/promise/pom.xml +++ b/promise/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT promise diff --git a/property/pom.xml b/property/pom.xml index dc0430fe3f97..d17aff7056ee 100644 --- a/property/pom.xml +++ b/property/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT property diff --git a/prototype/pom.xml b/prototype/pom.xml index ef81d38ecc2a..12416f41d54f 100644 --- a/prototype/pom.xml +++ b/prototype/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT prototype diff --git a/proxy/pom.xml b/proxy/pom.xml index aef352a5d23a..e6b3ec76f7c4 100644 --- a/proxy/pom.xml +++ b/proxy/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT proxy diff --git a/queue-load-leveling/pom.xml b/queue-load-leveling/pom.xml index 4b028e3565fe..bba4c44df34d 100644 --- a/queue-load-leveling/pom.xml +++ b/queue-load-leveling/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT queue-load-leveling diff --git a/reactor/pom.xml b/reactor/pom.xml index 6b561996d623..ff28b19ad090 100644 --- a/reactor/pom.xml +++ b/reactor/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT reactor diff --git a/reader-writer-lock/pom.xml b/reader-writer-lock/pom.xml index 460e58baa287..4a69cdb0c196 100644 --- a/reader-writer-lock/pom.xml +++ b/reader-writer-lock/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT reader-writer-lock diff --git a/repository/pom.xml b/repository/pom.xml index 36f73e344846..48bca0cf2ba8 100644 --- a/repository/pom.xml +++ b/repository/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT repository diff --git a/resource-acquisition-is-initialization/pom.xml b/resource-acquisition-is-initialization/pom.xml index 17985bdef53a..fc91d5c04c26 100644 --- a/resource-acquisition-is-initialization/pom.xml +++ b/resource-acquisition-is-initialization/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT resource-acquisition-is-initialization diff --git a/retry/pom.xml b/retry/pom.xml index 931873491ddd..5d054183f1c7 100644 --- a/retry/pom.xml +++ b/retry/pom.xml @@ -26,7 +26,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT retry jar diff --git a/semaphore/pom.xml b/semaphore/pom.xml index bebd9b802c56..3761e5e49a8f 100644 --- a/semaphore/pom.xml +++ b/semaphore/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT semaphore diff --git a/servant/pom.xml b/servant/pom.xml index e97b3a9895b2..1ee17aa9c919 100644 --- a/servant/pom.xml +++ b/servant/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT servant diff --git a/serverless/pom.xml b/serverless/pom.xml index 89048283a472..6156b41afd0e 100644 --- a/serverless/pom.xml +++ b/serverless/pom.xml @@ -26,7 +26,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT diff --git a/service-layer/pom.xml b/service-layer/pom.xml index 2bd114c55ca2..403a896a4613 100644 --- a/service-layer/pom.xml +++ b/service-layer/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT service-layer diff --git a/service-locator/pom.xml b/service-locator/pom.xml index fa6fcc4ba470..948997f7aa8d 100644 --- a/service-locator/pom.xml +++ b/service-locator/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT service-locator diff --git a/singleton/pom.xml b/singleton/pom.xml index e3d8f06e2ea5..e518665d3ad8 100644 --- a/singleton/pom.xml +++ b/singleton/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT singleton @@ -38,5 +38,9 @@ junit-jupiter-engine test + + junit + junit + diff --git a/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java b/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java index a7557fda37e0..6c17f7c3f001 100644 --- a/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java +++ b/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java @@ -35,12 +35,16 @@ public final class ThreadSafeDoubleCheckLocking { private static volatile ThreadSafeDoubleCheckLocking instance; + private static boolean flag = true; + /** * private constructor to prevent client from instantiating. */ private ThreadSafeDoubleCheckLocking() { // to prevent instantiating by Reflection call - if (instance != null) { + if (flag) { + flag = false; + } else { throw new IllegalStateException("Already initialized."); } } diff --git a/singleton/src/test/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLockingTest.java b/singleton/src/test/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLockingTest.java index 1d00d9f8f624..6286b09fb2a4 100644 --- a/singleton/src/test/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLockingTest.java +++ b/singleton/src/test/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLockingTest.java @@ -22,6 +22,11 @@ */ package com.iluwatar.singleton; +import org.junit.Test; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + /** * Date: 12/29/15 - 19:26 PM * @@ -36,4 +41,15 @@ public ThreadSafeDoubleCheckLockingTest() { super(ThreadSafeDoubleCheckLocking::getInstance); } + /** + * Test creating new instance by refection + */ + @Test(expected = InvocationTargetException.class) + public void testCreatingNewInstanceByRefection() throws Exception { + ThreadSafeDoubleCheckLocking instance1 = ThreadSafeDoubleCheckLocking.getInstance(); + Constructor constructor = ThreadSafeDoubleCheckLocking.class.getDeclaredConstructor(); + constructor.setAccessible(true); + ThreadSafeDoubleCheckLocking instance2 = (ThreadSafeDoubleCheckLocking) constructor.newInstance(null); + } + } \ No newline at end of file diff --git a/spatial-partition/pom.xml b/spatial-partition/pom.xml index 22eb7a6f68fb..0ad20721166a 100644 --- a/spatial-partition/pom.xml +++ b/spatial-partition/pom.xml @@ -46,7 +46,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT spatial-partition diff --git a/specification/pom.xml b/specification/pom.xml index 8723651051e2..38adf9b6fc8b 100644 --- a/specification/pom.xml +++ b/specification/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT specification diff --git a/state/pom.xml b/state/pom.xml index 9aeb4ec00cbd..f90da878680a 100644 --- a/state/pom.xml +++ b/state/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT state diff --git a/step-builder/pom.xml b/step-builder/pom.xml index ca5ed709d711..6021ecb2af39 100644 --- a/step-builder/pom.xml +++ b/step-builder/pom.xml @@ -30,7 +30,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT step-builder diff --git a/strategy/pom.xml b/strategy/pom.xml index a8dbbd007336..c421436f5f81 100644 --- a/strategy/pom.xml +++ b/strategy/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT strategy diff --git a/template-method/pom.xml b/template-method/pom.xml index 1345eaa6ca86..e1f24ae251db 100644 --- a/template-method/pom.xml +++ b/template-method/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT template-method diff --git a/thread-pool/pom.xml b/thread-pool/pom.xml index a77230bf2130..f05f6c2190e7 100644 --- a/thread-pool/pom.xml +++ b/thread-pool/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT thread-pool diff --git a/throttling/pom.xml b/throttling/pom.xml index d477af53f5aa..e21d8b3c1232 100644 --- a/throttling/pom.xml +++ b/throttling/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/throttling/src/main/java/com/iluwatar/throttling/timer/ThrottleTimerImpl.java b/throttling/src/main/java/com/iluwatar/throttling/timer/ThrottleTimerImpl.java index 3d1e68287ccd..e2da42350bdd 100644 --- a/throttling/src/main/java/com/iluwatar/throttling/timer/ThrottleTimerImpl.java +++ b/throttling/src/main/java/com/iluwatar/throttling/timer/ThrottleTimerImpl.java @@ -49,6 +49,7 @@ public ThrottleTimerImpl(int throttlePeriod, CallsCount callsCount) { * A timer is initiated with this method. The timer runs every second and resets the * counter. */ + @Override public void start() { new Timer(true).schedule(new TimerTask() { @Override diff --git a/tls/pom.xml b/tls/pom.xml index d3ccbfc2b79a..596ebd37310d 100644 --- a/tls/pom.xml +++ b/tls/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT tls diff --git a/tolerant-reader/pom.xml b/tolerant-reader/pom.xml index 51554d7dce28..abf786059fa2 100644 --- a/tolerant-reader/pom.xml +++ b/tolerant-reader/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT tolerant-reader diff --git a/trampoline/pom.xml b/trampoline/pom.xml index 338dc101604b..e6f2e620afac 100644 --- a/trampoline/pom.xml +++ b/trampoline/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT trampoline diff --git a/twin/pom.xml b/twin/pom.xml index 74e81ec0df44..15b4f6c1159f 100644 --- a/twin/pom.xml +++ b/twin/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT twin diff --git a/typeobjectpattern/pom.xml b/typeobjectpattern/pom.xml index 4e66263fefb7..f07460f49c54 100644 --- a/typeobjectpattern/pom.xml +++ b/typeobjectpattern/pom.xml @@ -27,7 +27,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT typeobjectpattern diff --git a/unit-of-work/pom.xml b/unit-of-work/pom.xml index b53075f21e8a..fc11432e2923 100644 --- a/unit-of-work/pom.xml +++ b/unit-of-work/pom.xml @@ -29,7 +29,7 @@ java-design-patterns com.iluwatar - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT 4.0.0 diff --git a/value-object/pom.xml b/value-object/pom.xml index 2b951d2a3135..669ea521e470 100644 --- a/value-object/pom.xml +++ b/value-object/pom.xml @@ -30,7 +30,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT value-object diff --git a/visitor/pom.xml b/visitor/pom.xml index 618b547ea553..5fbc84142675 100644 --- a/visitor/pom.xml +++ b/visitor/pom.xml @@ -29,7 +29,7 @@ com.iluwatar java-design-patterns - 1.21.0-SNAPSHOT + 1.22.0-SNAPSHOT visitor