Revision 58355
Added by Michele Artini almost 4 years ago
modules/dnet-orgs-database-application/trunk/src/main/java/eu/dnetlib/organizations/model/OpenaireConflictPK.java | ||
---|---|---|
14 | 14 |
|
15 | 15 |
private String id2; |
16 | 16 |
|
17 |
public OpenaireConflictPK() {} |
|
18 |
|
|
19 |
public OpenaireConflictPK(final String id1, final String id2) { |
|
20 |
this.id1 = id1; |
|
21 |
this.id2 = id2; |
|
22 |
} |
|
23 |
|
|
17 | 24 |
public String getId1() { |
18 | 25 |
return id1; |
19 | 26 |
} |
modules/dnet-orgs-database-application/trunk/src/main/java/eu/dnetlib/organizations/utils/RelationType.java | ||
---|---|---|
1 | 1 |
package eu.dnetlib.organizations.utils; |
2 | 2 |
|
3 | 3 |
public enum RelationType { |
4 |
Child, Parent, Related, Other; |
|
5 | 4 |
|
5 |
Child, Parent, Related, Other, Merged_In, Merges; |
|
6 |
|
|
6 | 7 |
public RelationType getInverse() { |
7 | 8 |
switch (this) { |
8 | 9 |
case Child: |
... | ... | |
11 | 12 |
return Child; |
12 | 13 |
case Related: |
13 | 14 |
return Related; |
15 |
case Merged_In: |
|
16 |
return Merges; |
|
17 |
case Merges: |
|
18 |
return Merged_In; |
|
14 | 19 |
default: |
15 | 20 |
return Other; |
16 | 21 |
} |
modules/dnet-orgs-database-application/trunk/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java | ||
---|---|---|
23 | 23 |
import eu.dnetlib.organizations.controller.UserRole; |
24 | 24 |
import eu.dnetlib.organizations.model.Acronym; |
25 | 25 |
import eu.dnetlib.organizations.model.OpenaireConflict; |
26 |
import eu.dnetlib.organizations.model.OpenaireConflictPK; |
|
26 | 27 |
import eu.dnetlib.organizations.model.Organization; |
27 | 28 |
import eu.dnetlib.organizations.model.OtherIdentifier; |
28 | 29 |
import eu.dnetlib.organizations.model.OtherName; |
... | ... | |
112 | 113 |
final Relationship r2 = new Relationship(r.getRelatedOrgId(), orgId, RelationType.valueOf(r.getType()).getInverse().toString()); |
113 | 114 |
relationshipRepository.save(r1); |
114 | 115 |
relationshipRepository.save(r2); |
116 |
|
|
117 |
if (r.getType().equals(RelationType.Merged_In.toString()) || r.getType().equals(RelationType.Merges.toString())) { |
|
118 |
openaireConflictRepository.findById(new OpenaireConflictPK(orgId, r.getRelatedOrgId())).ifPresent(openaireConflictRepository::delete); |
|
119 |
openaireConflictRepository.findById(new OpenaireConflictPK(r.getRelatedOrgId(), orgId)).ifPresent(openaireConflictRepository::delete); |
|
120 |
} |
|
115 | 121 |
}); |
116 | 122 |
} |
117 | 123 |
|
Also available in: Unified diff
merges and merged_in relations