📄 weblayerinfoutil.java
字号:
package com.esri.solutions.jitk.common.web.layer;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import com.esri.adf.web.aims.data.AIMSMapResource;
import com.esri.adf.web.data.GISResource;
import com.esri.adf.web.data.WebLayerInfo;
import com.esri.solutions.jitk.common.agslocal.AgsLocalContextCreator;
@SuppressWarnings("unchecked")
public class WebLayerInfoUtil {
private static final Logger logger = LogManager.getLogger(AgsLocalContextCreator.class);
public static List<WebLayerInfo> getWebLayerInfoList(List<WebLayerInfo> layerList, GISResource gisResource, String webLayerName){
List<WebLayerInfo> list = null;
WebLayerInfo webLayerInfo = null;
if (layerList != null && layerList.size() > 0) {
if (gisResource instanceof AIMSMapResource) {
webLayerInfo = WebLayerInfoUtil.getWebLayerInfo(layerList, gisResource, webLayerName);
}
else {
int iLayerId = -1;
try {
iLayerId = Integer.parseInt(webLayerName);
}
catch (Exception ex) {
logger.error("Could not convert layer name to layer index", ex);
}
if (iLayerId > -1) {
webLayerInfo = WebLayerInfoUtil.getWebLayerInfo(layerList, gisResource, iLayerId);
}
}
if (webLayerInfo != null) {
list = new ArrayList<WebLayerInfo>(1);
list.add(webLayerInfo);
}
else {
logger.warn("WebLayerInfo not found");
}
}
else {
logger.warn("Empty or null WebLayerInfo list encountered, ignoring");
}
return list;
}
public static WebLayerInfo getWebLayerInfo(List<WebLayerInfo> layerList, GISResource gisResource, String webLayerName){
WebLayerInfo webLayerInfo = null;
if (layerList != null && layerList.size() > 0) {
int index = 0;
for(Iterator iter = layerList.iterator(); iter.hasNext();index++) {
WebLayerInfo layer = (WebLayerInfo)iter.next();
if(layer.getName().equalsIgnoreCase(webLayerName)) {
webLayerInfo = layer;
break;
}
}
}
else {
logger.warn("Empty or null WebLayerInfo list encountered, ignoring");
}
return webLayerInfo;
}
public static WebLayerInfo getWebLayerInfo(List layerList, GISResource resource, int layerId) {
WebLayerInfo wli = null;
if (resource == null || layerList == null || layerList.isEmpty()) {
logger.warn("Empty or null WebLayerInfo list or resource encountered, ignoring");
}
else {
Object obj = null;
for (Iterator iter = layerList.iterator(); iter.hasNext(); ) {
obj = iter.next();
if (obj instanceof WebLayerInfo){
WebLayerInfo twli = (WebLayerInfo)obj;
// If no match, return null, not the last WebLayerInfo
if (layerId == twli.getId() && resource == twli.getResource()) {
wli = twli;
break;
}
}
}
}
return wli;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -