Bump upstream SNAPSHOTS
[controller.git] / opendaylight / md-sal / cds-access-api / src / main / java / org / opendaylight / controller / cluster / access / commands / DeadTransactionException.java
index 562c0e59b923c27e1611925aab41a61604840777..fee439984ac53c15fbdc37c09c618ba410bda150 100644 (file)
@@ -8,6 +8,9 @@
 package org.opendaylight.controller.cluster.access.commands;
 
 import com.google.common.annotations.Beta;
+import com.google.common.collect.ImmutableRangeSet;
+import com.google.common.collect.RangeSet;
+import com.google.common.primitives.UnsignedLong;
 import org.opendaylight.controller.cluster.access.concepts.RequestException;
 
 /**
@@ -20,12 +23,19 @@ import org.opendaylight.controller.cluster.access.concepts.RequestException;
 public final class DeadTransactionException extends RequestException {
     private static final long serialVersionUID = 1L;
 
-    public DeadTransactionException(final long lastSeenTransaction) {
-        super("Transaction up to " + Long.toUnsignedString(lastSeenTransaction) + " are accounted for");
+    private final RangeSet<UnsignedLong> purgedIdentifiers;
+
+    public DeadTransactionException(final RangeSet<UnsignedLong> purgedIdentifiers) {
+        super("Transactions " + purgedIdentifiers + " have been purged");
+        this.purgedIdentifiers = ImmutableRangeSet.copyOf(purgedIdentifiers);
     }
 
     @Override
     public boolean isRetriable() {
-        return true;
+        return false;
+    }
+
+    public RangeSet<UnsignedLong> getPurgedIdentifier() {
+        return purgedIdentifiers;
     }
 }