re base code
[sdc.git] / openecomp-be / lib / openecomp-core-lib / openecomp-zusammen-lib / openecomp-zusammen-core / src / main / java / org / openecomp / core / zusammen / db / ZusammenConnector.java
1 package org.openecomp.core.zusammen.db;
2
3 import com.amdocs.zusammen.adaptor.inbound.api.types.item.*;
4 import com.amdocs.zusammen.commons.health.data.HealthInfo;
5 import com.amdocs.zusammen.datatypes.Id;
6 import com.amdocs.zusammen.datatypes.SessionContext;
7 import com.amdocs.zusammen.datatypes.item.*;
8 import com.amdocs.zusammen.datatypes.itemversion.ItemVersionRevisions;
9 import com.amdocs.zusammen.datatypes.itemversion.Tag;
10
11 import java.util.Collection;
12
13 public interface ZusammenConnector {
14
15   Collection<HealthInfo> checkHealth(SessionContext sessionContext);
16
17   String getVersion(SessionContext sessionContext);
18
19   Collection<Item> listItems(SessionContext context);
20
21   Item getItem(SessionContext context, Id itemId);
22
23   Id createItem(SessionContext context, Info info);
24
25   void deleteItem(SessionContext context, Id itemId);
26
27   void updateItem(SessionContext context, Id itemId, Info info);
28
29
30   Collection<ItemVersion> listPublicVersions(SessionContext context, Id itemId);
31
32   ItemVersion getPublicVersion(SessionContext context, Id itemId, Id versionId);
33
34   Id createVersion(SessionContext context, Id itemId, Id baseVersionId,
35                    ItemVersionData itemVersionData);
36
37   void updateVersion(SessionContext context, Id itemId, Id versionId,
38                      ItemVersionData itemVersionData);
39
40   ItemVersion getVersion(SessionContext context, Id itemId, Id versionId);
41
42   ItemVersionStatus getVersionStatus(SessionContext context, Id itemId, Id versionId);
43
44   void tagVersion(SessionContext context, Id itemId, Id versionId, Tag tag);
45
46   void resetVersionRevision(SessionContext context, Id itemId, Id versionId, Id revisionId);
47
48   void revertVersionRevision(SessionContext context, Id itemId, Id versionId, Id revisionId);
49
50   ItemVersionRevisions listVersionRevisions(SessionContext context, Id itemId, Id versionId);
51
52   void publishVersion(SessionContext context, Id itemId, Id versionId, String message);
53
54   void syncVersion(SessionContext context, Id itemId, Id versionId);
55
56   void forceSyncVersion(SessionContext context, Id itemId, Id versionId);
57
58   void cleanVersion(SessionContext context, Id itemId, Id versionId);
59
60   ItemVersionConflict getVersionConflict(SessionContext context, Id itemId, Id versionId);
61
62
63   Collection<ElementInfo> listElements(SessionContext context, ElementContext elementContext,
64                                        Id parentElementId);
65
66   ElementInfo getElementInfo(SessionContext context, ElementContext elementContext, Id elementId);
67
68   Element getElement(SessionContext context, ElementContext elementContext, Id elementId);
69
70   ElementConflict getElementConflict(SessionContext context, ElementContext elementContext,
71                                      Id elementId);
72
73   Element saveElement(SessionContext context, ElementContext elementContext,
74                       ZusammenElement element, String message);
75
76   void resolveElementConflict(SessionContext context, ElementContext elementContext,
77                               ZusammenElement element, Resolution resolution);
78
79   void resetVersionHistory(SessionContext context, Id itemId, Id versionId, String changeRef);
80 }