當前位置: 首頁>>代碼示例>>Java>>正文


Java JavaType.getRawClass方法代碼示例

本文整理匯總了Java中com.fasterxml.jackson.databind.JavaType.getRawClass方法的典型用法代碼示例。如果您正苦於以下問題:Java JavaType.getRawClass方法的具體用法?Java JavaType.getRawClass怎麽用?Java JavaType.getRawClass使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在com.fasterxml.jackson.databind.JavaType的用法示例。


在下文中一共展示了JavaType.getRawClass方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: modifyEnumDeserializer

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
@Override
public JsonDeserializer<?> modifyEnumDeserializer(DeserializationConfig config, JavaType type,
    BeanDescription beanDesc, JsonDeserializer<?> deserializer) {
  if (Arrays.asList(Quality.class, Format.class).contains(type.getRawClass())) {
    return new EnumDeserializer((Class<? extends Enum>) type.getRawClass());
  }
  return super.modifyEnumDeserializer(config, type, beanDesc, deserializer);
}
 
開發者ID:dbmdz,項目名稱:iiif-apis,代碼行數:9,代碼來源:DeserializerModifier.java

示例2: handleMissingTypeId

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
@Override
public JavaType handleMissingTypeId(DeserializationContext ctxt, JavaType baseType, TypeIdResolver idResolver,
    String failureMsg) throws IOException {
  if (baseType.getRawClass() == Feature.class) {
    return idResolver.typeFromId(ctxt, "Feature");
  }
  return super.handleMissingTypeId(ctxt, baseType, idResolver, failureMsg);
}
 
開發者ID:dbmdz,項目名稱:iiif-apis,代碼行數:9,代碼來源:ProblemHandler.java

示例3: checkJavaType

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
protected void checkJavaType(Swagger swagger, JavaType javaType) {
  Class<?> cls = javaType.getRawClass();
  Field[] fields = cls.getFields();
  Assert.assertEquals("gen.cse.ms.ut.User", cls.getName());
  Assert.assertEquals("name", fields[0].getName());
  Assert.assertEquals(String.class, fields[0].getType());
  Assert.assertEquals("age", fields[1].getName());
  Assert.assertEquals(Integer.class, fields[1].getType());
}
 
開發者ID:apache,項目名稱:incubator-servicecomb-java-chassis,代碼行數:10,代碼來源:TestSwaggerUtils.java

示例4: init

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
@Override
public void init(JavaType baseType) {
  this.baseType = baseType;
  Class<?> baseClass = baseType.getRawClass();
  TypesEnum typesEnum = baseClass.getAnnotation(TypesEnum.class);
  while (baseClass != null && typesEnum == null) {
    baseClass = baseClass.getSuperclass();
    typesEnum = baseClass.getAnnotation(TypesEnum.class);
  }
  if (typesEnum == null) {
    throw new NullPointerException("Missing annotation TypesEnum on " + baseType.getRawClass());
  }
  SubTypeMapping mapping = new SubTypeMapping(typesEnum);
  TypeFactory defaultInstance = TypeFactory.defaultInstance();
  StringBuilder sb = new StringBuilder();
  for (Enum<?> e : mapping.getEnumConstants()) {
    String name = e.name();
    String className = mapping.getClassName(e);
    try {
      Class<?> c = Class.forName(className, false, this.getClass().getClassLoader());
      JavaType type = defaultInstance.uncheckedSimpleType(c);
      this.nameToType.put(name.toLowerCase(), type);
      this.typeToName.put(c, name);
      sb.append(name + " => " + c.getName() + "\n");
    } catch (ClassNotFoundException e1) {
      throw new RuntimeException(String.format(
          "class not found %s for enum value %s for base type %s",
          className, name, baseType
          ) , e1);
    }
  }
  this.description = sb.toString();
}
 
開發者ID:dremio,項目名稱:dremio-oss,代碼行數:34,代碼來源:EnumTypeIdResolver.java

示例5: initTypeInclusion

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
protected void initTypeInclusion(ObjectMapper mapObjectMapper) {
    TypeResolverBuilder<?> mapTyper = new DefaultTypeResolverBuilder(DefaultTyping.NON_FINAL) {
        public boolean useForType(JavaType t) {
            switch (_appliesFor) {
            case NON_CONCRETE_AND_ARRAYS:
                while (t.isArrayType()) {
                    t = t.getContentType();
                }
                // fall through
            case OBJECT_AND_NON_CONCRETE:
                return (t.getRawClass() == Object.class) || !t.isConcrete();
            case NON_FINAL:
                while (t.isArrayType()) {
                    t = t.getContentType();
                }
                // to fix problem with wrong long to int conversion
                if (t.getRawClass() == Long.class) {
                    return true;
                }
                if (t.getRawClass() == XMLGregorianCalendar.class) {
                    return false;
                }
                return !t.isFinal(); // includes Object.class
            default:
                // case JAVA_LANG_OBJECT:
                return (t.getRawClass() == Object.class);
            }
        }
    };
    mapTyper.init(JsonTypeInfo.Id.CLASS, null);
    mapTyper.inclusion(JsonTypeInfo.As.PROPERTY);
    mapObjectMapper.setDefaultTyping(mapTyper);
    
    // warm up codec
    try {
        byte[] s = mapObjectMapper.writeValueAsBytes(1);
        mapObjectMapper.readValue(s, Object.class);
    } catch (IOException e) {
        throw new IllegalStateException(e);
    }
}
 
開發者ID:qq1588518,項目名稱:JRediClients,代碼行數:42,代碼來源:JsonJacksonCodec.java

示例6: EnumJsonDeserializer

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
@SuppressWarnings("unchecked")
public EnumJsonDeserializer(JavaType javaType) {
    this.enumClass = (Class<? extends Enum>) javaType.getRawClass();
}
 
開發者ID:orshachar,項目名稱:known-issue,代碼行數:5,代碼來源:JacksonEnumExtension.java

示例7: useForType

import com.fasterxml.jackson.databind.JavaType; //導入方法依賴的package包/類
@Override
public boolean useForType(JavaType t) {
    return !t.isPrimitive() && t.getRawClass() != ZonedDateTime.class;
}
 
開發者ID:loom,項目名稱:loom-core,代碼行數:5,代碼來源:JacksonMessageSerializer.java


注:本文中的com.fasterxml.jackson.databind.JavaType.getRawClass方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。