wfsqueryfunctionality.java

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

JAVA
78
字号
package com.esri.solutions.jitk.web.wfs.data.query;

import java.io.Serializable;
import java.util.List;

import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;

import com.esri.adf.web.data.GISResource;
import com.esri.adf.web.data.query.IdentifyCriteria;
import com.esri.adf.web.data.query.PredefinedQueryCriteria;
import com.esri.adf.web.data.query.QueryFunctionality;
import com.esri.adf.web.data.query.TextCriteria;
import com.esri.solutions.jitk.web.wfs.data.WFSMapResource;

public class WFSQueryFunctionality extends QueryFunctionality implements Serializable  {
	private static final long serialVersionUID = -1472238236136829307L;
	private static final Logger _logger = LogManager.getLogger(WFSQueryFunctionality.class);
	protected WFSMapResource _wfsResource = null;
	protected int _maxFeaturesToQuery = 500;
	
	public WFSQueryFunctionality() {
		_logger.debug("WFS Query Criteria created");
		
		this.addFindCriteriaHandler(TextCriteria.CRITERIA_TYPE, new WFSTextCriteriaHandler());
		this.addFindCriteriaHandler(IdentifyCriteria.CRITERIA_TYPE, new WFSIdentifyCriteriaHandler());
		this.addFindCriteriaHandler(PredefinedQueryCriteria.CRITERIA_TYPE, new WFSPredefinedQueryCriteriaHandler());
	}
	
	@Override
	@SuppressWarnings("unchecked")
	public List getQueryLayers() {
		_logger.debug("ADF requesting query layers");
		List layers = null;
		
		if (_wfsResource != null) {
			layers = _wfsResource.getLayers();
		}
		else {
			_logger.error("_wfsResource null, no layers returned to ADF");
		}
		
		return layers;
	}
	
	public void destroyFunctionality() {
		_logger.debug("Destroying functionality");
		_wfsResource = null;
	}

	public GISResource getResource() {
		return _wfsResource;
	}
	
	public void setMaximumFeatures(int count) {
		_maxFeaturesToQuery = count;
	}
	
	public int getMaximumFeatures() {
		return _maxFeaturesToQuery;
	}

	public void initFunctionality(GISResource resource) {
		_wfsResource = null;
		_logger.debug("Initializing Query functionality with GISResource");
		
		if (resource != null) {
			if (resource instanceof WFSMapResource) {
				_wfsResource = (WFSMapResource) resource;
			} else {
				_logger.error("Initialized with non-WfsMapResource");
			}
		} else {
			_logger.error("Initialized with null GISResource");
		}		
	}
}

⌨️ 快捷键说明

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