private void flushBufferedProperties( T bean, Map<String, String> bufferedProperties, Set<String> requiredPropertiesLeft,
JsonDeserializationContext ctx, boolean ignoreUnknown, Set<String> ignoredProperties ) {
if ( null != bufferedProperties && !bufferedProperties.isEmpty() ) {
for ( Entry<String, String> bufferedProperty : bufferedProperties.entrySet() ) {
String propertyName = bufferedProperty.getKey();
requiredPropertiesLeft.remove( propertyName );
if ( ignoredProperties.contains( propertyName ) ) {
continue;
}
BeanPropertyDeserializer<T, ?> property = getPropertyDeserializer( propertyName, ctx, ignoreUnknown );
if ( null != property ) {
property.deserialize( ctx.newJsonReader( bufferedProperty.getValue() ), bean, ctx );
} else if ( null != anySetterDeserializer ) {
anySetterDeserializer.deserialize( ctx.newJsonReader( bufferedProperty.getValue() ), bean, propertyName, ctx );
}
}
}
}