selectedlayerstringparser.java

来自「esri的ArcGIS Server超级学习模板程序(for java)」· Java 代码 · 共 78 行

JAVA
78
字号
package com.esri.solutions.jitk.web.tasks.query.querybuilder;

import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;

import com.esri.adf.web.data.GISResource;
import com.esri.adf.web.data.WebContext;
import com.esri.solutions.jitk.web.wfs.data.WFSMapResource;

public class SelectedLayerStringParser {
	protected String _layerString;
	protected char _delimeter;
	protected WebContext _context;
	protected String _resourceName;
	protected String _resourceId;
	protected String _layerName;
	protected LinkedHashMap<String, String> _layerList;
	
	public SelectedLayerStringParser(String qbLayerString, char delimeter, WebContext context) {
		_layerString  = qbLayerString;
		_delimeter = delimeter;
		_context = context;
		
		parseString();
		
		String[] layerInf = _layerString.split("\\" + _delimeter);
		_resourceId = layerInf[0];
	}
	
	public String getSelectedResourceName() {
		return _resourceName;
	}
	
	public String getSelectedResourceId() {
		return _resourceId;
	}
	
	public String getSelectedLayerName() {
		return _layerName;
	}
	
	private void parseString(){
		_layerList = QueryBuilderTaskUtil.getLayerList(_context);
		
		if(_layerList != null) {
			
			String resAndLayerName = _layerList.get(_layerString);
			String[] layerInf = resAndLayerName.split("\\" + ".");
			_resourceName = layerInf[0];
			_layerName = layerInf[1];
	
		}
	}
	
	public GISResource getResource(WebContext webContext) {
		
		String resourceName = getSelectedResourceName();
		Map<String, GISResource> resources = webContext.getResources();
		GISResource resource = null;
		
		for(Iterator<GISResource> it = resources.values().iterator(); it.hasNext();) {
			GISResource res = it.next();
			
			if (res.getAlias().equals(resourceName)) {
				resource = res;
				break;
			}
		}
		
		return resource;
	}
	
	public boolean isWfsResource(WebContext webContext) {	
		return getResource(webContext) instanceof WFSMapResource;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?