1 package org.openecomp.sdcrests.conflict.rest.services;
3 import org.openecomp.conflicts.types.Conflict;
4 import org.openecomp.conflicts.types.ConflictResolution;
5 import org.openecomp.conflicts.types.ItemVersionConflict;
6 import org.openecomp.sdc.conflicts.ConflictsManager;
7 import org.openecomp.sdc.conflicts.ConflictsManagerFactory;
8 import org.openecomp.sdc.versioning.dao.types.Version;
9 import org.openecomp.sdcrests.conflict.rest.Conflicts;
10 import org.openecomp.sdcrests.conflict.rest.mapping.MapConflictToDto;
11 import org.openecomp.sdcrests.conflict.rest.mapping.MapDtoToConflictResolution;
12 import org.openecomp.sdcrests.conflict.rest.mapping.MapItemVersionConflictToDto;
13 import org.openecomp.sdcrests.conflict.types.ConflictDto;
14 import org.openecomp.sdcrests.conflict.types.ConflictResolutionDto;
15 import org.openecomp.sdcrests.conflict.types.ItemVersionConflictDto;
16 import org.springframework.context.annotation.Scope;
17 import org.springframework.stereotype.Service;
19 import javax.inject.Named;
20 import javax.ws.rs.core.Response;
24 @Scope(value = "prototype")
25 public class ConflictsImpl implements Conflicts {
28 public Response getConflict(String itemId, String versionId, String user) {
30 ConflictsManager conflictsManager = ConflictsManagerFactory.getInstance().createInterface();
31 ItemVersionConflict itemVersionConflict = conflictsManager.getConflict
32 (itemId, new Version(versionId));
33 ItemVersionConflictDto result = (new MapItemVersionConflictToDto()).applyMapping
34 (itemVersionConflict, ItemVersionConflictDto.class);
35 return Response.ok(result).build();
39 public Response getConflict(String itemId, String versionId, String conflictId, String user) {
40 ConflictsManager conflictsManager = ConflictsManagerFactory.getInstance().createInterface();
41 Conflict conflict = conflictsManager.getConflict(itemId, new Version(versionId), conflictId);
43 ConflictDto result = new MapConflictToDto().applyMapping(conflict, ConflictDto.class);
45 return Response.ok(result).build();
50 public Response resolveConflict(ConflictResolutionDto conflictResolution, String itemId,
51 String versionId, String conflictId, String user) {
52 ConflictsManager conflictsManager = ConflictsManagerFactory.getInstance().createInterface();
54 Version version = new Version(versionId);
55 conflictsManager.resolveConflict(itemId, version, conflictId,
56 new MapDtoToConflictResolution()
57 .applyMapping(conflictResolution, ConflictResolution.class));
58 conflictsManager.finalizeMerge(itemId, version);
60 return Response.ok().build();