Java 类com.fasterxml.jackson.databind.deser.BeanDeserializerBase 实例源码

项目:gvnix1    文件:DataBinderBeanDeserializerModifier.java   
@Override
public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config,
        BeanDescription beanDesc, JsonDeserializer<?> deserializer) {
    if (deserializer instanceof BeanDeserializerBase) {
        return new DataBinderDeserializer(
                (BeanDeserializerBase) deserializer);
    }
    // When there is no custom-deserializer implementation returns the
    // default jackson deserializer
    return deserializer;
}
项目:QuizUpWinner    文件:BeanAsArrayBuilderDeserializer.java   
public BeanAsArrayBuilderDeserializer(BeanDeserializerBase paramBeanDeserializerBase, SettableBeanProperty[] paramArrayOfSettableBeanProperty, AnnotatedMethod paramAnnotatedMethod)
{
  super(paramBeanDeserializerBase);
  this._delegate = paramBeanDeserializerBase;
  this._orderedProperties = paramArrayOfSettableBeanProperty;
  this._buildMethod = paramAnnotatedMethod;
}
项目:hypersocket-framework    文件:MigrationImpExpModule.java   
@Override
public void setupModule(SetupContext context) {
    context.addBeanDeserializerModifier(new BeanDeserializerModifier() {

        @Override
        public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config, BeanDescription beanDesc, JsonDeserializer<?> deserializer) {
            if(deserializer instanceof BeanDeserializer) {
             return new MigrationBeanDeserializer((BeanDeserializerBase) deserializer, migrationCurrentStack);
         }
         return deserializer;
        }
    });
}
项目:codec    文件:CodecBeanDeserializerModifier.java   
@Override public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config,
                                                        BeanDescription beanDesc,
                                                        JsonDeserializer<?> deserializer) {
    JsonDeserializer<?> delegatee = deserializer.getDelegatee();
    if (delegatee != null) {
        JsonDeserializer<?> replacementDelegatee = modifyDeserializer(config, beanDesc, delegatee);
        return deserializer.replaceDelegatee(replacementDelegatee);
    } else if (deserializer instanceof BeanDeserializerBase) {
        BeanDeserializerBase beanDeserializer = (BeanDeserializerBase)  deserializer;
        ObjectNode fieldDefaults = config.getNodeFactory().objectNode();
        Iterator<SettableBeanProperty> propertyIterator = beanDeserializer.properties();
        while (propertyIterator.hasNext()) {
            SettableBeanProperty prop = propertyIterator.next();
            Class<?> declaringClass = prop.getMember().getDeclaringClass();
            String canonicalClassName = declaringClass.getCanonicalName();
            if ((canonicalClassName != null) && globalDefaults.hasPath(canonicalClassName)) {
                Config declarerDefaults = globalDefaults.getConfig(canonicalClassName);
                String propertyName = prop.getName();
                if (declarerDefaults.hasPath(propertyName)) {
                    ConfigValue defaultValue = declarerDefaults.getValue(propertyName);
                    JsonNode fieldDefault = Jackson.configConverter(defaultValue);
                    fieldDefaults.set(propertyName, fieldDefault);
                }
            }
        }
        return new CodecBeanDeserializer(beanDeserializer, fieldDefaults);
    } else {
        return deserializer;
    }
}
项目:gvnix    文件:DataBinderBeanDeserializerModifier.java   
@Override
public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config,
        BeanDescription beanDesc, JsonDeserializer<?> deserializer) {
    if (deserializer instanceof BeanDeserializerBase) {
        return new DataBinderDeserializer(
                (BeanDeserializerBase) deserializer);
    }
    // When there is no custom-deserializer implementation returns the
    // default jackson deserializer
    return deserializer;
}
项目:gvnix1    文件:DataBinderDeserializer.java   
public DataBinderDeserializer(BeanDeserializerBase source) {
    super(source);
}
项目:gvnix1    文件:DataBinderDeserializer.java   
public DataBinderDeserializer(BeanDeserializerBase source,
        ObjectIdReader objectIdReader) {
    super(source, objectIdReader);
}
项目:gvnix1    文件:DataBinderDeserializer.java   
public DataBinderDeserializer(BeanDeserializerBase source,
        HashSet<String> ignorableProps) {
    super(source, ignorableProps);
}
项目:gvnix1    文件:DataBinderDeserializer.java   
/**
 * {@inheritDoc}
 * 
 * Uses {@link DataBinderDeserializer}
 */
