List of usage examples for com.fasterxml.jackson.databind.module SimpleAbstractTypeResolver SimpleAbstractTypeResolver
SimpleAbstractTypeResolver
From source file:ws.salient.aws.databind.AmazonModule.java
@Override public void setupModule(SetupContext context) { context.addAbstractTypeResolver(//from ww w . j av a 2 s. c o m new SimpleAbstractTypeResolver().addMapping(AWSCredentials.class, BasicAWSCredentials.class)); context.setMixInAnnotations(BasicAWSCredentials.class, BasicAWSCredentialsMixIn.class); context.setMixInAnnotations(AmazonWebServiceRequest.class, AmazonWebServiceRequestMixIn.class); context.setMixInAnnotations(AmazonWebServiceResponse.class, AmazonWebServiceResponseMixIn.class); // AWS Lambda context.setMixInAnnotations(LambdaFunctionException.class, LambdaFunctionExceptionMixIn.class); }
From source file:org.springframework.cloud.dataflow.server.stream.SkipperStreamDeployer.java
public static List<AppStatus> deserializeAppStatus(String platformStatus) { try {/*w ww . j ava2s .c o m*/ if (platformStatus != null) { 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>>() { }; return mapper.readValue(platformStatus, typeRef); } return new ArrayList<AppStatus>(); } catch (Exception e) { logger.error("Could not parse Skipper Platform Status JSON [" + platformStatus + "]. " + "Exception message = " + e.getMessage()); return new ArrayList<AppStatus>(); } }