Added changes for Zookeeper node healthcheck 01/48401/1 release-2.5.3 v2.5.5
authorVikram Potturi(apotturi) <vp9004@att.com>
Tue, 22 May 2018 00:06:08 +0000 (20:06 -0400)
committerVikram Potturi(apotturi) <vp9004@att.com>
Tue, 22 May 2018 00:06:08 +0000 (20:06 -0400)
Change-Id: Ib25342cebfc95a217dedc2588f2fb1284b1ef03f
Issue-ID: MUSIC-73
Signed-off-by: Vikram Potturi(apotturi) <vp9004@att.com>
jar/pom.xml
jar/src/main/java/org/onap/music/lockingservice/MusicLockingService.java
jar/src/main/webapp/WEB-INF/classes/project.properties

index d2d7452..6627b00 100644 (file)
@@ -25,7 +25,7 @@
     <groupId>org.onap.music</groupId>
     <artifactId>MUSIC</artifactId>
     <packaging>jar</packaging>
-    <version>2.5.5</version>
+    <version>2.5.6</version>
     <description>
             This is the MUSIC interface, packaged as a jar file.
     </description>
index ae02690..29f2315 100644 (file)
@@ -34,6 +34,7 @@ import org.onap.music.eelf.logging.format.ErrorTypes;
 import org.onap.music.exceptions.MusicLockingException;
 import org.onap.music.exceptions.MusicServiceException;
 import org.onap.music.main.MusicUtil;
+import java.util.concurrent.TimeUnit;
 
 
 public class MusicLockingService implements Watcher {
@@ -76,6 +77,23 @@ public class MusicLockingService implements Watcher {
                        logger.error(EELFLoggerDelegate.errorLogger, e.getMessage(),AppMessages.UNKNOWNERROR, ErrorSeverity.ERROR, ErrorTypes.LOCKINGERROR);
                }
     }
+    
+    public MusicLockingService(int timeout) throws MusicServiceException { 
+       CountDownLatch connectedSignal1 = new CountDownLatch(1); 
+       try { 
+            ZooKeeper zk1 = new ZooKeeper(MusicUtil.getMyZkHost(), SESSION_TIMEOUT, this); 
+            connectedSignal1.await(timeout, TimeUnit.SECONDS); 
+            if(!zk1.getState().isConnected()) { 
+               throw new MusicServiceException("Unable to Connect. Some nodes are down."); 
+            } 
+        } catch (IOException e ) { 
+            logger.error(EELFLoggerDelegate.errorLogger, e.getMessage(),AppMessages.IOERROR, ErrorSeverity.ERROR, ErrorTypes.CONNECTIONERROR); 
+            throw new MusicServiceException("IO Error has occured" + e.getMessage()); 
+        } catch (InterruptedException e) { 
+               logger.error(EELFLoggerDelegate.errorLogger, e.getMessage(),AppMessages.EXECUTIONINTERRUPTED, ErrorSeverity.ERROR, ErrorTypes.LOCKINGERROR); 
+            throw new MusicServiceException("Exception Occured " + e.getMessage()); 
+        } 
+    }
 
     public void createLockaIfItDoesNotExist(String lockName) {
         if (!zkLockHandle.checkIfLockExists(lockName)) {
index 3b6d228..cb51134 100644 (file)
@@ -1,4 +1,4 @@
-version=2.5.3
+version=2.5.5
 artifactId=MUSIC
 music.properties=/opt/app/music/etc/music.properties