protected Map<String, Pair> createProperties(PhysicalSpringComponent springComponent) throws Fabric3Exception { List<PhysicalProperty> properties = springComponent.getProperties(); Map<String, Pair> values = new HashMap<>(); for (PhysicalProperty property : properties) { String name = property.getName(); if (property.getInstanceValue() != null) { Pair pair = new Pair(Object.class, property::getInstanceValue); values.put(name, pair); } else { Document document = property.getXmlValue(); String value = document.getElementsByTagName("value").item(0).getFirstChild().getNodeValue(); QName type = property.getType(); if (XSD_BOOLEAN.equals(type)) { Pair pair = new Pair(Boolean.class, () -> Boolean.valueOf(value)); values.put(name, pair); } else if (XSD_INT.equals(type)) { Pair pair = new Pair(Integer.class, () -> Boolean.valueOf(value)); values.put(name, pair); } else { Pair pair = new Pair(String.class, () -> value); values.put(name, pair); } } } return values; }
String name = property.getName(); Injectable source = new Injectable(InjectableType.PROPERTY, name); if (property.getInstanceValue() != null) { factory.setSupplier(source, property::getInstanceValue); } else { String key = property.getKey(); if (key != null) { if (property.isRequired() && value == null) { throw new Fabric3Exception("External property " + key + " not found for component " + component.getUri()); }); } else { Document value = property.getXmlValue(); boolean many = property.isMany(); factory.setSupplier(source, propertyBuilder.createSupplier(name, dataType, value, many, classLoader));
String name = property.getName(); Injectable source = new Injectable(InjectableType.PROPERTY, name); if (property.getInstanceValue() != null) { factory.setSupplier(source, property::getInstanceValue); } else { String key = property.getKey(); if (key != null) { if (property.isRequired() && value == null) { throw new Fabric3Exception("External property " + key + " not found for component " + component.getUri()); }); } else { Document value = property.getXmlValue(); boolean many = property.isMany(); factory.setSupplier(source, propertyBuilder.createSupplier(name, dataType, value, many, classLoader));
protected Map<String, Pair> createProperties(PhysicalSpringComponent springComponent) throws Fabric3Exception { List<PhysicalProperty> properties = springComponent.getProperties(); Map<String, Pair> values = new HashMap<>(); for (PhysicalProperty property : properties) { String name = property.getName(); if (property.getInstanceValue() != null) { Pair pair = new Pair(Object.class, property::getInstanceValue); values.put(name, pair); } else { Document document = property.getXmlValue(); String value = document.getElementsByTagName("value").item(0).getFirstChild().getNodeValue(); QName type = property.getType(); if (XSD_BOOLEAN.equals(type)) { Pair pair = new Pair(Boolean.class, () -> Boolean.valueOf(value)); values.put(name, pair); } else if (XSD_INT.equals(type)) { Pair pair = new Pair(Integer.class, () -> Boolean.valueOf(value)); values.put(name, pair); } else { Pair pair = new Pair(String.class, () -> value); values.put(name, pair); } } } return values; }