package com.github.ltsopensource.autoconfigure.resolver; import com.github.ltsopensource.autoconfigure.AutoConfigContext; import com.github.ltsopensource.core.commons.utils.PrimitiveTypeUtils; import java.beans.PropertyDescriptor; /** * @author Robert HG (254963746@qq.com) on 4/20/16. */ public class PrimitiveTypeResolver extends AbstractResolver { public static final PrimitiveTypeResolver INSTANCE = new PrimitiveTypeResolver(); @Override public void resolve(final AutoConfigContext context, final PropertyDescriptor descriptor, final Class<?> propertyType) { doFilter(context, descriptor, new Filter() { @Override public boolean onCondition(String name, String key, String value) { return key.equals(name); } @Override public boolean call(String name, String key, String value) { Object v = PrimitiveTypeUtils.convert(value, propertyType); writeProperty(context, descriptor, v); return false; } }); } }