⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 extendedaimstocfunctionality.java

📁 esri的ArcGIS Server超级学习模板程序(for java)
💻 JAVA
字号:
/*
 * AIMSTocFunctionality2.java
 *
 * Created on October 22, 2007, 12:47 PM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.esri.solutions.jitk.common.contextmenus;

import com.esri.adf.web.aims.ADFAIMSException;
import com.esri.adf.web.aims.data.AIMSMapFunctionality;
import com.esri.adf.web.aims.data.AIMSMapResource;
import com.esri.adf.web.aims.data.AIMSTocFunctionality;
import com.esri.adf.web.data.GISResource;
import com.esri.adf.web.data.MapFunctionality;
import com.esri.adf.web.data.SimpleTocNodeContent;
import com.esri.adf.web.data.TocNode;
import com.esri.adf.web.data.WebSession;
import com.esri.adf.web.util.WebUtil;
import com.esri.aims.mtier.model.map.Layers;
import com.esri.aims.mtier.model.map.Map;
import com.esri.aims.mtier.model.map.layer.FeatureLayer;
import com.esri.aims.mtier.model.map.layer.ImageLayer;
import com.esri.aims.mtier.model.map.layer.Layer;
import com.esri.aims.mtier.model.map.layer.toc.TOCClass;
import com.esri.aims.mtier.model.map.layer.toc.TOCGroup;
import java.util.ArrayList;
import java.util.List;


public class ExtendedAIMSTocFunctionality  extends AIMSTocFunctionality {

  public void createTocHierarchy(TocNode parentNode) {
    try {
      if (isShowAllLayers()) {
        List<String> list = null;
        if (getHideLayers() != null && getHideLayers().trim().length() > 0) {
          String[] token = getHideLayers().split(",");
          list = new ArrayList<String>(token.length);
          for (int i = 0; i < token.length; i++) {
            list.add(token[i]);
          }
        }
        Map map = ((AIMSMapFunctionality) this.aimsResource.getFunctionality(MapFunctionality.FUNCTIONALITY_NAME)).getMap();
        Layers layers = map.getLayers();
        FeatureLayer fLayer = null;
        ImageLayer iLayer = null;
        @SuppressWarnings("unchecked")
        ArrayList groups = null;
        TOCGroup group = null;
        @SuppressWarnings("unchecked")
        ArrayList tocClasses = null;
        TOCClass tocClass = null;
        String text = null;
        int layerCount = layers.getCount();
        WebSession wSession = aimsResource.getWebContext().getWebSession();
        SimpleTocNodeContent patchContent;
        for (int i = layerCount - 1; i >= 0; --i) {
          Layer layer = layers.item(i);
          if (list != null && list.contains(layer.getName())) {
            continue;
          }
          TocNode layerNode = parentNode.addChild(new ExtendedAIMSTocLayerContent(this, layer));
          if (isShowSwatches()) {
            if (layer instanceof FeatureLayer) {
              fLayer = (FeatureLayer) layer;
              if ((groups = fLayer.getTOCGroups()) != null) {
                for (int j = groups.size() - 1; j >= 0; --j) {
                  group = (TOCGroup) groups.get(j);
                  if ((text = group.getHeading()) != null) {
                    layerNode.addChild(new SimpleTocNodeContent(text));
                  }
                  tocClasses = group.getTOCClasses();
                  for (int k = 0; k < tocClasses.size(); k++) {
                    tocClass = (TOCClass) tocClasses.get(k);
                    patchContent = new SimpleTocNodeContent(tocClass.getLabel());
                    patchContent.setImageUrl(WebUtil.getMimeURL(WebUtil.getMimeId(patchContent), tocClass.getSwatch(), wSession));
                    layerNode.addChild(patchContent);
                  }
                }
              }
            } else if (layer instanceof ImageLayer) {
              iLayer = (ImageLayer) layer;
              if ((groups = iLayer.getTOCGroups()) != null) {
                for (int j = 0; j < groups.size(); j++) {
                  group = (TOCGroup) groups.get(j);
                  if ((text = group.getHeading()) != null) {
                    parentNode.addChild(new SimpleTocNodeContent(text));
                  }
                  tocClasses = group.getTOCClasses();
                  for (int k = 0; k < tocClasses.size(); k++) {
                    tocClass = (TOCClass) tocClasses.get(k);
                    patchContent = new SimpleTocNodeContent(tocClass.getLabel());
                    patchContent.setImageUrl(WebUtil.getMimeURL(WebUtil.getMimeId(patchContent), tocClass.getSwatch(), wSession));
                    parentNode.addChild(patchContent);
                  }
                }
              }
            }
          }
        }
      }
    } catch (Exception e) {
      throw new ADFAIMSException("Cannot create toc nodes.", e);
    }
  }
  
}

⌨️ 快捷键说明

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