Skip to content

Commit a382734

Browse files
Update RecursiveWorkingCopier.java
1 parent 08ca3e1 commit a382734

File tree

1 file changed

+11
-6
lines changed
  • spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/working

1 file changed

+11
-6
lines changed

spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/working/RecursiveWorkingCopier.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424
import org.slf4j.Logger;
2525
import org.slf4j.LoggerFactory;
26+
import org.springframework.beans.BeanUtils;
2627

2728
import software.xdev.spring.data.eclipse.store.exceptions.MergeFailedException;
2829
import software.xdev.spring.data.eclipse.store.repository.IdSetterProvider;
@@ -199,22 +200,23 @@ private <E> void mergeValueOfField(
199200
{
200201
// If the class is part of the java package, some fields are final and not changeable.
201202
// These special cases are properly handled through the EclipseStore Serialization.
202-
// But to prevent our system to through an error when setting a final field in the java package,
203+
// But to prevent our system to throw an error when setting a final field in the java package,
203204
// we use this parameter.
204-
final boolean isPartOfJavaPackage = targetObject.getClass().getPackageName().startsWith("java.");
205+
final boolean targetObjectIsPartOfJavaPackage =
206+
targetObject.getClass().getPackageName().startsWith("java.");
205207
// Something in the containingObject has changed
206208
changedCollector.collectChangedObject(targetObject);
207209
if(DataTypeUtil.isPrimitiveType(field.getType()))
208210
{
209211
if(!Objects.equals(valueOfTargetObject, valueOfSourceObject))
210212
{
211-
fam.writeValueOfField(targetObject, valueOfSourceObject, !isPartOfJavaPackage);
213+
fam.writeValueOfField(targetObject, valueOfSourceObject, !targetObjectIsPartOfJavaPackage);
212214
}
213215
}
214216
else if(DataTypeUtil.isPrimitiveArray(valueOfSourceObject))
215217
{
216218
// Copy complete Array
217-
fam.writeValueOfField(targetObject, valueOfSourceObject, !isPartOfJavaPackage);
219+
fam.writeValueOfField(targetObject, valueOfSourceObject, !targetObjectIsPartOfJavaPackage);
218220
}
219221
else if(DataTypeUtil.isObjectArray(valueOfSourceObject))
220222
{
@@ -225,7 +227,7 @@ else if(DataTypeUtil.isObjectArray(valueOfSourceObject))
225227
alreadyMergedTargets,
226228
changedCollector
227229
);
228-
fam.writeValueOfField(targetObject, newArray, !isPartOfJavaPackage);
230+
fam.writeValueOfField(targetObject, newArray, !targetObjectIsPartOfJavaPackage);
229231
}
230232
else
231233
{
@@ -240,7 +242,10 @@ else if(DataTypeUtil.isObjectArray(valueOfSourceObject))
240242
if(valueOfTargetObject != originalValueObjectOfSource)
241243
{
242244
// If the reference is new, it must be set
243-
fam.writeValueOfField(targetObject, originalValueObjectOfSource, !isPartOfJavaPackage);
245+
fam.writeValueOfField(
246+
targetObject,
247+
originalValueObjectOfSource,
248+
!targetObjectIsPartOfJavaPackage);
244249
}
245250
// Merge after setting reference to avoid endless loops
246251
this.mergeValues(

0 commit comments

Comments
 (0)