本文整理匯總了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;
}