private Map<String, GroupResCtrlEntity> getGroupResCtrlInfos(StringBuilder strBuff) {
        // http://127.0.0.1:8080/webapi.htm?method=admin_query_group_resctrl_info
        JsonObject jsonRes = qryDataFromMaster(
                "admin_query_group_resctrl_info", new HashMap<>(), strBuff);
        // check return result
        if (!jsonRes.get("result").getAsBoolean()) {
            logger.info(strBuff.append("Query group resource control configurations info failure:")
                    .append(jsonRes.get("result").getAsString()).toString());
            strBuff.delete(0, strBuff.length());
            return null;
        }
        Map<String, GroupResCtrlEntity> groupResCtrlMap = new HashMap<>();
        JsonArray jsonGroupResCtrlList = jsonRes.get("data").getAsJsonArray();
        for (int i = 0; i < jsonGroupResCtrlList.size(); i++) {
            JsonObject jsonItem = jsonGroupResCtrlList.get(i).getAsJsonObject();
            if (jsonItem == null) {
                continue;
            }
            try {
                // get base information
                BaseEntity baseEntity = getBaseEntityInfo(jsonItem);
                // get group resource control configurations
                String groupName = jsonItem.get("groupName").getAsString();
                boolean resCheckEnable = jsonItem.get("resCheckEnable").getAsBoolean();
                int alwdBCRate = jsonItem.get("alwdBrokerClientRate").getAsInt();
                int qryPriorityId = jsonItem.get("qryPriorityId").getAsInt();
                boolean flowCtrlEnable = jsonItem.get("flowCtrlEnable").getAsBoolean();
                int flowCtrlRuleCount = jsonItem.get("flowCtrlRuleCount").getAsInt();
                JsonArray flowCtrlInfoArray = jsonItem.get("flowCtrlInfo").getAsJsonArray();
                String flowCtrlInfoStr = flowCtrlInfoArray.toString();
                EnableStatus resChkStatus =
                        resCheckEnable ? EnableStatus.STATUS_ENABLE : EnableStatus.STATUS_DISABLE;
                EnableStatus flowCtrlStatus =
                        flowCtrlEnable ? EnableStatus.STATUS_ENABLE : EnableStatus.STATUS_DISABLE;
                // build group resource control entity
                GroupResCtrlEntity groupResCtrlEntity =
                        new GroupResCtrlEntity(baseEntity, groupName);
                groupResCtrlEntity.updModifyInfo(baseEntity.getDataVerId(),
                        resChkStatus, alwdBCRate, qryPriorityId,
                        flowCtrlStatus, flowCtrlRuleCount, flowCtrlInfoStr);
                groupResCtrlMap.put(groupResCtrlEntity.getGroupName(), groupResCtrlEntity);
            } catch (Throwable e) {
                logger.error(strBuff.append("Parse group resource control configurations(")
                        .append(jsonItem).append(") throw exception ").append(e).toString());
                strBuff.delete(0, strBuff.length());
                throw e;
            }
        }
        return groupResCtrlMap;
    }
Query group resource control configurations

@param strBuff  the string buffer
@return         the query result, null if query failure
inlong-tubemq/tubemq-server/src/main/java/org/apache/inlong/tubemq/server/tools/cli/CliMetaDataBRU.java