@Override
public BeanDeserializerBase withIgnorableProperties(
        HashSet<String> ignorableProps) {
    return new DataBinderDeserializer(this, ignorableProps);
}
项目:gvnix1    文件:DataBinderDeserializer.java   
/**
 * {@inheritDoc}
 * 
 * Not used
 */
@Override
protected BeanDeserializerBase asArrayDeserializer() {
    // Not used
    return null;
}
项目:requery    文件:EntityBeanDeserializer.java   
EntityBeanDeserializer(BeanDeserializerBase source, ObjectIdReader reader) {
    super(source, reader);
}
项目:QuizUpWinner    文件:BeanAsArrayDeserializer.java   
public BeanAsArrayDeserializer(BeanDeserializerBase paramBeanDeserializerBase, SettableBeanProperty[] paramArrayOfSettableBeanProperty)
{
  super(paramBeanDeserializerBase);
  this._delegate = paramBeanDeserializerBase;
  this._orderedProperties = paramArrayOfSettableBeanProperty;
}
项目:QuizUpWinner    文件:BeanAsArrayDeserializer.java   
protected BeanDeserializerBase asArrayDeserializer()
{
  return this;
}
项目:hypersocket-framework    文件:MigrationBeanDeserializer.java   
public MigrationBeanDeserializer(BeanDeserializerBase src, MigrationCurrentStack migrationCurrentStack) {
    super(src);
    this.migrationCurrentStack = migrationCurrentStack;
}
项目:codec    文件:CodecTypeDeserializer.java   
private boolean handleDefaultsAndImplicitPrimary(ObjectNode fieldValues,
                                                 ConfigObject aliasDefaults,
                                                 JsonDeserializer<?> deserializer,
                                                 DeserializationContext ctxt) throws JsonMappingException {
    if (!aliasDefaults.isEmpty()) {
        if (deserializer instanceof DelegatingDeserializer) {
            deserializer = ((DelegatingDeserializer) deserializer).getDelegatee();
        }
        if ((deserializer instanceof BeanDeserializerBase) && (aliasDefaults.get("_primary") != null)) {
            BeanDeserializerBase beanDeserializer = (BeanDeserializerBase) deserializer;
            String primaryField = (String) aliasDefaults.get("_primary").unwrapped();
            if (!fieldValues.has(primaryField)) {
                // user has not explicitly set a value where _primary points, see if _primary is a plugin type
                SettableBeanProperty primaryProperty = beanDeserializer.findProperty(primaryField);
                if ((primaryProperty != null) && primaryProperty.hasValueTypeDeserializer()) {
                    TypeDeserializer primaryTypeDeserializer = primaryProperty.getValueTypeDeserializer();
                    if (primaryTypeDeserializer instanceof CodecTypeDeserializer) {
                        CodecTypeIdResolver primaryPropertyTypeIdResolver =
                                ((CodecTypeDeserializer) primaryTypeDeserializer).idRes;
                        String possibleInlinedPrimary = null;
                        Iterator<String> fieldNames = fieldValues.fieldNames();
                        while (fieldNames.hasNext()) {
                            String fieldName = fieldNames.next();
                            if ((fieldName.charAt(0) != '_') && !beanDeserializer.hasProperty(fieldName)) {
                                if (primaryPropertyTypeIdResolver.isValidTypeId(fieldName)) {
                                    if (possibleInlinedPrimary == null) {
                                        possibleInlinedPrimary = fieldName;
                                    } else {
                                        String message = String.format(
                                                "%s and %s are both otherwise unknown properties that "
                                                + "could be types for the _primary property %s whose category is "
                                                + "%s. This is too ambiguous to resolve.",
                                                possibleInlinedPrimary, fieldName, primaryField,
                                                ((CodecTypeDeserializer) primaryTypeDeserializer)
                                                        .pluginMap.category());
                                        JsonMappingException ex =
                                                ctxt.instantiationException(_baseType.getRawClass(), message);
                                        ex.prependPath(beanDeserializer.getValueType(), fieldName);
                                        throw ex;
                                    }
                                }
                            }
                        }
                        // did we find a good candidate?
                        if (possibleInlinedPrimary != null) {
                            // then wrap the value with its key (its type), and stash it in our primary field
                            JsonNode inlinedPrimaryValue = fieldValues.remove(possibleInlinedPrimary);
                            fieldValues.with(primaryField).set(possibleInlinedPrimary, inlinedPrimaryValue);
                            Jackson.merge(fieldValues, Jackson.configConverter(aliasDefaults));
                            return true;
                        }
                    }
                }
            }
        }
        // merge alias defaults here since we check for empty etc anyway
        Jackson.merge(fieldValues, Jackson.configConverter(aliasDefaults));
    }
    return false;
}
项目:codec    文件:CodecBeanDeserializer.java   
protected CodecBeanDeserializer(BeanDeserializerBase src, ObjectNode fieldDefaults) {
    super(src);
    this.fieldDefaults = fieldDefaults;
}
项目:codec    文件:CodecBeanDeserializer.java   
@Override public BeanDeserializerBase getDelegatee() {
    return (BeanDeserializerBase) _delegatee;
}
项目:codec    文件:CodecBeanDeserializer.java   
@Override protected JsonDeserializer<?> newDelegatingInstance(JsonDeserializer<?> newDelegatee) {
    return new CodecBeanDeserializer((BeanDeserializerBase) newDelegatee, fieldDefaults);
}
项目:gvnix    文件:DataBinderDeserializer.java   
public DataBinderDeserializer(BeanDeserializerBase source) {
    super(source);
}
项目:gvnix    文件:DataBinderDeserializer.java   
public DataBinderDeserializer(BeanDeserializerBase source,
        ObjectIdReader objectIdReader) {
    super(source, objectIdReader);
}
项目:gvnix    文件:DataBinderDeserializer.java   
public DataBinderDeserializer(BeanDeserializerBase source,
        HashSet<String> ignorableProps) {
    super(source, ignorableProps);
}
项目:gvnix    文件:DataBinderDeserializer.java   
/**
 * {@inheritDoc}
 * 
 * Uses {@link DataBinderDeserializer}
 */
@Override
public BeanDeserializerBase withIgnorableProperties(
        HashSet<String> ignorableProps) {
    return new DataBinderDeserializer(this, ignorableProps);
}
项目:gvnix    文件:DataBinderDeserializer.java   
/**
 * {@inheritDoc}
 * 
 * Not used
 */
@Override
protected BeanDeserializerBase asArrayDeserializer() {
    // Not used
    return null;
}
项目:gvnix1    文件:DataBinderDeserializer.java   
/**
 * {@inheritDoc}
 * 
 * Uses {@link DataBinderDeserializer}
 */
@Override
public BeanDeserializerBase withObjectIdReader(ObjectIdReader objectIdReader) {
    return new DataBinderDeserializer(this, objectIdReader);
}
项目:gvnix    文件:DataBinderDeserializer.java   
/**
 * {@inheritDoc}
 * 
 * Uses {@link DataBinderDeserializer}
 */
@Override
public BeanDeserializerBase withObjectIdReader(ObjectIdReader objectIdReader) {
    return new DataBinderDeserializer(this, objectIdReader);
}