本文整理汇总了Java中com.fasterxml.jackson.annotation.JsonTypeInfo.Id方法的典型用法代码示例。如果您正苦于以下问题:Java JsonTypeInfo.Id方法的具体用法?Java JsonTypeInfo.Id怎么用?Java JsonTypeInfo.Id使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.fasterxml.jackson.annotation.JsonTypeInfo
的用法示例。
在下文中一共展示了JsonTypeInfo.Id方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getJsonType
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
private String getJsonType(Class<?> clazz, JsonTypeInfo typeInfo) {
String value;
JsonTypeInfo.Id use = typeInfo.use();
switch (use) {
case CLASS:
value = clazz.getName();
break;
case NAME: {
JsonSubTypes.Type needed = null;
JsonSubTypes subTypes = AnnotationUtils.findAnnotation(clazz, JsonSubTypes.class);
if(subTypes != null) {
for(JsonSubTypes.Type type: subTypes.value()) {
if(type.value().equals(clazz)) {
needed = type;
break;
}
}
}
if(needed == null) {
throw new IllegalArgumentException("On " + clazz + " can not find 'JsonSubTypes' record for current type.");
}
value = needed.name();
break;
}
default:
throw new IllegalArgumentException("On " + clazz + " find unexpected 'JsonTypeInfo.use' value: " + use);
}
return value;
}
示例2: getPropertyName
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
private String getPropertyName(JsonTypeInfo typeInfo) {
String property = typeInfo.property();
if (property.isEmpty()) {
JsonTypeInfo.Id use = typeInfo.use();
property = use.getDefaultPropertyName();
}
return property;
}
示例3: init
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
public StdTypeResolverBuilder init(JsonTypeInfo.Id idType, TypeIdResolver idRes)
{
// sanity checks
if (idType == null) {
throw new IllegalArgumentException("idType can not be null");
}
_idType = idType;
_customIdResolver = idRes;
// Let's also initialize property name as per idType default
_typeProperty = idType.getDefaultPropertyName();
return this;
}
示例4: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.CUSTOM;
}
示例5: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.CLASS;
}
示例6: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.CUSTOM;
}
示例7: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism()
{
return JsonTypeInfo.Id.CUSTOM;
}
示例8: init
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public MetadataTypeResolver init(JsonTypeInfo.Id idType, TypeIdResolver res) {
return this;
}
示例9: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.CUSTOM;
}
示例10: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.NAME;
}
示例11: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
/** {@inheritDoc} */
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.CUSTOM;
}
示例12: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.NAME;
}
示例13: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.NAME;
}
示例14: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override
public JsonTypeInfo.Id getMechanism() {
throw new UnsupportedOperationException("not yet done");
}
示例15: getMechanism
import com.fasterxml.jackson.annotation.JsonTypeInfo; //导入方法依赖的package包/类
@Override public JsonTypeInfo.Id getMechanism() {
return JsonTypeInfo.Id.CUSTOM;
}