Bump to odlparent 3.1.0 and yangtools 2.0.3
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / exceptions / NoShardLeaderException.java
index b205b0fe7853c176be3f92ef2a2f3d3fd952dbab..fed443b5d4f08f67c4887ab78fd1b630c4d9ce34 100644 (file)
@@ -7,6 +7,10 @@
  */
 package org.opendaylight.controller.cluster.datastore.exceptions;
 
+import com.google.common.base.Strings;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import javax.annotation.Nullable;
+
 /**
  * Exception indicating a shard has no current leader.
  *
@@ -15,7 +19,14 @@ package org.opendaylight.controller.cluster.datastore.exceptions;
 public class NoShardLeaderException extends RuntimeException {
     private static final long serialVersionUID = 1L;
 
-    public NoShardLeaderException(String message){
+    public NoShardLeaderException(String message) {
         super(message);
     }
+
+    @SuppressFBWarnings(value = "NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE",
+            justification = "Unrecognised NullableDecl")
+    public NoShardLeaderException(@Nullable String message, String shardName) {
+        super(String.format("%sShard %s currently has no leader. Try again later.",
+                (Strings.isNullOrEmpty(message) ? "" : message + ". "), shardName));
+    }
 }