Java 类com.fasterxml.jackson.databind.util.SimpleBeanPropertyDefinition 实例源码
项目:QuizUpWinner
文件:BeanDeserializerFactory.java
protected void addReferenceProperties(DeserializationContext paramDeserializationContext, BeanDescription paramBeanDescription, BeanDeserializerBuilder paramBeanDeserializerBuilder)
{
Map localMap = paramBeanDescription.findBackReferenceProperties();
if (localMap != null)
{
Iterator localIterator = localMap.entrySet().iterator();
while (localIterator.hasNext())
{
Map.Entry localEntry = (Map.Entry)localIterator.next();
String str = (String)localEntry.getKey();
AnnotatedMember localAnnotatedMember = (AnnotatedMember)localEntry.getValue();
Object localObject;
if ((localAnnotatedMember instanceof AnnotatedMethod))
localObject = ((AnnotatedMethod)localAnnotatedMember).getGenericParameterType(0);
else
localObject = localAnnotatedMember.getRawType();
paramBeanDeserializerBuilder.addBackReferenceProperty(str, constructSettableProperty(paramDeserializationContext, paramBeanDescription, SimpleBeanPropertyDefinition.construct(paramDeserializationContext.getConfig(), localAnnotatedMember), (Type)localObject));
}
}
}
项目:joyplus-tv
文件:BeanDeserializerFactory.java
/**
* Method that will find if bean has any managed- or back-reference properties,
* and if so add them to bean, to be linked during resolution phase.
*/
protected void addReferenceProperties(DeserializationContext ctxt,
BeanDescription beanDesc, BeanDeserializerBuilder builder)
throws JsonMappingException
{
// and then back references, not necessarily found as regular properties
Map<String,AnnotatedMember> refs = beanDesc.findBackReferenceProperties();
if (refs != null) {
for (Map.Entry<String, AnnotatedMember> en : refs.entrySet()) {
String name = en.getKey();
AnnotatedMember m = en.getValue();
Type genericType;
if (m instanceof AnnotatedMethod) {
genericType = ((AnnotatedMethod) m).getGenericParameterType(0);
} else {
genericType = m.getRawType();
}
SimpleBeanPropertyDefinition propDef = new SimpleBeanPropertyDefinition(m);
builder.addBackReferenceProperty(name, constructSettableProperty(
ctxt, beanDesc, propDef, genericType));
}
}
}
项目:QuizUpWinner
文件:BeanDeserializerFactory.java
public JsonDeserializer<Object> buildThrowableDeserializer(DeserializationContext paramDeserializationContext, JavaType paramJavaType, BeanDescription paramBeanDescription)
{
DeserializationConfig localDeserializationConfig = paramDeserializationContext.getConfig();
BeanDeserializerBuilder localBeanDeserializerBuilder1 = constructBeanDeserializerBuilder(paramDeserializationContext, paramBeanDescription);
BeanDeserializerBuilder localBeanDeserializerBuilder2 = localBeanDeserializerBuilder1;
localBeanDeserializerBuilder1.setValueInstantiator(findValueInstantiator(paramDeserializationContext, paramBeanDescription));
addBeanProps(paramDeserializationContext, paramBeanDescription, localBeanDeserializerBuilder2);
AnnotatedMethod localAnnotatedMethod = paramBeanDescription.findMethod("initCause", INIT_CAUSE_PARAMS);
if (localAnnotatedMethod != null)
{
SettableBeanProperty localSettableBeanProperty = constructSettableProperty(paramDeserializationContext, paramBeanDescription, SimpleBeanPropertyDefinition.construct(paramDeserializationContext.getConfig(), localAnnotatedMethod, "cause"), localAnnotatedMethod.getGenericParameterType(0));
if (localSettableBeanProperty != null)
localBeanDeserializerBuilder2.addOrReplaceProperty(localSettableBeanProperty, true);
}
localBeanDeserializerBuilder2.addIgnorable("localizedMessage");
localBeanDeserializerBuilder2.addIgnorable("suppressed");
localBeanDeserializerBuilder2.addIgnorable("message");
if (this._factoryConfig.hasDeserializerModifiers())
{
Iterator localIterator2 = this._factoryConfig.deserializerModifiers().iterator();
while (localIterator2.hasNext())
localBeanDeserializerBuilder2 = ((BeanDeserializerModifier)localIterator2.next()).updateBuilder(localDeserializationConfig, paramBeanDescription, localBeanDeserializerBuilder2);
}
JsonDeserializer localJsonDeserializer = localBeanDeserializerBuilder2.build();
Object localObject = localJsonDeserializer;
if ((localJsonDeserializer instanceof BeanDeserializer))
localObject = new ThrowableDeserializer((BeanDeserializer)localObject);
if (this._factoryConfig.hasDeserializerModifiers())
{
Iterator localIterator1 = this._factoryConfig.deserializerModifiers().iterator();
while (localIterator1.hasNext())
localObject = ((BeanDeserializerModifier)localIterator1.next()).modifyDeserializer(localDeserializationConfig, paramBeanDescription, (JsonDeserializer)localObject);
}
return localObject;
}
项目:logback-steno
文件:StenoBeanSerializerModifier.java
BeanIdentifierPropertyWriter(final SerializationConfig config) {
super(
SimpleBeanPropertyDefinition.construct(
config,
null,
PROPERTY_NAME),
EMPTY_ANNOTATION_MAP,
STRING_JAVA_TYPE);
}
项目:logback-steno
文件:StenoBeanSerializerModifier.java
BeanClassPropertyWriter(final SerializationConfig config) {
super(
SimpleBeanPropertyDefinition.construct(
config,
null,
PROPERTY_NAME),
EMPTY_ANNOTATION_MAP,
STRING_JAVA_TYPE);
}