Add collaboration feature
[sdc.git] / openecomp-be / lib / openecomp-core-lib / openecomp-zusammen-lib / openecomp-zusammen-plugin / src / main / java / org / openecomp / core / zusammen / plugin / dao / ElementRepository.java
1 package org.openecomp.core.zusammen.plugin.dao;
2
3 import com.amdocs.zusammen.datatypes.Id;
4 import com.amdocs.zusammen.datatypes.SessionContext;
5 import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
6 import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
7
8 import java.util.Map;
9 import java.util.Optional;
10
11 public interface ElementRepository {
12
13   Map<Id,Id> listIds(SessionContext context, ElementEntityContext elementContext);
14
15 /*  void createVersionData(SessionContext context, ElementEntityContext elementContext, VersionDataElement element);*/
16
17   void create(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
18
19   void update(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
20
21   void delete(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
22
23   Optional<ElementEntity> get(SessionContext context, ElementEntityContext elementContext,
24                               ElementEntity element);
25
26   Optional<ElementEntity> getDescriptor(SessionContext context, ElementEntityContext elementContext,
27                                         ElementEntity element);
28
29   void createNamespace(SessionContext context, ElementEntityContext elementContext,
30                        ElementEntity element);
31
32   Optional<Id> getHash(SessionContext context, ElementEntityContext elementEntityContext,
33                ElementEntity element);
34
35
36
37
38 /*  Collection<SynchronizationStateEntity> listSynchronizationStates(SessionContext context,
39                                               ElementEntityContext elementContext);
40
41   void updateSynchronizationState(SessionContext context, ElementEntityContext elementContext,
42               SynchronizationStateEntity elementSyncState);
43
44   void markAsDirty(SessionContext context, ElementEntityContext elementContext,
45                    SynchronizationStateEntity elementSyncState);
46
47   Optional<SynchronizationStateEntity> getSynchronizationState(SessionContext context,
48                                            ElementEntityContext elementContext,
49                                            SynchronizationStateEntity elementSyncState);*/
50 }