Browse Source

Add equals and hashCode to UnwrappedMongoPersistentProperty.

Fixes #3683
Original Pull Request: #3684
pull/3780/head
Gatto 5 years ago committed by Christoph Strobl
parent
commit
6644ac6875
  1. 33
      spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapping/UnwrapEntityContext.java
  2. 32
      spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapping/UnwrappedMongoPersistentProperty.java

33
spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapping/UnwrapEntityContext.java

@ -15,8 +15,11 @@ @@ -15,8 +15,11 @@
*/
package org.springframework.data.mongodb.core.mapping;
import java.util.Objects;
/**
* @author Christoph Strobl
* @author Rogério Meneguelli Gatto
* @since 3.2
*/
class UnwrapEntityContext {
@ -30,4 +33,34 @@ class UnwrapEntityContext { @@ -30,4 +33,34 @@ class UnwrapEntityContext {
public MongoPersistentProperty getProperty() {
return property;
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#hashCode()
*/
@Override
public int hashCode() {
return Objects.hash(property);
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#equals(java.lang.Object)
*/
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
UnwrapEntityContext other = (UnwrapEntityContext) obj;
return Objects.equals(property, other.property);
}
}

32
spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/mapping/UnwrappedMongoPersistentProperty.java

@ -18,6 +18,7 @@ package org.springframework.data.mongodb.core.mapping; @@ -18,6 +18,7 @@ package org.springframework.data.mongodb.core.mapping;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.Objects;
import org.springframework.data.mapping.Association;
import org.springframework.data.mapping.PersistentEntity;
@ -29,6 +30,7 @@ import org.springframework.lang.Nullable; @@ -29,6 +30,7 @@ import org.springframework.lang.Nullable;
* Unwrapped variant of {@link MongoPersistentProperty}.
*
* @author Christoph Strobl
* @author Rogério Meneguelli Gatto
* @since 3.2
* @see Unwrapped
*/
@ -304,4 +306,34 @@ class UnwrappedMongoPersistentProperty implements MongoPersistentProperty { @@ -304,4 +306,34 @@ class UnwrappedMongoPersistentProperty implements MongoPersistentProperty {
public <T> PersistentPropertyAccessor<T> getAccessorForOwner(T owner) {
return delegate.getAccessorForOwner(owner);
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#hashCode()
*/
@Override
public int hashCode() {
return Objects.hash(delegate, context);
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#equals(java.lang.Object)
*/
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
UnwrappedMongoPersistentProperty other = (UnwrappedMongoPersistentProperty) obj;
return Objects.equals(delegate, other.delegate) && Objects.equals(context, other.context);
}
}

Loading…
Cancel
Save