1 package org.openecomp.core.zusammen.plugin.collaboration;
 
   3 import com.amdocs.zusammen.datatypes.Id;
 
   4 import com.amdocs.zusammen.datatypes.SessionContext;
 
   5 import org.openecomp.core.zusammen.plugin.dao.types.SynchronizationStateEntity;
 
   6 import org.openecomp.core.zusammen.plugin.dao.types.VersionEntity;
 
   9 import java.util.Optional;
 
  11 public interface VersionPrivateStore {
 
  12   Optional<VersionEntity> get(SessionContext context, Id itemId, Id versionId);
 
  14   Optional<SynchronizationStateEntity> getSynchronizationState(SessionContext context, Id itemId,
 
  17   void create(SessionContext context, Id itemId, VersionEntity version);
 
  19   void update(SessionContext context, Id itemId, VersionEntity version);
 
  21   void update(SessionContext context, Id itemId, VersionEntity version, Date publishTime,
 
  24   void delete(SessionContext context, Id itemId, VersionEntity version);
 
  26   void markAsPublished(SessionContext context, Id itemId, Id versionId, Date publishTime);
 
  28   void commitStagedCreate(SessionContext context, Id itemId, VersionEntity version,
 
  31   void commitStagedUpdate(SessionContext context, Id itemId, VersionEntity version,
 
  34   void commitStagedIgnore(SessionContext context, Id itemId, VersionEntity version,