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);
}