com.alibaba.fastjson.parser.DefaultJSONParser.getExtraTypeProviders()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(2.0k)|赞(0)|评价(0)|浏览(132)

本文整理了Java中com.alibaba.fastjson.parser.DefaultJSONParser.getExtraTypeProviders()方法的一些代码示例,展示了DefaultJSONParser.getExtraTypeProviders()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。DefaultJSONParser.getExtraTypeProviders()方法的具体详情如下:
包路径:com.alibaba.fastjson.parser.DefaultJSONParser
类名称:DefaultJSONParser
方法名:getExtraTypeProviders

DefaultJSONParser.getExtraTypeProviders介绍

暂无

代码示例

代码示例来源:origin: com.alibaba/fastjson

@SuppressWarnings("unchecked")
public static <T> T parseObject(String input, Type clazz, ParserConfig config, ParseProcess processor,
                   int featureValues, Feature... features) {
  if (input == null) {
    return null;
  }
  if (features != null) {
    for (Feature feature : features) {
      featureValues |= feature.mask;
    }
  }
  DefaultJSONParser parser = new DefaultJSONParser(input, config, featureValues);
  if (processor != null) {
    if (processor instanceof ExtraTypeProvider) {
      parser.getExtraTypeProviders().add((ExtraTypeProvider) processor);
    }
    if (processor instanceof ExtraProcessor) {
      parser.getExtraProcessors().add((ExtraProcessor) processor);
    }
    if (processor instanceof FieldTypeResolver) {
      parser.setFieldTypeResolver((FieldTypeResolver) processor);
    }
  }
  T value = (T) parser.parseObject(clazz, null);
  parser.handleResovleTask(value);
  parser.close();
  return (T) value;
}

代码示例来源:origin: jzyong/game-server

/**
 * wzy扩展
 *
 * @param input
 * @param value
 * @param config
 * @param processor
 * @param featureValues
 * @param features
 */
private static void reflectObject(String input, Object value, ParserConfig config, ParseProcess processor,
    int featureValues, Feature... features) {
  if (input == null) {
    return;
  }
  for (Feature featrue : features) {
    featureValues = Feature.config(featureValues, featrue, true);
  }
  DefaultJSONParser parser = new DefaultJSONParser(input, config, featureValues);
  if (processor instanceof ExtraTypeProvider) {
    parser.getExtraTypeProviders().add((ExtraTypeProvider) processor);
  }
  if (processor instanceof ExtraProcessor) {
    parser.getExtraProcessors().add((ExtraProcessor) processor);
  }
  parser.parseObject(value);
  parser.handleResovleTask(value);
  parser.close();
}

相关文章