1 package org.openecomp.core.zusammen.plugin.dao;
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;
9 import java.util.Optional;
11 public interface ElementRepository {
13 Map<Id,Id> listIds(SessionContext context, ElementEntityContext elementContext);
15 /* void createVersionData(SessionContext context, ElementEntityContext elementContext, VersionDataElement element);*/
17 void create(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
19 void update(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
21 void delete(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
23 Optional<ElementEntity> get(SessionContext context, ElementEntityContext elementContext,
24 ElementEntity element);
26 Optional<ElementEntity> getDescriptor(SessionContext context, ElementEntityContext elementContext,
27 ElementEntity element);
29 void createNamespace(SessionContext context, ElementEntityContext elementContext,
30 ElementEntity element);
32 Optional<Id> getHash(SessionContext context, ElementEntityContext elementEntityContext,
33 ElementEntity element);
38 /* Collection<SynchronizationStateEntity> listSynchronizationStates(SessionContext context,
39 ElementEntityContext elementContext);
41 void updateSynchronizationState(SessionContext context, ElementEntityContext elementContext,
42 SynchronizationStateEntity elementSyncState);
44 void markAsDirty(SessionContext context, ElementEntityContext elementContext,
45 SynchronizationStateEntity elementSyncState);
47 Optional<SynchronizationStateEntity> getSynchronizationState(SessionContext context,
48 ElementEntityContext elementContext,
49 SynchronizationStateEntity elementSyncState);*/