Add collaboration feature
[sdc.git] / openecomp-be / lib / openecomp-sdc-versioning-lib / openecomp-sdc-versioning-api / src / main / java / org / openecomp / sdc / versioning / dao / VersionDao.java
1 package org.openecomp.sdc.versioning.dao;
2
3 import org.openecomp.sdc.versioning.dao.types.Revision;
4 import org.openecomp.sdc.versioning.dao.types.Version;
5
6 import java.util.List;
7 import java.util.Optional;
8
9 public interface VersionDao {
10   List<Version> list(String itemId);
11
12   void create(String itemId, Version version);
13
14   void update(String itemId, Version version);
15
16   Optional<Version> get(String itemId, Version version);
17
18   void delete(String itemId, Version version);
19
20   void publish(String itemId, Version version, String message);
21
22   void sync(String itemId, Version version);
23
24   void forceSync(String itemId, Version version);
25
26   void revert(String itemId, Version version, String revisionId);
27
28   List<Revision> listRevisions(String itemId, Version version);
29 }