From a64a9c5940609850ec3414f968e90ee7bd3c5023 Mon Sep 17 00:00:00 2001 From: Felipe Cecagno Date: Wed, 3 Feb 2016 19:09:16 -0200 Subject: [PATCH] remove unnecessary logs; order getRecordings response by recordId, and metadata by meta key --- .../web/controllers/ApiController.groovy | 2 +- .../api/RecordingServiceHelperImp.groovy | 1 - .../java/org/bigbluebutton/api/MeetingService.java | 13 +++++-------- .../org/bigbluebutton/api/RecordingService.java | 4 ++-- .../web-app/WEB-INF/freemarker/get-recordings.ftl | 4 ++-- 5 files changed, 10 insertions(+), 14 deletions(-) diff --git a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy index 7971c5421dea..a13a1e915dcc 100755 --- a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy +++ b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy @@ -1420,7 +1420,7 @@ class ApiController { // Everything is good so far. Translate the external meeting ids to an internal meeting ids. ArrayList internalMeetingIds = paramsProcessorUtil.convertToInternalMeetingId(externalMeetingIds); - HashMap recs = meetingService.getRecordings(internalMeetingIds); + Map recs = meetingService.getRecordings(internalMeetingIds); recs = meetingService.filterRecordingsByMetadata(recs, ParamsProcessorUtil.processMetaParam(params)); if (recs.isEmpty()) { diff --git a/bigbluebutton-web/src/groovy/org/bigbluebutton/api/RecordingServiceHelperImp.groovy b/bigbluebutton-web/src/groovy/org/bigbluebutton/api/RecordingServiceHelperImp.groovy index 5042ae7de73c..5c576d24b515 100755 --- a/bigbluebutton-web/src/groovy/org/bigbluebutton/api/RecordingServiceHelperImp.groovy +++ b/bigbluebutton-web/src/groovy/org/bigbluebutton/api/RecordingServiceHelperImp.groovy @@ -125,7 +125,6 @@ public class RecordingServiceHelperImp implements RecordingServiceHelper { r.setDownloadSize(rec.download.size.text()); Map meta = new HashMap(); rec.meta.children().each { anode -> - log.debug("metadata: "+anode.name()+" "+anode.text()) meta.put(anode.name().toString(), anode.text().toString()); } r.setMetadata(meta); diff --git a/bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java b/bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java index eea7b728e06b..5fc63d57ec1e 100755 --- a/bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java +++ b/bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java @@ -28,6 +28,7 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.TreeMap; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; @@ -352,13 +353,9 @@ public Meeting getNotEndedMeetingWithId(String meetingId) { return null; } - public HashMap getRecordings(ArrayList idList) { + public Map getRecordings(ArrayList idList) { //TODO: this method shouldn't be used - log.debug("starting to fetch recordings"); - ArrayList recsList = recordingService.getRecordings(idList); - log.debug("got all recordings, without ordering"); - HashMap recs= reorderRecordings(recsList); - log.debug("returning ordered recordings"); + Map recs= reorderRecordings(recordingService.getRecordings(idList)); return recs; } @@ -366,8 +363,8 @@ public Map filterRecordingsByMetadata(Map return recordingService.filterRecordingsByMetadata(recordings, metadataFilters); } - public HashMap reorderRecordings(ArrayList olds){ - HashMap map= new HashMap(); + public Map reorderRecordings(ArrayList olds){ + Map map= new TreeMap(); for (Recording r:olds) { if (!map.containsKey(r.getId())) { Map meta= r.getMetadata(); diff --git a/bigbluebutton-web/src/java/org/bigbluebutton/api/RecordingService.java b/bigbluebutton-web/src/java/org/bigbluebutton/api/RecordingService.java index 15fad0201cb1..0f96574c8d7e 100755 --- a/bigbluebutton-web/src/java/org/bigbluebutton/api/RecordingService.java +++ b/bigbluebutton-web/src/java/org/bigbluebutton/api/RecordingService.java @@ -28,12 +28,12 @@ import java.nio.file.Path; import java.util.ArrayList; import java.util.Collection; -import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.TreeMap; import org.bigbluebutton.api.domain.Recording; import org.slf4j.Logger; @@ -115,7 +115,7 @@ public boolean recordingMatchesMetadata(Recording recording, Map } public Map filterRecordingsByMetadata(Map recordings, Map metadataFilters) { - Map resultRecordings = new HashMap(); + Map resultRecordings = new TreeMap(); for (Map.Entry entry : recordings.entrySet()) { if (recordingMatchesMetadata(entry.getValue(), metadataFilters)) resultRecordings.put(entry.getKey(), entry.getValue()); diff --git a/bigbluebutton-web/web-app/WEB-INF/freemarker/get-recordings.ftl b/bigbluebutton-web/web-app/WEB-INF/freemarker/get-recordings.ftl index 705c99c548c5..5a5b9f32651b 100644 --- a/bigbluebutton-web/web-app/WEB-INF/freemarker/get-recordings.ftl +++ b/bigbluebutton-web/web-app/WEB-INF/freemarker/get-recordings.ftl @@ -15,7 +15,7 @@ ${r.getEndTime()} <#assign m = r.getMetadata()> - <#list m?keys as prop> + <#list m?keys?sort as prop> <${prop}> @@ -33,4 +33,4 @@ - \ No newline at end of file +