List of usage examples for org.apache.commons.configuration2 HierarchicalConfiguration childConfigurationsAt
List<HierarchicalConfiguration<T>> childConfigurationsAt(String key);
From source file:nl.minvenj.pef.stream.LiveCapture.java
private static void testPseudonymizationSettings(final XMLConfiguration config) throws ConfigurationException, IllegalArgumentException, ClassNotFoundException { List<HierarchicalConfiguration<ImmutableNode>> fields = config.configurationsAt("fields.field"); for (HierarchicalConfiguration field : fields) { // Test the name of the field. final String constraint = field.getString("constraint"); final String fieldName = field.getString("name"); final String algorithmName = field.getString("algorithm.name"); if ((fieldName == null) || (constraint == null) || (algorithmName == null)) throw new NoSuchElementException( "Name of the field, constraint and algoritm needs to be set for each field."); // Test the constraint. if (!Constraints.CONSTRAINT_MAP.containsKey(field.getString("constraint"))) { throw new ConfigurationException( field.getString("constraint") + "should be defined in constraints list (Constraints.java)"); }/*from w w w . ja v a 2s.c om*/ // TODO PEF-78: Test if the fieldName matches with the context. // TODO PEF-79: No expression support. // Test if the algorithm is part of the configured algorithms. List<HierarchicalConfiguration> parameters = field.childConfigurationsAt("algorithm.params"); List<AlgorithmParameter> parameterList = new ArrayList<>(); //TODO PEF-81: Create here a specific parameter type. for (HierarchicalConfiguration parameter : parameters) { parameterList.add(new AlgorithmParameter(parameter.getString("name"), parameter.getString("value"), Class.forName(parameter.getString("type")))); } final StringBuilder buffer = new StringBuilder(); if (!testParseValueTransformerConfiguration(TransformerId.valueOf(algorithmName), parameterList, buffer)) { throw new ConfigurationException( "Error in configuration for algorithm " + algorithmName + " " + buffer.toString()); } } }
From source file:nl.minvenj.pef.stream.LiveCapture.java
private static FramePseudonymizer initMetalPseudonymizerWith(final XMLConfiguration config) throws InvalidKeyException, ClassNotFoundException { Processor processor = new Processor(); List<HierarchicalConfiguration<ImmutableNode>> fields = config.configurationsAt("fields.field"); for (HierarchicalConfiguration field : fields) { List<HierarchicalConfiguration> parameters = field.childConfigurationsAt("algorithm.params"); List<AlgorithmParameter> parameterList = new ArrayList<>(); for (HierarchicalConfiguration parameter : parameters) { parameterList.add(new AlgorithmParameter(parameter.getString("name"), parameter.getString("value"), Class.forName(parameter.getString("type")))); }//from ww w .jav a2 s . c om // Add the transformers processor.addTransformer(Constraints.CONSTRAINT_MAP.get(field.getString("constraint")), field.getString("name"), getParseValueTransformer( ParseValueTransformerFactory.TransformerId.valueOf(field.getString("algorithm.name")), parameterList)); logger.info("Packets containing " + field.getString("name") + " will be pseudonymized based on this constraint: " + field.getString("constraint") + ", with this algorithm " + field.getString("algorithm.name")); } // TODO PEF-43: Move and change functionality. if (config.getBoolean("checksum_reset")) { processor.addTransformer(Constraints.IPV4_UDP_DNS, "udpchecksum", new IPv4UDPChecksumCalculator()) .addTransformer(Constraints.IPV6_UDP_DNS, "udpchecksum", new IPv6UDPChecksumCalculator()) .addTransformer(Constraints.IPV4_UDP_DNS, "headerchecksum", new IPv4ChecksumCalculator()) .addTransformer(Constraints.ICMP_DNS, "icmpchecksum", new IPv6UDPChecksumCalculator()); } return new FramePseudonymizer(processor); }
From source file:org.mobicents.media.server.bootstrap.configuration.XmlConfigurationLoader.java
private static void configureController(HierarchicalConfiguration<ImmutableNode> src, MgcpControllerConfiguration dst) { // Basic Controller configuration dst.setAddress(src.getString("address", MgcpControllerConfiguration.ADDRESS)); dst.setPort(src.getInt("port", MgcpControllerConfiguration.PORT)); dst.setPoolSize(src.getInt("poolSize", MgcpControllerConfiguration.POOL_SIZE)); dst.setConfiguration(src.getString("configuration", MgcpControllerConfiguration.CONFIGURATION)); // Iterate over endpoint configuration List<HierarchicalConfiguration<ImmutableNode>> endpoints = src.childConfigurationsAt("endpoints"); for (HierarchicalConfiguration<ImmutableNode> endpoint : endpoints) { MgcpEndpointConfiguration endpointConfig = new MgcpEndpointConfiguration(); endpointConfig.setName(endpoint.getString("[@name]")); endpointConfig.setClassName(endpoint.getString("[@class]")); endpointConfig.setPoolSize(endpoint.getInt("[@poolSize]", MgcpEndpointConfiguration.POOL_SIZE)); dst.addEndpoint(endpointConfig); }//from w w w . j ava 2s . c o m }
From source file:org.mobicents.media.server.bootstrap.configuration.XmlConfigurationLoader.java
private static void configureMedia(HierarchicalConfiguration<ImmutableNode> src, MediaConfiguration dst) { // Basic Media configuration dst.setTimeout(src.getInt("timeout", MediaConfiguration.TIMEOUT)); dst.setLowPort(src.getInt("lowPort", MediaConfiguration.LOW_PORT)); dst.setHighPort(src.getInt("highPort", MediaConfiguration.HIGH_PORT)); dst.setJitterBufferSize(src.getInt("jitterBuffer[@size]", MediaConfiguration.JITTER_BUFFER_SIZE)); // Iterate over codec configuration List<HierarchicalConfiguration<ImmutableNode>> codecs = src.childConfigurationsAt("codecs"); for (HierarchicalConfiguration<ImmutableNode> codec : codecs) { dst.addCodec(codec.getString("[@name]")); }// w w w . jav a2 s .c o m }
From source file:org.restcomm.media.bootstrap.configuration.XmlConfigurationLoader.java
private static void configureController(HierarchicalConfiguration<ImmutableNode> src, MgcpControllerConfiguration dst) { // Basic Controller configuration dst.setAddress(src.getString("address", MgcpControllerConfiguration.ADDRESS)); dst.setPort(src.getInt("port", MgcpControllerConfiguration.PORT)); // Iterate over endpoint configuration List<HierarchicalConfiguration<ImmutableNode>> endpoints = src.childConfigurationsAt("endpoints"); for (HierarchicalConfiguration<ImmutableNode> endpoint : endpoints) { MgcpEndpointConfiguration endpointConfig = new MgcpEndpointConfiguration(); endpointConfig.setName(endpoint.getString("[@name]")); endpointConfig.setRelayType(endpoint.getString("[@relay]", "mixer")); dst.addEndpoint(endpointConfig); }/* w w w. j a v a 2 s .com*/ }
From source file:org.restcomm.media.bootstrap.configuration.XmlConfigurationLoader.java
private static void configureMedia(HierarchicalConfiguration<ImmutableNode> src, MediaConfiguration dst) { // Basic Media configuration dst.setMaxDuration(src.getInt("maxDuration", MediaConfiguration.MAX_DURATION)); dst.setTimeout(src.getInt("timeout", MediaConfiguration.TIMEOUT)); dst.setLowPort(src.getInt("lowPort", MediaConfiguration.LOW_PORT)); dst.setHighPort(src.getInt("highPort", MediaConfiguration.HIGH_PORT)); dst.setJitterBufferSize(src.getInt("jitterBuffer[@size]", MediaConfiguration.JITTER_BUFFER_SIZE)); // Iterate over codec configuration List<HierarchicalConfiguration<ImmutableNode>> codecs = src.childConfigurationsAt("codecs"); for (HierarchicalConfiguration<ImmutableNode> codec : codecs) { dst.addCodec(codec.getString("[@name]")); }/*from w w w . j a v a 2s . c o m*/ }