List of usage examples for org.apache.commons.configuration HierarchicalConfiguration configurationsAt
public List configurationsAt(String key)
From source file:org.topology.bgp_ls.config.nodes.impl.CapabilitiesParser.java
public Capabilities parseConfig(HierarchicalConfiguration hierarchicalConfiguration) throws ConfigurationException { CapabilitiesList caps = new CapabilitiesList(); int as4Number = hierarchicalConfiguration.getInt("LargeAutonomousSystem[@local]", -1); if (as4Number > 0) { if (hierarchicalConfiguration.getBoolean("LargeAutonomousSystem[@optional]", false)) caps.addOptionalCapability(new AutonomousSystem4Capability(as4Number)); else/*from w ww . j a v a2s.co m*/ caps.addRequiredCapability(new AutonomousSystem4Capability(as4Number)); } if (hierarchicalConfiguration.containsKey("RouteRefresh")) { if (hierarchicalConfiguration.getBoolean("RouteRefresh[@optional]", false)) caps.addOptionalCapability(new RouteRefreshCapability()); else caps.addRequiredCapability(new RouteRefreshCapability()); } parseMultiprotocolCapabilities(hierarchicalConfiguration.configurationsAt("MultiProtocol"), caps); parseOutboundRouteFilteringCapabilities( hierarchicalConfiguration.configurationsAt("OutboundRouteFiltering"), caps); return caps; }
From source file:org.topology.bgp_ls.config.nodes.impl.CapabilitiesParser.java
private void parseOutboundRouteFilteringCapabilities(List<HierarchicalConfiguration> capabilityConfigs, CapabilitiesList caps) throws ConfigurationException { for (HierarchicalConfiguration config : capabilityConfigs) { try {//from www . j ava2 s . c o m Map<ORFType, ORFSendReceive> filters = new HashMap<ORFType, ORFSendReceive>(); for (HierarchicalConfiguration entryConfig : config.configurationsAt("Entry")) { filters.put(ORFType.fromString(entryConfig.getString("[@type]")), ORFSendReceive.fromString(entryConfig.getString("[@direction]"))); } if (filters.size() == 0) throw new ConfigurationException("filter type/direction pair required"); OutboundRouteFilteringCapability orfc = new OutboundRouteFilteringCapability( AddressFamily.fromString(config.getString("[@addressFamily]")), SubsequentAddressFamily.fromString(config.getString("[@subsequentAddressFamily]")), filters); if (config.getBoolean("[@optional]", false)) caps.addOptionalCapability(orfc); else caps.addRequiredCapability(orfc); } catch (IllegalArgumentException e) { throw new ConfigurationException(e); } } }
From source file:org.topology.bgp_ls.config.nodes.impl.HttpServerConfigurationParser.java
public ServerConfiguration parseConfig(HierarchicalConfiguration config) throws ConfigurationException { HttpServerConfigurationImpl result = new HttpServerConfigurationImpl(); List<HierarchicalConfiguration> serverConfig = config.configurationsAt("Server"); if (serverConfig.size() == 1) result.setServerConfiguration(super.parseConfig(serverConfig.get(0))); else if (serverConfig.size() > 1) throw new ConfigurationException("duplicate <Server/> element"); else// ww w. j ava 2 s .co m result.setServerConfiguration(new ServerConfigurationImpl()); return result; }
From source file:org.topology.bgp_ls.config.nodes.impl.PeerConfigurationParser.java
public PeerConfiguration parseConfiguration(HierarchicalConfiguration config) throws ConfigurationException { PeerConfigurationImpl peerConfig = new PeerConfigurationImpl(); List<HierarchicalConfiguration> clientConfigs = config.configurationsAt("Client"); List<HierarchicalConfiguration> capabilityConfigs = config.configurationsAt("Capabilities"); try {//from w w w . j a v a 2s . com peerConfig.setPeerName(config.getString("[@name]")); } catch (NoSuchElementException e) { throw new ConfigurationException("peer name not set", e); } if (clientConfigs.size() > 1) { throw new ConfigurationException("duplicate <Client/> element"); } else if (clientConfigs.size() == 0) { throw new ConfigurationException("missing <Client/> element"); } else peerConfig.setClientConfig(clientConfigurationParser.parseConfig(clientConfigs.get(0))); if (capabilityConfigs.size() > 1) { throw new ConfigurationException("duplicate <Capabilities/> element"); } else if (capabilityConfigs.size() == 1) peerConfig.setCapabilities(capabilityParser.parseConfig(capabilityConfigs.get(0))); try { peerConfig.setLocalAS(config.getInt("AutonomousSystem[@local]")); } catch (NoSuchElementException e) { throw new ConfigurationException("local AS number not given", e); } try { peerConfig.setRemoteAS(config.getInt("AutonomousSystem[@remote]")); } catch (NoSuchElementException e) { throw new ConfigurationException("remote AS number not given", e); } try { long identifier = config.getLong("BgpIdentifier[@local]"); if (!isValidBgpIdentifier(identifier)) throw new ConfigurationException("Invalid local BGP identifier: " + identifier); peerConfig.setLocalBgpIdentifier(identifier); } catch (NoSuchElementException e) { throw new ConfigurationException("local BGP identifier not given", e); } try { long identifier; String idString = config.getString("BgpIdentifier[@remote]"); try { InetAddress addr = Inet4Address.getByName(idString); byte[] idArray = addr.getAddress(); identifier = ((long) idArray[3] & 0xFF) | (((long) idArray[2] & 0xFF) << 8) | (((long) idArray[1] & 0xFF) << 16) | (((long) idArray[0] & 0xFF) << 24); } catch (Exception e) { identifier = Long.parseLong(idString); } if (!isValidBgpIdentifier(identifier)) throw new ConfigurationException("Invalid remote BGP identifier: " + identifier); peerConfig.setRemoteBgpIdentifier(identifier); } catch (NoSuchElementException e) { throw new ConfigurationException("remote BGP identifier not given", e); } peerConfig.setHoldTime(config.getInt("Timers[@holdTime]", 0)); peerConfig.setIdleHoldTime(config.getInt("Timers[@idleHoldTime]", 0)); peerConfig.setDelayOpenTime(config.getInt("Timers[@delayOpenTime]", 0)); peerConfig.setConnectRetryTime(config.getInt("Timers[@connectRetryTime]", 0)); peerConfig.setAutomaticStartInterval(config.getInt("Timers[@automaticStartInterval]", 0)); peerConfig.setAllowAutomaticStart(config.getBoolean("Options[@allowAutomaticStart]", true)); peerConfig.setAllowAutomaticStop(config.getBoolean("Options[@allowAutomaticStop]", false)); peerConfig.setDampPeerOscillation(config.getBoolean("Options[@dampPeerOscillation]", false)); peerConfig.setCollisionDetectEstablishedState( config.getBoolean("Options[@collisionDetectEstablishedState]", false)); peerConfig.setDelayOpen(config.getBoolean("Options[@delayOpen]", false)); peerConfig.setPassiveTcpEstablishment(config.getBoolean("Options[@passiveTcpEstablishment]", false)); peerConfig.setHoldTimerDisabled(config.getBoolean("Options[@holdTimerDisabled]", false)); return peerConfig; }
From source file:org.topology.bgp_ls.config.nodes.impl.RoutingFilterConfigurationParser.java
RoutingFilterConfiguration parseConfiguration(HierarchicalConfiguration config) throws ConfigurationException { List<HierarchicalConfiguration> prefixList = config.configurationsAt("Prefixes"); RoutingFilterConfigurationImpl rfc = null; if (prefixList.size() > 1) throw new ConfigurationException("more then one subnode specified"); if (prefixList.size() == 1) rfc = parsePrefixFilter(prefixList.get(0)); if (rfc == null) throw new ConfigurationException("no filter type specified"); rfc.setName(config.getString("[@name]", "")); return rfc;//from www .ja v a 2 s . c o m }
From source file:org.topology.bgp_ls.config.nodes.impl.RoutingFilterConfigurationParser.java
private RoutingFilterConfigurationImpl parsePrefixFilter(HierarchicalConfiguration config) throws ConfigurationException { PrefixRoutingFilterConfigurationImpl prfc = new PrefixRoutingFilterConfigurationImpl(); for (HierarchicalConfiguration subConfig : config.configurationsAt("Prefix")) { String rep = subConfig.getString("[@value]"); if (StringUtils.isBlank(rep)) throw new ConfigurationException("empty prefix specified"); prfc.getFilterPrefixes().add(nlriParser.parseNlri(rep)); }//from w ww . j a va2s. c o m return prfc; }
From source file:org.zaproxy.zap.control.BaseZapAddOnXmlData.java
private Dependencies readDependencies(HierarchicalConfiguration currentNode, String element) { List<HierarchicalConfiguration> dependencies = currentNode.configurationsAt(DEPENDENCIES_ELEMENT); if (dependencies.isEmpty()) { return null; }//from w ww . j a v a2 s. co m if (dependencies.size() > 1) { malformedFile("expected at most one \"dependencies\" element for \"" + element + "\" element, found " + dependencies.size() + "."); } HierarchicalConfiguration node = dependencies.get(0); String javaVersion = node.getString(DEPENDENCIES_JAVA_VERSION_ELEMENT, ""); List<HierarchicalConfiguration> fields = node.configurationsAt(DEPENDENCIES_ADDONS_ALL_ELEMENTS); if (fields.isEmpty()) { return new Dependencies(javaVersion, Collections.<AddOnDep>emptyList()); } List<AddOnDep> addOns = readAddOnDependencies(fields); return new Dependencies(javaVersion, addOns); }
From source file:org.zaproxy.zap.control.BaseZapAddOnXmlData.java
private List<ExtensionWithDeps> readExtensionsWithDeps(HierarchicalConfiguration currentNode) { List<HierarchicalConfiguration> extensions = currentNode.configurationsAt(EXTENSIONS_V1_ALL_ELEMENTS); if (extensions.isEmpty()) { return Collections.emptyList(); }/* www .j av a 2s . c o m*/ List<ExtensionWithDeps> extensionsWithDeps = new ArrayList<>(extensions.size()); for (HierarchicalConfiguration extensionNode : extensions) { String classname = extensionNode.getString(EXTENSION_CLASS_NAME, ""); if (classname.isEmpty()) { malformedFile("a v1 extension has empty \"" + EXTENSION_CLASS_NAME + "\"."); } List<HierarchicalConfiguration> fields = extensionNode.configurationsAt(EXTENSION_DEPENDENCIES); if (fields.isEmpty()) { // Extension v1 without dependencies, handle as normal extension. if (this.extensions.isEmpty()) { // Empty thus Collections.emptyList(), create and use a mutable list. this.extensions = new ArrayList<>(5); } this.extensions.add(classname); continue; } List<AddOnDep> addOnDeps = readAddOnDependencies(fields); AddOnClassnames classnames = readAddOnClassnames(extensionNode); extensionsWithDeps.add(new ExtensionWithDeps(classname, addOnDeps, classnames)); } return extensionsWithDeps; }
From source file:uk.ac.ebi.arrayexpress.components.DbConnectionPool.java
public void initialize() throws Exception { HierarchicalConfiguration connsConf = (HierarchicalConfiguration) getPreferences() .getConfSubset("bs.db.connections"); if (null != connsConf) { List conns = connsConf.configurationsAt("connection"); for (Object conn : conns) { HierarchicalConfiguration connConf = (HierarchicalConfiguration) conn; String connName = connConf.getString("name"); logger.debug("Configuring pool for connection [{}]", connName); try { Class.forName(connConf.getString("driver")); } catch (ClassNotFoundException x) { logger.error("Unable to load driver [{}] for connection [{}]", connConf.getString("driver"), connName);/* w w w . j a v a2s. c om*/ } BoneCPConfig cpConf = new BoneCPConfig(); cpConf.setJdbcUrl(connConf.getString("url")); cpConf.setUsername(connConf.getString("username")); cpConf.setPassword(connConf.getString("password")); cpConf.setConnectionTestStatement(connConf.getString("testStatement")); cpConf.setMinConnectionsPerPartition(connConf.getInt("minConnections")); cpConf.setMaxConnectionsPerPartition(connConf.getInt("maxConnections")); cpConf.setPartitionCount(1); this.configs.put(connName, cpConf); } } }
From source file:uk.ac.ebi.arrayexpress.utils.saxon.search.Configuration.java
private void readConfiguration(HierarchicalConfiguration config) { List indexList = config.configurationsAt("index"); for (Object conf : indexList) { HierarchicalConfiguration indexConfig = (HierarchicalConfiguration) conf; String indexId = indexConfig.getString("[@id]"); this.indicesConfig.put(indexId, indexConfig); }/* w w w .j a va2 s .c om*/ }