From e7fa041f2879bb9caa45e6fa51afa3b108dd3ef5 Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Mon, 29 Jun 2020 20:50:53 +0200
Subject: [PATCH] OO-4768: use the method in DAO to calculate revisions size

---
 .../olat/restapi/system/VFSStatsWebService.java  | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/src/main/java/org/olat/restapi/system/VFSStatsWebService.java b/src/main/java/org/olat/restapi/system/VFSStatsWebService.java
index 02721e96162..1f0acad61ab 100644
--- a/src/main/java/org/olat/restapi/system/VFSStatsWebService.java
+++ b/src/main/java/org/olat/restapi/system/VFSStatsWebService.java
@@ -19,8 +19,6 @@
  */
 package org.olat.restapi.system;
 
-import java.util.List;
-
 import javax.ws.rs.GET;
 import javax.ws.rs.Produces;
 import javax.ws.rs.core.MediaType;
@@ -28,6 +26,7 @@ import javax.ws.rs.core.Response;
 
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.persistence.DB;
+import org.olat.core.commons.services.vfs.manager.VFSRevisionDAO;
 import org.olat.restapi.system.vo.VFSStatsVO;
 import org.springframework.beans.factory.annotation.Autowired;
 
@@ -42,6 +41,8 @@ public class VFSStatsWebService {
 	
 	@Autowired
 	private DB dbInstance;
+	@Autowired
+	private VFSRevisionDAO vfsRevisionDAO;
 	
 	public VFSStatsWebService() {
 		CoreSpringFactory.autowireObject(this);
@@ -50,19 +51,10 @@ public class VFSStatsWebService {
 	@GET
 	@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
 	public Response getRevisionSizeXML() {
-		StringBuilder sb = new StringBuilder(256);
-		sb.append("select SUM(size) from vfsrevision");
-		
-		List<Long> revisionsSize = dbInstance.getCurrentEntityManager()
-				.createQuery(sb.toString(), Long.class)
-				.getResultList();
-		
-		Long size = revisionsSize == null || revisionsSize.isEmpty() ? Long.valueOf(0) : revisionsSize.get(0);		
-		
+		long size = vfsRevisionDAO.calculateRevisionsSize();
 		dbInstance.commitAndCloseSession();
 		
 		VFSStatsVO vo = new VFSStatsVO(size);
-		
 		return Response.ok(vo).build();
 	}
 }
\ No newline at end of file
-- 
GitLab