1
0
mirror of https://github.com/sismics/docs.git synced 2025-12-13 01:36:18 +00:00

#256: list versions of a file (API)

This commit is contained in:
Benjamin Gamard
2019-01-30 21:14:07 +01:00
parent 4469bb7bee
commit 8bdab73ae9
4 changed files with 104 additions and 3 deletions

View File

@@ -190,4 +190,18 @@ public class FileDao {
q.setParameter("documentId", documentId);
return q.getResultList();
}
/**
* Get all files from a version.
*
* @param versionId Version ID
* @return List of files
*/
@SuppressWarnings("unchecked")
public List<File> getByVersionId(String versionId) {
EntityManager em = ThreadLocalContext.get().getEntityManager();
Query q = em.createQuery("select f from File f where f.versionId = :versionId and f.deleteDate is null order by f.order asc");
q.setParameter("versionId", versionId);
return q.getResultList();
}
}

View File

@@ -160,10 +160,13 @@ public class FileUtil {
previousFile.setVersionId(UUID.randomUUID().toString());
}
previousFile.setLatestVersion(false);
// Copy the previous file metadata
file.setOrder(previousFile.getOrder());
file.setVersionId(previousFile.getVersionId());
file.setVersion(previousFile.getVersion() + 1);
// Update the previous file
previousFile.setLatestVersion(false);
fileDao.update(previousFile);
}
}