@Override public AnnotatedMember getMember() { return _forward.getMember(); }
@Override public AnnotatedMember getMember() { return delegate.getMember(); }
protected Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }
protected Map<String,List<PropertyName>> _collectAliases(Collection<SettableBeanProperty> props) { Map<String,List<PropertyName>> mapping = null; AnnotationIntrospector intr = _config.getAnnotationIntrospector(); if (intr != null) { for (SettableBeanProperty prop : props) { List<PropertyName> aliases = intr.findPropertyAliases(prop.getMember()); if ((aliases == null) || aliases.isEmpty()) { continue; } if (mapping == null) { mapping = new HashMap<>(); } mapping.put(prop.getName(), aliases); } } if (mapping == null) { return Collections.emptyMap(); } return mapping; } }
/** * Helper method called to see if given property might be so-called unwrapped * property: these require special handling. */ protected NameTransformer _findPropertyUnwrapper(DeserializationContext ctxt, SettableBeanProperty prop) throws JsonMappingException { AnnotatedMember am = prop.getMember(); if (am != null) { NameTransformer unwrapper = ctxt.getAnnotationIntrospector().findUnwrappingNameTransformer(am); if (unwrapper != null) { // 01-Dec-2016, tatu: As per [databind#265] we cannot yet support passing // of unwrapped values through creator properties, so fail fast if (prop instanceof CreatorProperty) { ctxt.reportBadDefinition(getValueType(), String.format( "Cannot define Creator property \"%s\" as `@JsonUnwrapped`: combination not yet supported", prop.getName())); } return unwrapper; } } return null; }
/** * Helper method that can be used to see if specified property is annotated * to indicate use of a converter for property value (in case of container types, * it is container type itself, not key or content type). *<p> * NOTE: returned deserializer is NOT yet contextualized, caller needs to take * care to do that. * * @since 2.2 */ protected JsonDeserializer<Object> findConvertingDeserializer(DeserializationContext ctxt, SettableBeanProperty prop) throws JsonMappingException { final AnnotationIntrospector intr = ctxt.getAnnotationIntrospector(); if (intr != null) { Object convDef = intr.findDeserializationConverter(prop.getMember()); if (convDef != null) { Converter<Object,Object> conv = ctxt.converterInstance(prop.getMember(), convDef); JavaType delegateType = conv.getInputType(ctxt.getTypeFactory()); // 25-Mar-2017, tatu: should not yet contextualize // JsonDeserializer<?> deser = ctxt.findContextualValueDeserializer(delegateType, prop); JsonDeserializer<?> deser = ctxt.findNonContextualValueDeserializer(delegateType); return new StdDelegatingDeserializer<Object>(conv, delegateType, deser); } } return null; }
if (!bbd.hasProperty(pn)) { BeanPropertyDefinition newDef = SimpleBeanPropertyDefinition.construct( ctxt.getConfig(), prop.getMember(), pn); bbd.addProperty(newDef);
@Override public AnnotatedMember getMember() { return _forward.getMember(); }
@Override public AnnotatedMember getMember() { return delegate.getMember(); }
@Override public AnnotatedMember getMember() { return delegate.getMember(); }
@Override public AnnotatedMember getMember() { return _forward.getMember(); }
@Override public AnnotatedMember getMember() { return _forward.getMember(); }
@Override public AnnotatedMember getMember() { return _forward.getMember(); }
@Override public AnnotatedMember getMember() { return _delegate.getMember(); }
protected final Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }
protected Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }
protected final Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }
protected final Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }
protected final Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }
protected final Class<?> getDeclaringClass() { return getMember().getDeclaringClass(); }