潘志宝
16 小时以前 56e254f4c6a3eab1218a4fbea3f60609d209ff95
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/HttpCollector.java
@@ -8,6 +8,8 @@
import com.iailab.framework.common.constant.CommonConstant;
import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdb;
import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsMediaType;
import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdy;
import com.iailab.module.data.channel.http.collector.ihdb.HttpCollectorForIhd;
import com.iailab.module.data.channel.http.entity.HttpApiEntity;
import com.iailab.module.data.channel.http.service.HttpApiService;
@@ -33,6 +35,12 @@
    @Autowired
    private HttpCollectorForAsdb httpCollectorForAsdb;
    @Autowired
    private HttpCollectorForAsMediaType httpCollectorForAsMediaType;
    @Autowired
    private HttpCollectorForAsdy httpCollectorForAsdy;
    public Object getTagValue(String apiId, String tag) {
        HttpApiEntity httpApi = httpApiService.getFromCatch(apiId);
        if (httpApi == null) {
@@ -41,11 +49,23 @@
        List<String> tagNames = new ArrayList<>();
        tagNames.add(tag);
        Map<String, Object> valueMap = new HashMap<String, Object>();
        if (SourceApiEnum.iHyperDB.getCode().equals(httpApi.getCode())) {
            valueMap = httpCollectorForIhd.getLastValues(apiId, tagNames);
        }
        if (SourceApiEnum.ASDB.getCode().equals(httpApi.getCode())) {
            valueMap = httpCollectorForAsdb.getLastValues(apiId, tagNames);
        switch (SourceApiEnum.getEumByCode(httpApi.getCode())) {
            case iHyperDB:
                valueMap = httpCollectorForIhd.getLastValues(apiId, tagNames);
                break;
            case ASDB:
                valueMap = httpCollectorForAsdb.getTagValues(apiId, tagNames);
                break;
            case ASDY:
                valueMap = httpCollectorForAsdy.getTagValues(apiId, tagNames);
                break;
            case ASDC:
            case ASDE:
            case ASDM:
                valueMap = httpCollectorForAsMediaType.getTagValues(apiId, tagNames);
                break;
            default:
                break;
        }
        if (valueMap.get(tag) == null) {
            return CommonConstant.BAD_VALUE;