| | |
| | | |
| | | int index = str.indexOf(StaticData.QUERYABLE); |
| | | while (index > -1) { |
| | | int start = str.indexOf("<Name>", index) + StaticData.I6; |
| | | int end = str.indexOf("</Layer>", index) + StaticData.I8; |
| | | int nameStart = str.indexOf("<Name>", index); |
| | | int nameEnd = str.indexOf("</Name>", nameStart); |
| | | |
| | | String name = ":" + str.substring(start, str.indexOf("</Name>", start)); |
| | | if (!res.getTab().contains(name)) { |
| | | String name = ":" + str.substring(nameStart + StaticData.I6, nameEnd); |
| | | int idx = res.getTab().indexOf(name); |
| | | if (idx > -1) { |
| | | int preIdx = res.getTab().lastIndexOf(",", idx) + 1; |
| | | String prefix = res.getTab().substring(preIdx, idx); |
| | | str = str.substring(0, nameStart + StaticData.I6) + prefix + name + str.substring(nameEnd); |
| | | index = str.indexOf(StaticData.QUERYABLE, end); |
| | | } else { |
| | | end = str.indexOf("<", end); |
| | | str = str.substring(0, index) + str.substring(end); |
| | | index = str.indexOf(StaticData.QUERYABLE, index); |
| | | } else { |
| | | index = str.indexOf(StaticData.QUERYABLE, end); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | String str = req.getQueryString(); |
| | | boolean isLower = str.contains(StaticData.SERVICE); |
| | | String layers = req.getParameter(isLower ? StaticData.LAYERS : StaticData.LAYERS.toUpperCase()); |
| | | String layersKey = isLower ? StaticData.LAYERS : StaticData.LAYERS.toUpperCase(); |
| | | String layers = req.getParameter(layersKey); |
| | | String request = req.getParameter(isLower ? StaticData.REQUEST : StaticData.REQUEST.toUpperCase()); |
| | | if (!StaticData.GET_CAPABILITIES.equals(request) && null != layers) { |
| | | int start = str.indexOf("layers"); |
| | | int start = str.indexOf(layersKey); |
| | | int end = str.indexOf("&", start); |
| | | layers = filterGeoLayers(ue, layers); |
| | | |
| | | str = str.replace(str.substring(start, end > -1 ? end : str.length()), "layers=" + layers); |
| | | str = str.replace(str.substring(start, end > -1 ? end : str.length()), layersKey + "=" + layers); |
| | | } else { |
| | | List<String> tabs = StaticData.ADMIN.equals(ue.getUid()) ? permsService.selectAllTabs() : permsService.selectTabs(ue.getUid()); |
| | | entity.setTab(null == tabs ? "" : StringHelper.join(tabs, ",")); |