📄 geonetparams.java
字号:
//=============================================================================//=== Copyright (C) 2001-2007 Food and Agriculture Organization of the//=== United Nations (FAO-UN), United Nations World Food Programme (WFP)//=== and United Nations Environment Programme (UNEP)//===//=== This program is free software; you can redistribute it and/or modify//=== it under the terms of the GNU General Public License as published by//=== the Free Software Foundation; either version 2 of the License, or (at//=== your option) any later version.//===//=== This program is distributed in the hope that it will be useful, but//=== WITHOUT ANY WARRANTY; without even the implied warranty of//=== MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU//=== General Public License for more details.//===//=== You should have received a copy of the GNU General Public License//=== along with this program; if not, write to the Free Software//=== Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA//===//=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2,//=== Rome - Italy. email: geonetwork@osgeo.org//==============================================================================package org.fao.geonet.kernel.harvest.harvester.geonet;import java.util.ArrayList;import jeeves.exceptions.BadInputEx;import jeeves.utils.Util;import org.fao.geonet.kernel.DataManager;import org.fao.geonet.kernel.harvest.harvester.AbstractParams;import org.jdom.Element;//=============================================================================public class GeonetParams extends AbstractParams{ //-------------------------------------------------------------------------- //--- //--- Constructor //--- //-------------------------------------------------------------------------- public GeonetParams(DataManager dm) { super(dm); } //--------------------------------------------------------------------------- //--- //--- Create : called when a new entry must be added. Reads values from the //--- provided entry, providing default values //--- //--------------------------------------------------------------------------- public void create(Element node) throws BadInputEx { super.create(node); Element site = node.getChild("site"); Element policy = node.getChild("groupsCopyPolicy"); Element searches = node.getChild("searches"); host = Util.getParam(site, "host", ""); port = Util.getParam(site, "port", 80); servlet = Util.getParam(site, "servlet", "geonetwork"); checkPort(port); addSearches(searches); addCopyPolicy(policy); } //--------------------------------------------------------------------------- //--- //--- Update : called when an entry has changed and variables must be updated //--- //--------------------------------------------------------------------------- public void update(Element node) throws BadInputEx { super.update(node); Element site = node.getChild("site"); Element searches = node.getChild("searches"); Element policy = node.getChild("groupsCopyPolicy"); host = Util.getParam(site, "host", host); port = Util.getParam(site, "port", port); servlet = Util.getParam(site, "servlet", servlet); checkPort(port); //--- if some search queries are given, we drop the previous ones and //--- set these new ones if (searches != null) addSearches(searches); if (policy != null) addCopyPolicy(policy); } //--------------------------------------------------------------------------- //--- //--- Other API methods //--- //--------------------------------------------------------------------------- public Iterable<Search> getSearches() { return alSearches; } public Iterable<Group> getGroupCopyPolicy() { return alCopyPolicy; } //--------------------------------------------------------------------------- public boolean isSearchEmpty() { return alSearches.isEmpty(); } //--------------------------------------------------------------------------- public GeonetParams copy() { GeonetParams copy = new GeonetParams(dm); copyTo(copy); copy.host = host; copy.port = port; copy.servlet = servlet; for (Search s : alSearches) copy.alSearches.add(s.copy()); for (Group g : alCopyPolicy) copy.alCopyPolicy.add(g.copy()); return copy; } //--------------------------------------------------------------------------- //--- //--- Private methods //--- //--------------------------------------------------------------------------- private void addSearches(Element searches) throws BadInputEx { alSearches.clear(); if (searches == null) return; for (Object o : searches.getChildren("search")) { Element search = (Element) o; alSearches.add(new Search(search)); } } //--------------------------------------------------------------------------- private void addCopyPolicy(Element policy) throws BadInputEx { alCopyPolicy.clear(); if (policy == null) return; for (Object o : policy.getChildren("group")) { Element group = (Element) o; alCopyPolicy.add(new Group(group)); } } //--------------------------------------------------------------------------- //--- //--- Variables //--- //--------------------------------------------------------------------------- public String host; public int port; public String servlet; private ArrayList<Search> alSearches = new ArrayList<Search>(); private ArrayList<Group> alCopyPolicy = new ArrayList<Group>();}//=============================================================================
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -