private Map<Class<?>, List<PropertyDescriptor>> calcDescriptors( final Set<Class<?>> propertyDescriptorTypes) { final Map<Class<?>, List<PropertyDescriptor>> map = new HashMap<Class<?>, List<PropertyDescriptor>>(); for (final Class<?> type : propertyDescriptorTypes) { final PropertiesContext context = factoryCache.getContext(type); if (context == null) { LOG.debug("Cannot find context for type '" + type.getName() + "'. Skipping."); continue; } final PropertyMetaDataParser propertyDescriptorParser = PropertyMetaDataParser.create(context); final List<PropertyDescriptor> descriptors = propertyDescriptorParser.readDescriptors(type); map.put(type, descriptors); } return map; }
private void addPropertyDescriptors(final Class<?> propertySetType, final List<DuplicatePropertyDeclarationException> exceptions) { final Method[] methods = propertySetType.getMethods(); final PropertiesContext context = configurationRegistry.get(propertySetType); if (context == null) { LOG.warn("No context found for property set '" + propertySetType.getName() + "'. Skipped."); return; } final PropertyMetaDataParser propertyMetaDataParser = PropertyMetaDataParser.create(context); for (final Method method : methods) { if (PropertyUtils.isPropertyMethod(method)) { final PropertyDescriptor descriptor = propertyMetaDataParser.readDescriptor(method); addDescriptor(propertySetType, descriptor, exceptions); } } }
configurationProperties.getContext(declaringClass); final PropertyMetaDataParser parser = PropertyMetaDataParser.create(context);
private void addProperties(final MultiSourceProperties compositeProperties) { final Properties properties = new Properties(); final Class<?> type = BootProperties.class; final PropertiesContext context = configuration.getContext(type); final PropertyMetaDataParser propertyDescriptorParser = PropertyMetaDataParser.create(context); final List<PropertyDescriptor> descriptors = propertyDescriptorParser.readDescriptors(type); for (final PropertyDescriptor descriptor : descriptors) { final String propertyKey = descriptor.getKey().toString(); final Property property = compositeProperties.getValue(propertyKey); if (property != null && property.getValue() != null) { properties.put(propertyKey, property); } else { properties.remove(propertyKey); } } configuration.addDescriptors(type); final PropertyProvider provider = new PropertiesPropertyProvider(configuration.getKey(), new PropertyLocation("boot-various"), properties); configuration.addDefinitions(provider); }