当前位置: 首页>>代码示例>>Java>>正文


Java SimpleAbstractTypeResolver类代码示例

本文整理汇总了Java中com.fasterxml.jackson.databind.module.SimpleAbstractTypeResolver的典型用法代码示例。如果您正苦于以下问题:Java SimpleAbstractTypeResolver类的具体用法?Java SimpleAbstractTypeResolver怎么用?Java SimpleAbstractTypeResolver使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


SimpleAbstractTypeResolver类属于com.fasterxml.jackson.databind.module包,在下文中一共展示了SimpleAbstractTypeResolver类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getAppStatusList

import com.fasterxml.jackson.databind.module.SimpleAbstractTypeResolver; //导入依赖的package包/类
@JsonIgnore
public List<AppStatus> getAppStatusList() {
	try {
		ObjectMapper mapper = new ObjectMapper();
		mapper.addMixIn(AppStatus.class, AppStatusMixin.class);
		mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
		SimpleModule module = new SimpleModule("CustomModel", Version.unknownVersion());
		SimpleAbstractTypeResolver resolver = new SimpleAbstractTypeResolver();
		resolver.addMapping(AppInstanceStatus.class, AppInstanceStatusImpl.class);
		module.setAbstractTypes(resolver);
		mapper.registerModule(module);
		TypeReference<List<AppStatus>> typeRef = new TypeReference<List<AppStatus>>() {
		};
		if (this.platformStatus != null) {
			return mapper.readValue(this.platformStatus, typeRef);
		}
		return new ArrayList<AppStatus>();
	}
	catch (Exception e) {
		throw new IllegalArgumentException("Could not parse Skipper Platfrom Status JSON:" + platformStatus, e);
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-skipper,代码行数:23,代码来源:Status.java

示例2: deserializeAppStatus

import com.fasterxml.jackson.databind.module.SimpleAbstractTypeResolver; //导入依赖的package包/类
public static List<AppStatus> deserializeAppStatus(String platformStatus) {
	try {
		ObjectMapper mapper = new ObjectMapper();
		mapper.addMixIn(AppStatus.class, AppStatusMixin.class);
		mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
		SimpleModule module = new SimpleModule("CustomModel", Version.unknownVersion());
		SimpleAbstractTypeResolver resolver = new SimpleAbstractTypeResolver();
		resolver.addMapping(AppInstanceStatus.class, AppInstanceStatusImpl.class);
		module.setAbstractTypes(resolver);
		mapper.registerModule(module);
		TypeReference<List<AppStatus>> typeRef = new TypeReference<List<AppStatus>>() {
		};
		List<AppStatus> result = mapper.readValue(platformStatus, typeRef);
		return result;
	}
	catch (Exception e) {
		throw new IllegalArgumentException("Could not parse Skipper Platform Status JSON:" + platformStatus, e);
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-dataflow,代码行数:20,代码来源:SkipperStreamDeployer.java

示例3: validateResponse

import com.fasterxml.jackson.databind.module.SimpleAbstractTypeResolver; //导入依赖的package包/类
private void validateResponse(MockSlingHttpServletResponse response, List<Map<String, String>> exected) throws IOException {
    ObjectMapper mapper = new ObjectMapper();
    SimpleAbstractTypeResolver resolver = new SimpleAbstractTypeResolver();
    resolver.addMapping(ListItem.class, Item.class);
    SimpleModule module = new SimpleModule();
    module.setAbstractTypes(resolver);
    mapper.registerModule(module);
    ListItem[] listItems = mapper.readValue(response.getOutputAsString(), ListItem[].class);
    assertEquals(exected.size(), listItems.length);

    for (int i = 0; i < exected.size(); i++) {
        Map<String, String> expectedMap = exected.get(i);
        ListItem listItem = listItems[i];
        assertEquals(expectedMap.get("url"), listItem.getURL());
        assertEquals(expectedMap.get("title"), listItem.getTitle());

    }
}
 
开发者ID:Adobe-Marketing-Cloud,项目名称:aem-core-wcm-components,代码行数:19,代码来源:SearchResultServletTest.java

示例4: initDefaultMapper

import com.fasterxml.jackson.databind.module.SimpleAbstractTypeResolver; //导入依赖的package包/类
/**
 * Initialize the default mapper.
 */
private static void initDefaultMapper() {
	defaultMapper = new ObjectMapper();
	defaultMapper.setDefaultPropertyInclusion(JsonInclude.Value.construct(Include.NON_NULL, Include.ALWAYS));
	defaultMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

	SimpleModule module = new SimpleModule();
	module.addDeserializer(AbstractRestException.class, new RestExceptionDeserializer());
	module.addDeserializer(NodeFieldListItem.class, new NodeFieldListItemDeserializer());
	module.addSerializer(NumberFieldImpl.class, new BasicFieldSerializer<NumberFieldImpl>());
	module.addSerializer(HtmlFieldImpl.class, new BasicFieldSerializer<HtmlFieldImpl>());
	module.addSerializer(StringFieldImpl.class, new BasicFieldSerializer<StringFieldImpl>());
	module.addSerializer(DateFieldImpl.class, new BasicFieldSerializer<DateFieldImpl>());
	module.addSerializer(BooleanFieldImpl.class, new BasicFieldSerializer<BooleanFieldImpl>());
	module.addSerializer(FieldList.class, new FieldListSerializer());
	module.addSerializer(JsonObject.class, new JsonObjectSerializer());
	module.addSerializer(JsonArray.class, new JsonArraySerializer());

	module.addSerializer(FieldMapImpl.class, new JsonSerializer<FieldMapImpl>() {
		@Override
		public void serialize(FieldMapImpl value, JsonGenerator gen, SerializerProvider serializers) throws IOException, JsonProcessingException {
			gen.writeObject(value.getNode());
		}
	});

	module.addDeserializer(JsonObject.class, new JsonObjectDeserializer());
	module.addDeserializer(JsonArray.class, new JsonArrayDeserializer());
	module.addDeserializer(FieldMap.class, new FieldMapDeserializer());
	module.addDeserializer(ExpandableNode.class, new UserNodeReferenceDeserializer());
	module.addDeserializer(ListableField.class, new FieldDeserializer<ListableField>());
	module.addDeserializer(FieldSchema.class, new FieldSchemaDeserializer<FieldSchema>());

	defaultMapper.registerModule(module);
	defaultMapper.registerModule(new SimpleModule("interfaceMapping") {
		private static final long serialVersionUID = -4667167382238425197L;

		@Override
		public void setupModule(SetupContext context) {
			context.addAbstractTypeResolver(new SimpleAbstractTypeResolver().addMapping(Schema.class, SchemaModelImpl.class));
			context.addAbstractTypeResolver(new SimpleAbstractTypeResolver().addMapping(Microschema.class, MicroschemaModelImpl.class));
		}
	});

}
 
开发者ID:gentics,项目名称:mesh,代码行数:47,代码来源:JsonUtil.java


注:本文中的com.fasterxml.jackson.databind.module.SimpleAbstractTypeResolver类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。