private void adapterIncludeDirectory(ServiceSettings serviceSettings, String dir) { List files = fileResolver.getFiles(dir); for (Object file : files) { String src = (String) file; adapterIncludeFile(serviceSettings, src); } }
private void constraintIncludeFile(String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for <security-constraints> wrapping more than one definition Node servicesNode = selectSingleNode(doc, SECURITY_CONSTRAINTS_ELEMENT); if (servicesNode != null) { allowedChildElements(servicesNode, SECURITY_CONSTRAINTS_CHILDREN); NodeList constraints = selectNodeList(servicesNode, SECURITY_CONSTRAINT_ELEMENT); for (int a = 0; a < constraints.getLength(); a++) { Node constraint = constraints.item(a); securityConstraint(constraint, false); } fileResolver.popIncludedFile(); } else // Check for single <security-constraint> { Node constraint = selectSingleNode(doc, "/" + SECURITY_CONSTRAINT_ELEMENT); if (constraint != null) { securityConstraint(constraint, false); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{CONSTRAINT_INCLUDE_ELEMENT, src, SECURITY_CONSTRAINTS_ELEMENT, SECURITY_CONSTRAINT_ELEMENT}); throw ex; } } }
public void parse(String path, ConfigurationFileResolver fileResolver, ServicesConfiguration config) { this.config = config; this.fileResolver = fileResolver; Document doc = loadDocument(path, fileResolver.getConfigurationFile(path)); initializeExpressionQuery(); parseTopLevelConfig(doc); }
private void serviceIncludeFile(String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple services defined in a <services> tag Node servicesNode = selectSingleNode(doc, SERVICES_ELEMENT); if (servicesNode != null) { allowedChildElements(servicesNode, SERVICES_CHILDREN); NodeList services = selectNodeList(servicesNode, SERVICE_ELEMENT); for (int a = 0; a < services.getLength(); a++) { Node service = services.item(a); service(service); } fileResolver.popIncludedFile(); } else // Check for single <service> definition. { Node service = selectSingleNode(doc, "/" + SERVICE_ELEMENT); if (service != null) { service(service); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{SERVICE_INCLUDE_ELEMENT, src, SERVICES_ELEMENT, SERVICE_ELEMENT}); throw ex; } } }
/** * Parse the configurations in the configuration file. * * @param path the configuration file path * @param fileResolver the ConfigurationFileResolver object * @param config the ServicesConfiguration object **/ public void parse(String path, ConfigurationFileResolver fileResolver, ServicesConfiguration config) { this.config = config; this.fileResolver = fileResolver; Document doc = loadDocument(path, fileResolver.getConfigurationFile(path)); initializeExpressionQuery(); parseTopLevelConfig(doc); }
private void channelIncludeFile(String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple channels in a single file. Node channelsNode = selectSingleNode(doc, CHANNELS_ELEMENT); if (channelsNode != null) { allowedChildElements(channelsNode, CHANNELS_CHILDREN); NodeList channels = selectNodeList(channelsNode, CHANNEL_DEFINITION_ELEMENT); for (int a = 0; a < channels.getLength(); a++) { Node service = channels.item(a); channelDefinition(service); } fileResolver.popIncludedFile(); } else // Check for single channel in the file. { Node channel = selectSingleNode(doc, "/" + CHANNEL_DEFINITION_ELEMENT); if (channel != null) { channelDefinition(channel); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be '{CHANNELS_ELEMENT}' or '{CHANNEL_ELEMENT}'. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{CHANNEL_INCLUDE_ELEMENT, src, CHANNELS_ELEMENT, CHANNEL_DEFINITION_ELEMENT}); throw ex; } } }
private void destinationIncludeDirectory(ServiceSettings serviceSettings, String dir) { List files = fileResolver.getFiles(dir); for (int i = 0; i < files.size(); i++) { String src = (String) files.get(i); destinationIncludeFile(serviceSettings, src); } }
/** * Parse the configurations in the configuration file. * * @param path the configuration file path * @param fileResolver the ConfigurationFileResolver object * @param config the ServicesConfiguration object **/ public void parse(String path, ConfigurationFileResolver fileResolver, ServicesConfiguration config) { this.config = config; this.fileResolver = fileResolver; Document doc = loadDocument(path, fileResolver.getConfigurationFile(path)); initializeExpressionQuery(); parseTopLevelConfig(doc); }
private void destinationIncludeFile(ServiceSettings serviceSettings, String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple destination defined in file. Node destinationsNode = selectSingleNode(doc, DESTINATIONS_ELEMENT); if (destinationsNode != null) { allowedChildElements(destinationsNode, DESTINATIONS_CHILDREN); NodeList destinations = selectNodeList(destinationsNode, DESTINATION_ELEMENT); for (int a = 0; a < destinations.getLength(); a++) { Node dest = destinations.item(a); destination(dest, serviceSettings); } fileResolver.popIncludedFile(); } else // Check for single destination definition. { Node dest = selectSingleNode(doc, "/" + DESTINATION_ELEMENT); if (dest != null) { destination(dest, serviceSettings); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{DESTINATION_INCLUDE_ELEMENT, src, DESTINATIONS_ELEMENT, DESTINATION_ELEMENT}); throw ex; } } }
private void channelIncludeDirectory(String dir) { List files = fileResolver.getFiles(dir); for (Object file : files) { String src = (String) file; channelIncludeFile(src); } }
private void adapterIncludeFile(ServiceSettings serviceSettings, String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple adapters defined in file wrapped in an <adapters> element Node adaptersNode = selectSingleNode(doc, ADAPTERS_ELEMENT); if (adaptersNode != null) { allowedChildElements(adaptersNode, ADAPTERS_CHILDREN); NodeList adapters = selectNodeList(adaptersNode, ADAPTER_DEFINITION_ELEMENT); for (int a = 0; a < adapters.getLength(); a++) { Node adapter = adapters.item(a); adapterDefinition(adapter, serviceSettings); } fileResolver.popIncludedFile(); } else // Check for single adapter { Node adapter = selectSingleNode(doc, "/" + ADAPTER_DEFINITION_ELEMENT); if (adapter != null) { adapterDefinition(adapter, serviceSettings); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{ADAPTER_INCLUDE_ELEMENT, src, ADAPTERS_ELEMENT, ADAPTER_DEFINITION_ELEMENT}); throw ex; } } }
private void channelIncludeDirectory(String dir) { List files = fileResolver.getFiles(dir); for (int i = 0; i < files.size(); i++) { String src = (String) files.get(i); channelIncludeFile(src); } }
private void channelIncludeFile(String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple channels in a single file. Node channelsNode = selectSingleNode(doc, CHANNELS_ELEMENT); if (channelsNode != null) { allowedChildElements(channelsNode, CHANNELS_CHILDREN); NodeList channels = selectNodeList(channelsNode, CHANNEL_DEFINITION_ELEMENT); for (int a = 0; a < channels.getLength(); a++) { Node service = channels.item(a); channelDefinition(service); } fileResolver.popIncludedFile(); } else // Check for single channel in the file. { Node channel = selectSingleNode(doc, "/" + CHANNEL_DEFINITION_ELEMENT); if (channel != null) { channelDefinition(channel); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be '{CHANNELS_ELEMENT}' or '{CHANNEL_ELEMENT}'. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{CHANNEL_INCLUDE_ELEMENT, src, CHANNELS_ELEMENT, CHANNEL_DEFINITION_ELEMENT}); throw ex; } } }
private void destinationIncludeDirectory(ServiceSettings serviceSettings, String dir) { List files = fileResolver.getFiles(dir); for (Object file : files) { String src = (String) file; destinationIncludeFile(serviceSettings, src); } }
private void constraintIncludeFile(String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for <security-constraints> wrapping more than one definition Node servicesNode = selectSingleNode(doc, SECURITY_CONSTRAINTS_ELEMENT); if (servicesNode != null) { allowedChildElements(servicesNode, SECURITY_CONSTRAINTS_CHILDREN); NodeList constraints = selectNodeList(servicesNode, SECURITY_CONSTRAINT_ELEMENT); for (int a = 0; a < constraints.getLength(); a++) { Node constraint = constraints.item(a); securityConstraint(constraint, false); } fileResolver.popIncludedFile(); } else // Check for single <security-constraint> { Node constraint = selectSingleNode(doc, "/" + SECURITY_CONSTRAINT_ELEMENT); if (constraint != null) { securityConstraint(constraint, false); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{CONSTRAINT_INCLUDE_ELEMENT, src, SECURITY_CONSTRAINTS_ELEMENT, SECURITY_CONSTRAINT_ELEMENT}); throw ex; } } }
private void serviceIncludeDirectory(String dir) { List files = fileResolver.getFiles(dir); for (int i = 0; i < files.size(); i++) { String src = (String) files.get(i); serviceIncludeFile(src); } }
private void adapterIncludeFile(ServiceSettings serviceSettings, String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple adapters defined in file wrapped in an <adapters> element Node adaptersNode = selectSingleNode(doc, ADAPTERS_ELEMENT); if (adaptersNode != null) { allowedChildElements(adaptersNode, ADAPTERS_CHILDREN); NodeList adapters = selectNodeList(adaptersNode, ADAPTER_DEFINITION_ELEMENT); for (int a = 0; a < adapters.getLength(); a++) { Node adapter = adapters.item(a); adapterDefinition(adapter, serviceSettings); } fileResolver.popIncludedFile(); } else // Check for single adapter { Node adapter = selectSingleNode(doc, "/" + ADAPTER_DEFINITION_ELEMENT); if (adapter != null) { adapterDefinition(adapter, serviceSettings); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{ADAPTER_INCLUDE_ELEMENT, src, ADAPTERS_ELEMENT, ADAPTER_DEFINITION_ELEMENT}); throw ex; } } }
private void constraintIncludeDirectory(String dir) { List files = fileResolver.getFiles(dir); for (Object file : files) { String src = (String) file; constraintIncludeFile(src); } }
private void serviceIncludeFile(String src) { Document doc = loadDocument(src, fileResolver.getIncludedFile(src)); doc.getDocumentElement().normalize(); // Check for multiple services defined in a <services> tag Node servicesNode = selectSingleNode(doc, SERVICES_ELEMENT); if (servicesNode != null) { allowedChildElements(servicesNode, SERVICES_CHILDREN); NodeList services = selectNodeList(servicesNode, SERVICE_ELEMENT); for (int a = 0; a < services.getLength(); a++) { Node service = services.item(a); service(service); } fileResolver.popIncludedFile(); } else // Check for single <service> definition. { Node service = selectSingleNode(doc, "/" + SERVICE_ELEMENT); if (service != null) { service(service); fileResolver.popIncludedFile(); } else { // The {0} root element in file {1} must be ''{2}'' or ''{3}''. ConfigurationException ex = new ConfigurationException(); ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{SERVICE_INCLUDE_ELEMENT, src, SERVICES_ELEMENT, SERVICE_ELEMENT}); throw ex; } } }
private void serviceIncludeDirectory(String dir) { List files = fileResolver.getFiles(dir); for (Object file : files) { String src = (String) file; serviceIncludeFile(src); } }