Revision 44352
Added by Sandro La Bruzzo over 7 years ago
PMFResolverParser.java | ||
---|---|---|
58 | 58 |
parsedObject.setCompletionStatus(UtilityParser.getSingleValue(ap, vn, "//oaf:completionStatus")); |
59 | 59 |
|
60 | 60 |
List<Node> relatedIdentifiers = |
61 |
UtilityParser.getTextValuesWithAttributes(ap, vn, "//oaf:relatedIdentifier", Arrays.asList("type", "pid", "pidType")); |
|
61 |
UtilityParser.getTextValuesWithAttributes(ap, vn, "//oaf:relatedIdentifier", |
|
62 |
Arrays.asList("relatedIdentifierType", "relationType", "entityType")); |
|
62 | 63 |
|
63 | 64 |
if (relatedIdentifiers != null && relatedIdentifiers.size() > 0) { |
64 | 65 |
final List<ObjectRelation> relations = new ArrayList<>(); |
65 | 66 |
relatedIdentifiers.forEach(relation -> { |
66 |
final String currentPid = relation.getAttributes().get("pid");
|
|
67 |
final String currentPidType = relation.getAttributes().get("pidType");
|
|
68 |
final String currentType = relation.getAttributes().get("type");
|
|
67 |
final String currentPid = relation.getTextValue();
|
|
68 |
final String currentPidType = relation.getAttributes().get("relatedIdentifierType");
|
|
69 |
final String currentType = relation.getAttributes().get("entityType");
|
|
69 | 70 |
final ObjectRelation currenRelation = new ObjectRelation(); |
70 | 71 |
currenRelation.setTargetPID(new PID(currentPid, currentPidType)); |
71 | 72 |
currenRelation.setCompletionStatus(CompletionStatus.incomplete.toString()); |
72 | 73 |
currenRelation.setSourcePid(parsedObject.getPid()); |
74 |
currenRelation.setRelationSemantics(relation.getAttributes().get("relationType")); |
|
73 | 75 |
currenRelation.setTargetType(ObjectType.valueOf(currentType)); |
74 | 76 |
if (parsedObject.getDatasourceProvenance() != null && parsedObject.getDatasourceProvenance().size() > 0) { |
75 | 77 |
final ObjectProvenance provenance = parsedObject.getDatasourceProvenance().get(0); |
Also available in: Unified diff
fixed bug