@Override public ScannerOutput<M> scan(ScannerInput<M> input) throws IOException { ScannerOutput<M> output = super.scan(input); M model = output.getModel(); if (model != null) { Model root = model.getModelRoot(); if (root instanceof SwitchYardModel) { if (!input.isSwitchyardNamespaceSet()) { String uri = root.getModelRootNamespace(); SwitchYardNamespace ns = SwitchYardNamespace.fromUri(uri); input.setSwitchyardNamespace(ns); } } } return output; } });
@Override public ScannerOutput<M> scan(ScannerInput<M> input) throws IOException { ScannerOutput<M> output = super.scan(input); M model = output.getModel(); if (model != null) { Model root = model.getModelRoot(); if (root instanceof SwitchYardModel) { if (!input.isSwitchyardNamespaceSet()) { String uri = root.getModelRootNamespace(); SwitchYardNamespace ns = SwitchYardNamespace.fromUri(uri); input.setSwitchyardNamespace(ns); } } } return output; } });
private SwitchYardModel createSwitchYardModel(InputStream configModel, List<Scanner<V1SwitchYardModel>> scanners, boolean validate) { Assert.assertNotNull("Test 'configModel' is null.", configModel); final SwitchYardModel returnModel; try { SwitchYardModel model = loadSwitchYardModel(configModel, false); ClassLoader classLoader = _testInstance.getClass().getClassLoader(); if (scanners != null && !scanners.isEmpty() && classLoader instanceof URLClassLoader) { String uri = model.getModelRootNamespace(); SwitchYardNamespace ns = SwitchYardNamespace.fromUri(uri); MergeScanner<V1SwitchYardModel> merge_scanner = new MergeScanner<V1SwitchYardModel>(true, scanners); List<URL> scanURLs = getScanURLs((URLClassLoader)classLoader); ScannerInput<V1SwitchYardModel> scanner_input = new ScannerInput<V1SwitchYardModel>() .setSwitchyardNamespace(ns).setCompositeName(model.getName()).setURLs(scanURLs); V1SwitchYardModel scannedModel = merge_scanner.scan(scanner_input).getModel(); returnModel = Models.merge(scannedModel, model, false); } else { returnModel = model; } if (validate) { returnModel.assertModelValid(); } return returnModel; } catch (java.io.IOException ioEx) { throw new SwitchYardException("Failed to read switchyard config.", ioEx); } }
private SwitchYardModel createSwitchYardModel(InputStream configModel, List<Scanner<V1SwitchYardModel>> scanners, boolean validate) { Assert.assertNotNull("Test 'configModel' is null.", configModel); final SwitchYardModel returnModel; try { SwitchYardModel model = loadSwitchYardModel(configModel, false); ClassLoader classLoader = _testInstance.getClass().getClassLoader(); if (scanners != null && !scanners.isEmpty() && classLoader instanceof URLClassLoader) { String uri = model.getModelRootNamespace(); SwitchYardNamespace ns = SwitchYardNamespace.fromUri(uri); MergeScanner<V1SwitchYardModel> merge_scanner = new MergeScanner<V1SwitchYardModel>(true, scanners); List<URL> scanURLs = getScanURLs((URLClassLoader)classLoader); ScannerInput<V1SwitchYardModel> scanner_input = new ScannerInput<V1SwitchYardModel>() .setSwitchyardNamespace(ns).setCompositeName(model.getName()).setURLs(scanURLs); V1SwitchYardModel scannedModel = merge_scanner.scan(scanner_input).getModel(); returnModel = Models.merge(scannedModel, model, false); } else { returnModel = model; } if (validate) { returnModel.assertModelValid(); } return returnModel; } catch (java.io.IOException ioEx) { throw new SwitchYardException("Failed to read switchyard config.", ioEx); } }