From 462b581b3441b1523db4efc42336bb51f52ef620 Mon Sep 17 00:00:00 2001 From: Subhrodip Mohanta Date: Wed, 27 Jan 2021 19:54:06 +0530 Subject: [PATCH] clearing Sonar Blockers (#1633) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * update gitignore .checkstyle files are being tracked which should not be * NOSONAR for statement excluded from SONAR analysis as it is already dealt using functional approach https://sonarcloud.io/project/issues?id=iluwatar_java-design-patterns&issues=AW8FwRBhm8eoEVQR-x0f&open=AW8FwRBhm8eoEVQR-x0f * achieved thread safety with lazy initialization https://sonarcloud.io/project/issues?fileUuids=AXb6t0PKusn4P8Tm-LmM&id=iluwatar_java-design-patterns&open=AXb6t19yusn4P8Tm-Lmo&resolved=false * remove double checked locking and initialize before using https://sonarcloud.io/project/issues?fileUuids=AXb6t0PKusn4P8Tm-LmK&id=iluwatar_java-design-patterns&open=AXb6t19qusn4P8Tm-Lmk&resolved=false * NOSONAR for the line https://sonarcloud.io/project/issues?id=iluwatar_java-design-patterns&issues=AXPd3iSe46HRSze7cz3D&open=AXPd3iSe46HRSze7cz3D Co-authored-by: Ilkka Seppälä --- .../main/java/com/iluwatar/dao/DbCustomerDao.java | 2 +- .../main/java/com/iluwatar/specialcase/Db.java | 15 ++++++--------- .../com/iluwatar/specialcase/MaintenanceLock.java | 10 +++------- .../iluwatar/transactionscript/HotelDaoImpl.java | 2 +- 4 files changed, 11 insertions(+), 18 deletions(-) diff --git a/dao/src/main/java/com/iluwatar/dao/DbCustomerDao.java b/dao/src/main/java/com/iluwatar/dao/DbCustomerDao.java index 15f20eb43..23958cab9 100644 --- a/dao/src/main/java/com/iluwatar/dao/DbCustomerDao.java +++ b/dao/src/main/java/com/iluwatar/dao/DbCustomerDao.java @@ -67,7 +67,7 @@ public class DbCustomerDao implements CustomerDao { public Stream getAll() throws Exception { try { var connection = getConnection(); - var statement = connection.prepareStatement("SELECT * FROM CUSTOMERS"); + var statement = connection.prepareStatement("SELECT * FROM CUSTOMERS"); // NOSONAR var resultSet = statement.executeQuery(); // NOSONAR return StreamSupport.stream(new Spliterators.AbstractSpliterator(Long.MAX_VALUE, Spliterator.ORDERED) { diff --git a/special-case/src/main/java/com/iluwatar/specialcase/Db.java b/special-case/src/main/java/com/iluwatar/specialcase/Db.java index 7696e9865..4c6665fef 100644 --- a/special-case/src/main/java/com/iluwatar/specialcase/Db.java +++ b/special-case/src/main/java/com/iluwatar/specialcase/Db.java @@ -38,16 +38,13 @@ public class Db { * * @return singleton instance of Db class */ - public static Db getInstance() { + public static synchronized Db getInstance() { if (instance == null) { - synchronized (Db.class) { - if (instance == null) { - instance = new Db(); - instance.userName2User = new HashMap<>(); - instance.user2Account = new HashMap<>(); - instance.itemName2Product = new HashMap<>(); - } - } + Db newInstance = new Db(); + newInstance.userName2User = new HashMap<>(); + newInstance.user2Account = new HashMap<>(); + newInstance.itemName2Product = new HashMap<>(); + instance = newInstance; } return instance; } diff --git a/special-case/src/main/java/com/iluwatar/specialcase/MaintenanceLock.java b/special-case/src/main/java/com/iluwatar/specialcase/MaintenanceLock.java index ffe0c2628..214e04d6b 100644 --- a/special-case/src/main/java/com/iluwatar/specialcase/MaintenanceLock.java +++ b/special-case/src/main/java/com/iluwatar/specialcase/MaintenanceLock.java @@ -38,13 +38,9 @@ public class MaintenanceLock { * * @return singleton instance of MaintenanceLock */ - public static MaintenanceLock getInstance() { + public static synchronized MaintenanceLock getInstance() { if (instance == null) { - synchronized (MaintenanceLock.class) { - if (instance == null) { - instance = new MaintenanceLock(); - } - } + instance = new MaintenanceLock(); } return instance; } @@ -55,6 +51,6 @@ public class MaintenanceLock { public void setLock(boolean lock) { this.lock = lock; - LOGGER.info("Maintenance lock is set to: " + lock); + LOGGER.info("Maintenance lock is set to: ", lock); } } diff --git a/transaction-script/src/main/java/com/iluwatar/transactionscript/HotelDaoImpl.java b/transaction-script/src/main/java/com/iluwatar/transactionscript/HotelDaoImpl.java index 240f96892..07c88b698 100644 --- a/transaction-script/src/main/java/com/iluwatar/transactionscript/HotelDaoImpl.java +++ b/transaction-script/src/main/java/com/iluwatar/transactionscript/HotelDaoImpl.java @@ -49,7 +49,7 @@ public class HotelDaoImpl implements HotelDao { public Stream getAll() throws Exception { try { var connection = getConnection(); - var statement = connection.prepareStatement("SELECT * FROM ROOMS"); + var statement = connection.prepareStatement("SELECT * FROM ROOMS"); // NOSONAR var resultSet = statement.executeQuery(); // NOSONAR return StreamSupport.stream(new Spliterators.AbstractSpliterator(Long.MAX_VALUE, Spliterator.ORDERED) {