+ private static final class ElanLockName {
+ private final String macAddress;
+ private final BigInteger dpnId;
+ private final long elanTag;
+
+ ElanLockName(long elanTag, String macAddress, BigInteger dpnId) {
+ this.elanTag = elanTag;
+ this.macAddress = macAddress;
+ this.dpnId = dpnId;
+ }
+
+ @Override
+ public int hashCode() {
+ return 31 * Long.hashCode(elanTag) + Objects.hash(macAddress, dpnId);
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (!(obj instanceof ElanLockName)) {
+ return false;
+ }
+ final ElanLockName other = (ElanLockName) obj;
+ return elanTag == other.elanTag && Objects.equals(macAddress, other.macAddress)
+ && Objects.equals(dpnId, other.dpnId);
+ }
+ }