mirror of
https://github.com/DSpace/DSpace.git
synced 2025-10-13 13:03:11 +00:00
When moving metadata, make sure virtual metadata is handled correctly
This commit is contained in:
@@ -755,19 +755,8 @@ public abstract class DSpaceObjectServiceImpl<T extends DSpaceObject> implements
|
|||||||
|
|
||||||
List<MetadataValue> list = getMetadata(dso, schema, element, qualifier);
|
List<MetadataValue> list = getMetadata(dso, schema, element, qualifier);
|
||||||
|
|
||||||
clearMetadata(context, dso, schema, element, qualifier, Item.ANY);
|
removeMetadataValues(context, dso, Arrays.asList(list.get(index)));
|
||||||
|
addAndShiftRightMetadata(context, dso, schema, element, qualifier, lang, value, authority, confidence, index);
|
||||||
int idx = 0;
|
|
||||||
for (MetadataValue rr : list) {
|
|
||||||
if (idx == index) {
|
|
||||||
addMetadata(context, dso, schema, element, qualifier,
|
|
||||||
lang, value, authority, confidence);
|
|
||||||
} else {
|
|
||||||
addMetadata(context, dso, schema, element, qualifier,
|
|
||||||
rr.getLanguage(), rr.getValue(), rr.getAuthority(), rr.getConfidence());
|
|
||||||
}
|
|
||||||
idx++;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user