List of usage examples for com.fasterxml.jackson.datatype.joda JodaModule JodaModule
public JodaModule()
From source file:org.springside.examples.showcase.demos.utilities.json.JsonDemo.java
/** * ?,Timestamp??2.0??@JsonFormat?.// w ww . j ava 2 s. com * JodaTime???Timestamp?, JodaTime.toString(). */ @Test public void dateType() { mapper.getMapper().registerModule(new JodaModule()); Date date = new Date(); DateTime dateTime = new DateTime(date); String timestampString = String.valueOf(date.getTime()); String format = "yyyy-MM-dd HH:mm:ss"; String formatedString = new DateTime(date).toString(format); DateBean dateBean = new DateBean(); dateBean.startDate = date; dateBean.endDate = date; dateBean.dateTime = dateTime; // to json String expectedJson = "{\"startDate\":" + timestampString + ",\"endDate\":\"" + formatedString + "\",\"dateTime\":" + timestampString + "}"; assertThat(mapper.toJson(dateBean)).isEqualTo(expectedJson); // from json Date expectedEndDate = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss").parseDateTime(formatedString) .toDate(); DateBean resultBean = mapper.fromJson(expectedJson, DateBean.class); assertThat(resultBean.startDate).isEqualTo(date); assertThat(resultBean.endDate).isEqualTo(expectedEndDate); }
From source file:com.metamx.rdiclient.RdiClientImplTest.java
@Test public void testExceptionOnPost() throws Exception { final ObjectMapper objectMapper = new ObjectMapper().registerModule(new JodaModule()); final Serializer<MmxAuctionSummary> serializer = new JacksonSerializer<>(objectMapper); final RdiClientImpl<MmxAuctionSummary> rdiClient = makeRdiClient(serializer, 1); mockClient.setGoHandler(new GoHandler() { @Override//from w w w .j a v a2 s .co m protected <Intermediate, Final> ListenableFuture<Final> go(Request<Intermediate, Final> request) throws Exception { return Futures.immediateFailedFuture(new IOException("Something Crazy Happened!")); } }.times(4)); rdiClient.start(); final ListenableFuture<RdiResponse> result = rdiClient.send(sampleEventBasic); Exception e = null; try { result.get(); } catch (Exception e2) { e = e2; } Assert.assertTrue(e instanceof ExecutionException); Assert.assertTrue(e.getCause() instanceof RdiException); Assert.assertTrue(e.getCause().getCause() instanceof IOException); rdiClient.close(); }
From source file:com.metamx.rdiclient.RdiClientImplTest.java
@Test public void testExceptionOnPostRecoverable() throws Exception { final ObjectMapper objectMapper = new ObjectMapper().registerModule(new JodaModule()); final Serializer<MmxAuctionSummary> serializer = new JacksonSerializer<>(objectMapper); final RdiClientImpl<MmxAuctionSummary> rdiClient = makeRdiClient(serializer, 1); final AtomicInteger failures = new AtomicInteger(0); mockClient.setGoHandler(new GoHandler() { @Override//from w w w .ja v a2s . co m protected <Intermediate, Final> ListenableFuture<Final> go(Request<Intermediate, Final> request) throws Exception { if (failures.getAndIncrement() == 0) { return Futures.immediateFailedFuture(new IOException("Something Crazy Happened!")); } else { return Futures.immediateFuture((Final) okResponse()); } } }.times(2)); rdiClient.start(); final ListenableFuture<RdiResponse> result = rdiClient.send(sampleEventBasic); Assert.assertEquals(RdiResponse.create(), result.get()); rdiClient.close(); }
From source file:com.thinkbiganalytics.metadata.rest.client.MetadataClient.java
private ObjectMapper createObjectMapper() { ObjectMapper mapper = new ObjectMapper(); mapper.registerModule(new JodaModule()); // TODO Module dependency is causing a conflict somehow. // mapper.registerModule(new JavaTimeModule()); mapper.setSerializationInclusion(Include.NON_NULL); return mapper; }
From source file:org.apache.syncope.client.lib.SyncopeClientFactoryBean.java
protected JacksonJaxbJsonProvider defaultJsonProvider() { ObjectMapper objectMapper = new ObjectMapper(); objectMapper.registerModule(new JodaModule()); objectMapper.configure(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);/*from w ww . j a va2s .c om*/ return new JacksonJaxbJsonProvider(objectMapper, JacksonJaxbJsonProvider.DEFAULT_ANNOTATIONS); }
From source file:org.thelq.stackexchange.api.StackClient.java
public StackClient(String seApiKey) { Preconditions.checkNotNull(seApiKey); this.seApiKey = seApiKey; this.jsonMapper = new ObjectMapper(); jsonMapper.registerModule(new JodaModule()); jsonMapper.registerModule(new GuavaModule()); jsonMapper.setPropertyNamingStrategy(PropertyNamingStrategy.CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES); jsonMapper.registerModule(new SimpleModule() { @Override//from w w w . j a v a 2 s . c o m @SuppressWarnings("unchecked") public void setupModule(SetupContext context) { super.setupModule(context); context.addDeserializers(new Deserializers.Base() { @Override public JsonDeserializer<?> findEnumDeserializer(Class<?> type, DeserializationConfig config, BeanDescription beanDesc) throws JsonMappingException { return new UppercaseEnumDeserializer((Class<Enum<?>>) type); } }); } }); }
From source file:org.versly.rest.wsdoc.AnnotationProcessor.java
String jsonSchemaFromTypeMirror(TypeMirror type) { String serializedSchema = null; if (type.getKind().isPrimitive() || type.getKind() == TypeKind.VOID) { return null; }/*from www . java 2 s . c om*/ // we need the dto class to generate schema using jackson json-schema module // note: Types.erasure() provides canonical names whereas Class.forName() wants a "regular" name, // so forName will fail for nested and inner classes as "regular" names use $ between parent and child. Class dtoClass = null; StringBuffer erasure = new StringBuffer(_typeUtils.erasure(type).toString()); for (boolean done = false; !done;) { try { dtoClass = Class.forName(erasure.toString()); done = true; } catch (ClassNotFoundException e) { if (erasure.lastIndexOf(".") != -1) { erasure.setCharAt(erasure.lastIndexOf("."), '$'); } else { done = true; } } } // if we were able to figure out the dto class, use jackson json-schema module to serialize it Exception e = null; if (dtoClass != null) { try { ObjectMapper m = new ObjectMapper(); m.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING); m.registerModule(new JodaModule()); SchemaFactoryWrapper visitor = new SchemaFactoryWrapper(); m.acceptJsonFormatVisitor(m.constructType(dtoClass), visitor); serializedSchema = m.writeValueAsString(visitor.finalSchema()); } catch (Exception ex) { e = ex; } } // report warning if we were not able to generate schema for non-primitive type if (serializedSchema == null) { this.processingEnv.getMessager().printMessage(Diagnostic.Kind.WARNING, "cannot generate json-schema for class " + type.toString() + " (erasure " + erasure + "), " + ((e != null) ? ("exception: " + e.getMessage()) : "class not found")); } return serializedSchema; }