Examples of FieldDeserializer


Examples of com.alibaba.citrus.hessian.io.JavaDeserializer.FieldDeserializer

      int ref = in.addRef(obj);

      while (! in.isEnd()) {
        Object key = in.readObject();

        FieldDeserializer deser = (FieldDeserializer) _fieldMap.get(key);

        if (deser != null)
          deser.deserialize(in, obj);
        else
          in.readObject();
      }

      in.readMapEnd();
View Full Code Here

Examples of com.alibaba.citrus.hessian.io.JavaDeserializer.FieldDeserializer

  {
    try {
      int ref = in.addRef(obj);

      for (String fieldName : fieldNames) {
        FieldDeserializer reader = _fieldMap.get(fieldName);
       
        if (reader != null)
          reader.deserialize(in, obj);
        else
          in.readObject();
      }

      Object resolve = resolve(in, obj);
View Full Code Here

Examples of com.alibaba.citrus.hessian.io.JavaDeserializer.FieldDeserializer

        } catch (Throwable e) {
          e.printStackTrace();
        }

        Class<?> type = field.getType();
        FieldDeserializer deser;

        if (String.class.equals(type)) {
          deser = new StringFieldDeserializer(field);
        }
        else if (byte.class.equals(type)) {
View Full Code Here

Examples of com.alibaba.citrus.hessian.io.UnsafeDeserializer.FieldDeserializer

      int ref = in.addRef(obj);

      while (! in.isEnd()) {
        Object key = in.readObject();
       
        FieldDeserializer deser = _fieldMap.get(key);

        if (deser != null)
    deser.deserialize(in, obj);
        else
          in.readObject();
      }
     
      in.readMapEnd();
View Full Code Here

Examples of com.alibaba.citrus.hessian.io.UnsafeDeserializer.FieldDeserializer

  {
    try {
      int ref = in.addRef(obj);

      for (String fieldName : fieldNames) {
        FieldDeserializer reader = _fieldMap.get(fieldName);
       
        if (reader != null)
          reader.deserialize(in, obj);
        else
          in.readObject();
      }

      Object resolve = resolve(in, obj);
View Full Code Here

Examples of com.alibaba.citrus.hessian.io.UnsafeDeserializer.FieldDeserializer

        } catch (Throwable e) {
          e.printStackTrace();
        }

  Class<?> type = field.getType();
  FieldDeserializer deser;

  if (String.class.equals(type))
    deser = new StringFieldDeserializer(field);
  else if (byte.class.equals(type)) {
    deser = new ByteFieldDeserializer(field);
View Full Code Here

Examples of com.alibaba.fastjson.parser.deserializer.FieldDeserializer

    public static <T> int handleResovleTask(DefaultJSONParser parser, T value) {
        int size = parser.getResolveTaskList().size();
        for (int i = 0; i < size; ++i) {
            ResolveTask task = parser.getResolveTaskList().get(i);
            FieldDeserializer fieldDeser = task.getFieldDeserializer();

            Object object = null;
            if (task.getOwnerContext() != null) {
                object = task.getOwnerContext().getObject();
            }

            String ref = task.getReferenceValue();
            Object refValue;
            if (ref.startsWith("$")) {
                refValue = parser.getObject(ref);
            } else {
                refValue = task.getContext().getObject();
            }
            fieldDeser.setValue(object, refValue);
        }

        return size;
    }
View Full Code Here

Examples of com.alibaba.fastjson.parser.deserializer.FieldDeserializer

            }
            T object = constructor.newInstance();

            for (Map.Entry<String, FieldDeserializer> entry : setters.entrySet()) {
                String key = entry.getKey();
                FieldDeserializer fieldDeser = entry.getValue();

                if (map.containsKey(key)) {
                    Object value = map.get(key);
                    Method method = fieldDeser.getMethod();
                    if (method != null) {
                        Type paramType = method.getGenericParameterTypes()[0];
                        value = cast(value, paramType, mapping);
                        method.invoke(object, new Object[] { value });
                    } else {
                        Field field = fieldDeser.getField();
                        Type paramType = field.getGenericType();
                        value = cast(value, paramType, mapping);
                        field.set(object, value);
                    }
View Full Code Here

Examples of com.alibaba.fastjson.parser.deserializer.FieldDeserializer

                        continue;
                    }
                }
            }

            FieldDeserializer fieldDeser = setters.get(key);
            if (fieldDeser == null) {
                if (!isEnabled(Feature.IgnoreNotMatch)) {
                    throw new JSONException("setter not found, class " + clazz.getName() + ", property " + key);
                }

                lexer.nextTokenWithColon();
                parse(); // skip

                if (lexer.token() == JSONToken.RBRACE) {
                    lexer.nextToken();
                    return;
                }

                continue;
            } else {
                Method method = fieldDeser.getMethod();
                Class<?> fieldClass = method.getParameterTypes()[0];
                Type fieldType = method.getGenericParameterTypes()[0];
                if (fieldClass == int.class) {
                    lexer.nextTokenWithColon(JSONToken.LITERAL_INT);
                    args[0] = IntegerDeserializer.instance.deserialze(this, fieldType, null);
View Full Code Here

Examples of com.alibaba.fastjson.parser.deserializer.FieldDeserializer

            return;
        }
        int size = resolveTaskList.size();
        for (int i = 0; i < size; ++i) {
            ResolveTask task = resolveTaskList.get(i);
            FieldDeserializer fieldDeser = task.getFieldDeserializer();

            Object object = null;
            if (task.getOwnerContext() != null) {
                object = task.getOwnerContext().getObject();
            }

            String ref = task.getReferenceValue();
            Object refValue;
            if (ref.startsWith("$")) {
                refValue = parser.getObject(ref);
            } else {
                refValue = task.getContext().getObject();
            }
            fieldDeser.setValue(object, refValue);
        }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.