From 7717bc0d97b5f27ce041f918d31ac0b951f31d57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20D=C3=BCrnberger?= Date: Wed, 17 Jan 2018 09:07:30 +0100 Subject: [PATCH] #35 --- .../lib.request.getRendererState.js | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/lib/requestHandlers/lib.request.getRendererState.js b/lib/requestHandlers/lib.request.getRendererState.js index dea04bb..7ed6896 100644 --- a/lib/requestHandlers/lib.request.getRendererState.js +++ b/lib/requestHandlers/lib.request.getRendererState.js @@ -38,7 +38,11 @@ module.exports = class Request_GetRendererState extends RequestLongPolling { try { - var id = this.getQueryValue("id"); + var id = this.getQueryValue("id"); + var onlyVirtual = this.getQueryValue("onlyVirtual"); + + var getVirtualRenderers = true + var getRealRenderers = onlyVirtual ? false : true if(id) { @@ -59,21 +63,27 @@ module.exports = class Request_GetRendererState extends RequestLongPolling // TODO: only add renderers to list which state has been updated??? of course only when updateId is given?! // TODO: Add all other renderers too? when set? var dataArray = []; - for (var udn of this.managerDisposer.deviceManager.mediaRenderersVirtual.keys()) + if(getVirtualRenderers) { - var mediaRenderer = this.managerDisposer.deviceManager.mediaRenderersVirtual.get(udn); - if(mediaRenderer) + for (var udn of this.managerDisposer.deviceManager.mediaRenderersVirtual.keys()) { - dataArray.push(this.createReturnData(mediaRenderer, mediaRenderer.rendererState)) + var mediaRenderer = this.managerDisposer.deviceManager.mediaRenderersVirtual.get(udn); + if(mediaRenderer) + { + dataArray.push(this.createReturnData(mediaRenderer, mediaRenderer.rendererState)) + } } } - for (var udn of this.managerDisposer.deviceManager.mediaRenderers.keys()) + if(getRealRenderers) { - var mediaRenderer = this.managerDisposer.deviceManager.mediaRenderers.get(udn); - if(mediaRenderer && mediaRenderer.isRaumfeldRenderer()) + for (var udn of this.managerDisposer.deviceManager.mediaRenderers.keys()) { - dataArray.push(this.createReturnData(mediaRenderer, mediaRenderer.rendererState)) + var mediaRenderer = this.managerDisposer.deviceManager.mediaRenderers.get(udn); + if(mediaRenderer && mediaRenderer.isRaumfeldRenderer()) + { + dataArray.push(this.createReturnData(mediaRenderer, mediaRenderer.rendererState)) + } } } _resolve(dataArray);