QueueController has return queue list from yaml config (TbQueueRuleEngineSettings). Tip: queue list consumes UI on device profile details
This commit is contained in:
parent
5465703d2d
commit
a477cad1b7
@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.thingsboard.server.controller;
|
package org.thingsboard.server.controller;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
@ -23,17 +24,23 @@ import org.springframework.web.bind.annotation.ResponseBody;
|
|||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
import org.thingsboard.server.common.data.exception.ThingsboardException;
|
import org.thingsboard.server.common.data.exception.ThingsboardException;
|
||||||
import org.thingsboard.server.common.msg.queue.ServiceType;
|
import org.thingsboard.server.common.msg.queue.ServiceType;
|
||||||
|
import org.thingsboard.server.queue.settings.TbQueueRuleEngineSettings;
|
||||||
|
import org.thingsboard.server.queue.settings.TbRuleEngineQueueConfiguration;
|
||||||
import org.thingsboard.server.queue.util.TbCoreComponent;
|
import org.thingsboard.server.queue.util.TbCoreComponent;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@TbCoreComponent
|
@TbCoreComponent
|
||||||
@RequestMapping("/api")
|
@RequestMapping("/api")
|
||||||
public class QueueController extends BaseController {
|
public class QueueController extends BaseController {
|
||||||
|
|
||||||
|
@Autowired(required = false)
|
||||||
|
private TbQueueRuleEngineSettings ruleEngineSettings;
|
||||||
|
|
||||||
@PreAuthorize("hasAuthority('TENANT_ADMIN')")
|
@PreAuthorize("hasAuthority('TENANT_ADMIN')")
|
||||||
@RequestMapping(value = "/tenant/queues", params = {"serviceType"}, method = RequestMethod.GET)
|
@RequestMapping(value = "/tenant/queues", params = {"serviceType"}, method = RequestMethod.GET)
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
@ -43,7 +50,12 @@ public class QueueController extends BaseController {
|
|||||||
ServiceType type = ServiceType.valueOf(serviceType);
|
ServiceType type = ServiceType.valueOf(serviceType);
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case TB_RULE_ENGINE:
|
case TB_RULE_ENGINE:
|
||||||
return Arrays.asList("Main", "HighPriority", "SequentialByOriginator");
|
if (ruleEngineSettings == null) {
|
||||||
|
return Arrays.asList("Main", "HighPriority", "SequentialByOriginator");
|
||||||
|
}
|
||||||
|
return ruleEngineSettings.getQueues().stream()
|
||||||
|
.map(TbRuleEngineQueueConfiguration::getName)
|
||||||
|
.collect(Collectors.toList());
|
||||||
default:
|
default:
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user