Fix modernization issues
[controller.git] / opendaylight / md-sal / cds-access-api / src / main / java / org / opendaylight / controller / cluster / access / concepts / FrontendIdentifier.java
index 54ed314b66504995604898b03b5dbde22d7e30ea..d47f03773bdcb048a1e8488aa9f4fd792b817147 100644 (file)
@@ -7,9 +7,9 @@
  */
 package org.opendaylight.controller.cluster.access.concepts;
 
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.annotations.Beta;
-import com.google.common.base.MoreObjects;
-import com.google.common.base.Preconditions;
 import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.Externalizable;
@@ -17,7 +17,7 @@ import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 import java.util.Objects;
-import org.opendaylight.yangtools.concepts.Identifier;
+import org.opendaylight.yangtools.concepts.WritableIdentifier;
 
 /**
  * A cluster-wide unique identifier of a frontend type located at a cluster member.
@@ -25,19 +25,22 @@ import org.opendaylight.yangtools.concepts.Identifier;
  * @author Robert Varga
  */
 @Beta
-public final class FrontendIdentifier implements Identifier, WritableObject {
+public final class FrontendIdentifier implements WritableIdentifier {
     private static final class Proxy implements Externalizable {
         private static final long serialVersionUID = 1L;
         private MemberName memberName;
         private FrontendType clientType;
 
+        // checkstyle flags the public modifier as redundant however it is explicitly needed for Java serialization to
+        // be able to create instances via reflection.
+        @SuppressWarnings("checkstyle:RedundantModifier")
         public Proxy() {
             // Needed for Externalizable
         }
 
         Proxy(final MemberName memberName, final FrontendType clientType) {
-            this.memberName = Preconditions.checkNotNull(memberName);
-            this.clientType = Preconditions.checkNotNull(clientType);
+            this.memberName = requireNonNull(memberName);
+            this.clientType = requireNonNull(clientType);
         }
 
         @Override
@@ -62,8 +65,8 @@ public final class FrontendIdentifier implements Identifier, WritableObject {
     private final FrontendType clientType;
 
     FrontendIdentifier(final MemberName memberName, final FrontendType clientType) {
-        this.clientType = Preconditions.checkNotNull(clientType);
-        this.memberName = Preconditions.checkNotNull(memberName);
+        this.clientType = requireNonNull(clientType);
+        this.memberName = requireNonNull(memberName);
     }
 
     public static FrontendIdentifier create(final MemberName memberName, final FrontendType clientType) {
@@ -96,22 +99,25 @@ public final class FrontendIdentifier implements Identifier, WritableObject {
     }
 
     @Override
-    public boolean equals(final Object o) {
-        if (this == o) {
+    public boolean equals(final Object obj) {
+        if (this == obj) {
             return true;
         }
-        if (!(o instanceof FrontendIdentifier)) {
+        if (!(obj instanceof FrontendIdentifier)) {
             return false;
         }
 
-        final FrontendIdentifier other = (FrontendIdentifier) o;
+        final FrontendIdentifier other = (FrontendIdentifier) obj;
         return memberName.equals(other.memberName) && clientType.equals(other.clientType);
     }
 
+    public String toPersistentId() {
+        return memberName.getName() + "-frontend-" + clientType.getName();
+    }
+
     @Override
     public String toString() {
-        return MoreObjects.toStringHelper(FrontendIdentifier.class).add("member", memberName)
-                .add("clientType", clientType).toString();
+        return toPersistentId();
     }
 
     private Object writeReplace() {