List of usage examples for com.fasterxml.jackson.databind ObjectMapper writer
public ObjectWriter writer()
From source file:com.basistech.rosette.dm.json.plain.JsonTest.java
@Test public void roundTripOldEntities() throws Exception { StringWriter writer = new StringWriter(); ObjectMapper mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper()); ObjectWriter objectWriter = mapper.writer(); objectWriter.writeValue(writer, referenceTextOldEntities); ObjectReader reader = mapper.readerFor(AnnotatedText.class); AnnotatedText read = reader.readValue(writer.toString()); ListAttribute<BaseNounPhrase> bnpList = read.getBaseNounPhrases(); assertNotNull(bnpList);//w ww . ja va2 s . com assertEquals(1, bnpList.size()); BaseNounPhrase bnp = bnpList.get(0); assertEquals(baseNounPhrase, bnp); ListAttribute<com.basistech.rosette.dm.EntityMention> emList = read.getEntityMentions(); assertNotNull(emList); assertEquals(1, emList.size()); com.basistech.rosette.dm.EntityMention em = emList.get(0); assertEquals(entityMention, em); ListAttribute<RelationshipMention> rmList = read.getRelationshipMentions(); assertNotNull(rmList); assertEquals(1, rmList.size()); RelationshipMention rm = rmList.get(0); assertEquals(relationshipMention, rm); ListAttribute<com.basistech.rosette.dm.ResolvedEntity> resolvedEntityList = read.getResolvedEntities(); assertNotNull(resolvedEntityList); assertEquals(1, resolvedEntityList.size()); com.basistech.rosette.dm.ResolvedEntity e = resolvedEntityList.get(0); assertEquals(resolvedEntity, e); ListAttribute<LanguageDetection> languageDetectionList = read.getLanguageDetectionRegions(); assertNotNull(languageDetectionList); assertEquals(1, languageDetectionList.size()); assertEquals(languageDetectionRegion, languageDetectionList.get(0)); assertEquals(languageDetection, read.getWholeTextLanguageDetection()); ListAttribute<ScriptRegion> scriptRegionList = read.getScriptRegions(); assertNotNull(scriptRegionList); assertEquals(1, scriptRegionList.size()); assertEquals(scriptRegion, scriptRegionList.get(0)); ListAttribute<Sentence> sentences = read.getSentences(); assertNotNull(sentences); assertEquals(sentence, sentences.get(0)); ListAttribute<Token> tokenList = read.getTokens(); assertNotNull(tokenList); assertEquals(1, tokenList.size()); assertEquals(token, tokenList.get(0)); ListAttribute<TranslatedData> dataTranslations = read.getTranslatedData(); assertEquals(germanTranslatedData, dataTranslations.get(0)); assertEquals(spanishTranslatedData, dataTranslations.get(1)); ListAttribute<TranslatedTokens> translatedTokens = read.getTranslatedTokens(); assertEquals(germanTranslation, translatedTokens.get(0)); assertEquals(spanishTranslation, translatedTokens.get(1)); assertEquals(categoryResult, read.getCategorizerResults().get(0)); assertEquals(sentimentResult, read.getSentimentResults().get(0)); assertEquals(topicResult, read.getTopicResults().get(0)); }
From source file:com.basistech.rosette.dm.json.plain.JsonTest.java
@Test public void roundTrip() throws Exception { StringWriter writer = new StringWriter(); ObjectMapper mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper()); ObjectWriter objectWriter = mapper.writer(); objectWriter.writeValue(writer, referenceText); ObjectReader reader = mapper.readerFor(AnnotatedText.class); AnnotatedText read = reader.readValue(writer.toString()); ListAttribute<BaseNounPhrase> bnpList = read.getBaseNounPhrases(); assertNotNull(bnpList);//from w ww .ja va 2 s .co m assertEquals(1, bnpList.size()); BaseNounPhrase bnp = bnpList.get(0); assertEquals(baseNounPhrase, bnp); ListAttribute<Entity> entityList = read.getEntities(); assertNotNull(entityList); assertEquals(1, entityList.size()); Entity en = entityList.get(0); assertEquals(0.4, en.getSalience(), 0.0001); // just make sure the salience field works all around. assertEquals(entity, en); ListAttribute<RelationshipMention> rmList = read.getRelationshipMentions(); assertNotNull(rmList); assertEquals(1, rmList.size()); RelationshipMention rm = rmList.get(0); assertEquals(relationshipMention, rm); ListAttribute<LanguageDetection> languageDetectionList = read.getLanguageDetectionRegions(); assertNotNull(languageDetectionList); assertEquals(1, languageDetectionList.size()); assertEquals(languageDetectionRegion, languageDetectionList.get(0)); assertEquals(languageDetection, read.getWholeTextLanguageDetection()); ListAttribute<ScriptRegion> scriptRegionList = read.getScriptRegions(); assertNotNull(scriptRegionList); assertEquals(1, scriptRegionList.size()); assertEquals(scriptRegion, scriptRegionList.get(0)); ListAttribute<Sentence> sentences = read.getSentences(); assertNotNull(sentences); assertEquals(sentence, sentences.get(0)); ListAttribute<Token> tokenList = read.getTokens(); assertNotNull(tokenList); assertEquals(1, tokenList.size()); assertEquals(token, tokenList.get(0)); ListAttribute<TranslatedData> dataTranslations = read.getTranslatedData(); assertEquals(germanTranslatedData, dataTranslations.get(0)); assertEquals(spanishTranslatedData, dataTranslations.get(1)); ListAttribute<TranslatedTokens> translatedTokens = read.getTranslatedTokens(); assertEquals(germanTranslation, translatedTokens.get(0)); assertEquals(spanishTranslation, translatedTokens.get(1)); assertEquals(categoryResult, read.getCategorizerResults().get(0)); assertEquals(sentimentResult, read.getSentimentResults().get(0)); assertEquals("V", read.getDependencies().get(0).getRelationship()); assertEquals(-1, read.getDependencies().get(0).getGovernorTokenIndex()); assertEquals(0, read.getDependencies().get(0).getDependencyTokenIndex()); assertEquals(topicResult, read.getTopicResults().get(0)); Embeddings readEmbeddings = read.getEmbeddings(); assertEquals(embeddings, readEmbeddings); }
From source file:capital.scalable.restdocs.jackson.FieldDocumentationGeneratorTest.java
@Test public void testGenerateDocumentationForExternalSerializer() throws Exception { // given/*from w w w . ja va 2 s . co m*/ ObjectMapper mapper = createMapper(); JavadocReader javadocReader = mock(JavadocReader.class); when(javadocReader.resolveFieldComment(ExternalSerializer.class, "bigDecimal")).thenReturn("A decimal"); ConstraintReader constraintReader = mock(ConstraintReader.class); SimpleModule testModule = new SimpleModule("TestModule"); testModule.addSerializer(new BigDecimalSerializer()); mapper.registerModule(testModule); FieldDocumentationGenerator generator = new FieldDocumentationGenerator(mapper.writer(), javadocReader, constraintReader); Type type = ExternalSerializer.class; // when List<ExtendedFieldDescriptor> fieldDescriptions = cast( generator.generateDocumentation(type, mapper.getTypeFactory())); // then assertThat(fieldDescriptions.size(), is(1)); assertThat(fieldDescriptions.get(0), is(descriptor("bigDecimal", "Decimal", "A decimal", "true"))); }
From source file:capital.scalable.restdocs.jackson.FieldDocumentationGeneratorTest.java
@Test public void testGenerateDocumentationForRecursiveTypes() throws Exception { // given//from www .ja va2 s . c o m ObjectMapper mapper = createMapper(); JavadocReader javadocReader = mock(JavadocReader.class); when(javadocReader.resolveFieldComment(RecursiveType.class, "value")).thenReturn("Type value"); when(javadocReader.resolveFieldComment(RecursiveType.class, "children")).thenReturn("Child types"); when(javadocReader.resolveFieldComment(RecursiveType.class, "sibling")).thenReturn("Sibling type"); ConstraintReader constraintReader = mock(ConstraintReader.class); FieldDocumentationGenerator generator = new FieldDocumentationGenerator(mapper.writer(), javadocReader, constraintReader); Type type = RecursiveType.class; // when List<ExtendedFieldDescriptor> fieldDescriptions = cast( generator.generateDocumentation(type, mapper.getTypeFactory())); // then assertThat(fieldDescriptions.size(), is(3)); assertThat(fieldDescriptions.get(0), is(descriptor("value", "String", "Type value", "true"))); assertThat(fieldDescriptions.get(1), is(descriptor("children", "Array", "Child types", "true"))); assertThat(fieldDescriptions.get(2), is(descriptor("sibling", "Object", "Sibling type", "true"))); }
From source file:io.druid.query.aggregation.AggregationTestHelper.java
public QueryRunner<Row> makeStringSerdeQueryRunner(final ObjectMapper mapper, final QueryToolChest toolChest, final Query<Row> query, final QueryRunner<Row> baseRunner) { return new QueryRunner<Row>() { @Override/* w w w. ja v a2 s . c o m*/ public Sequence<Row> run(Query<Row> query, Map<String, Object> map) { try { Sequence<Row> resultSeq = baseRunner.run(query, Maps.<String, Object>newHashMap()); final Yielder yielder = resultSeq.toYielder(null, new YieldingAccumulator() { @Override public Object accumulate(Object accumulated, Object in) { yield(); return in; } }); String resultStr = mapper.writer().writeValueAsString(yielder); List resultRows = Lists .transform((List<Row>) mapper.readValue(resultStr, new TypeReference<List<Row>>() { }), toolChest.makePreComputeManipulatorFn(query, MetricManipulatorFns.deserializing())); return Sequences.simple(resultRows); } catch (Exception ex) { throw Throwables.propagate(ex); } } }; }
From source file:capital.scalable.restdocs.jackson.FieldDocumentationGeneratorTest.java
@Test public void testGenerateDocumentationForPrimitiveTypes() throws Exception { // given//from w ww . j a v a 2 s. c o m ObjectMapper mapper = createMapper(); JavadocReader javadocReader = mock(JavadocReader.class); when(javadocReader.resolveFieldComment(PrimitiveTypes.class, "stringField")).thenReturn("A string"); when(javadocReader.resolveFieldComment(PrimitiveTypes.class, "booleanField")).thenReturn("A boolean"); when(javadocReader.resolveFieldComment(PrimitiveTypes.class, "numberField1")).thenReturn("An integer"); when(javadocReader.resolveFieldComment(PrimitiveTypes.class, "numberField2")).thenReturn("A decimal"); ConstraintReader constraintReader = mock(ConstraintReader.class); FieldDocumentationGenerator generator = new FieldDocumentationGenerator(mapper.writer(), javadocReader, constraintReader); Type type = PrimitiveTypes.class; // when List<ExtendedFieldDescriptor> fieldDescriptions = cast( generator.generateDocumentation(type, mapper.getTypeFactory())); // then assertThat(fieldDescriptions.size(), is(4)); assertThat(fieldDescriptions.get(0), is(descriptor("stringField", "String", "A string", "true"))); assertThat(fieldDescriptions.get(1), is(descriptor("booleanField", "Boolean", "A boolean", "true"))); assertThat(fieldDescriptions.get(2), is(descriptor("numberField1", "Integer", "An integer", "true"))); assertThat(fieldDescriptions.get(3), is(descriptor("numberField2", "Decimal", "A decimal", "true"))); }
From source file:capital.scalable.restdocs.jackson.FieldDocumentationGeneratorTest.java
@Test public void testGenerateDocumentationForJacksonAnnotations() throws Exception { // given//w ww. ja va 2 s .c o m ObjectMapper mapper = createMapper(); JavadocReader javadocReader = mock(JavadocReader.class); when(javadocReader.resolveFieldComment(JsonAnnotations.class, "location")).thenReturn("A location"); when(javadocReader.resolveFieldComment(JsonAnnotations.class, "uri")).thenReturn("A uri"); when(javadocReader.resolveMethodComment(JsonAnnotations.class, "getParameter")).thenReturn("A parameter"); when(javadocReader.resolveFieldComment(JsonAnnotations.Meta.class, "headers")).thenReturn("A header map"); ConstraintReader constraintReader = mock(ConstraintReader.class); FieldDocumentationGenerator generator = new FieldDocumentationGenerator(mapper.writer(), javadocReader, constraintReader); Type type = JsonAnnotations.class; // when List<ExtendedFieldDescriptor> fieldDescriptions = cast( generator.generateDocumentation(type, mapper.getTypeFactory())); // then assertThat(fieldDescriptions.size(), is(4)); // @JsonPropertyOrder puts it to first place assertThat(fieldDescriptions.get(0), is(descriptor("uri", "String", "A uri", "true"))); // @JsonProperty assertThat(fieldDescriptions.get(1), is(descriptor("path", "String", "A location", "true"))); // @JsonGetter assertThat(fieldDescriptions.get(2), is(descriptor("param", "String", "A parameter", "true"))); // @JsonUnwrapped assertThat(fieldDescriptions.get(3), is(descriptor("headers", "Map", "A header map", "true"))); }
From source file:capital.scalable.restdocs.jackson.FieldDocumentationGeneratorTest.java
@Test public void testGenerateDocumentationForNestedTypes() throws Exception { // given//from w ww. j a va 2 s . com ObjectMapper mapper = createMapper(); JavadocReader javadocReader = mock(JavadocReader.class); when(javadocReader.resolveFieldComment(FirstLevel.class, "second")).thenReturn("2nd level"); when(javadocReader.resolveFieldComment(SecondLevel.class, "third")).thenReturn("3rd level"); when(javadocReader.resolveFieldComment(ThirdLevel.class, "fourth")).thenReturn("4th level"); when(javadocReader.resolveFieldComment(FourthLevel.class, "fifth")).thenReturn("5th level"); when(javadocReader.resolveFieldComment(FifthLevel.class, "last")).thenReturn("An integer"); ConstraintReader constraintReader = mock(ConstraintReader.class); FieldDocumentationGenerator generator = new FieldDocumentationGenerator(mapper.writer(), javadocReader, constraintReader); Type type = FirstLevel.class; // when List<ExtendedFieldDescriptor> fieldDescriptions = cast( generator.generateDocumentation(type, mapper.getTypeFactory())); // then assertThat(fieldDescriptions.size(), is(5)); assertThat(fieldDescriptions.get(0), is(descriptor("second", "Object", "2nd level", "true"))); assertThat(fieldDescriptions.get(1), is(descriptor("second.third", "Array", "3rd level", "true"))); assertThat(fieldDescriptions.get(2), is(descriptor("second.third[].fourth", "Object", "4th level", "true"))); assertThat(fieldDescriptions.get(3), is(descriptor("second.third[].fourth.fifth", "Array", "5th level", "true"))); assertThat(fieldDescriptions.get(4), is(descriptor("second.third[].fourth.fifth[].last", "Integer", "An integer", "true"))); }
From source file:com.streamsets.datacollector.execution.runner.cluster.ClusterRunner.java
@VisibleForTesting void validateAndSetStateTransition(PipelineStatus toStatus, String message, Map<String, Object> attributes) throws PipelineStoreException, PipelineRunnerException { Utils.checkState(attributes != null, "Attributes cannot be set to null"); PipelineState fromState = getState(); if (fromState.getStatus() == toStatus && toStatus != PipelineStatus.STARTING) { LOG.debug(// ww w. ja v a 2 s . c o m Utils.format("Ignoring status '{}' as this is same as current status", fromState.getStatus())); } else { PipelineState pipelineState; synchronized (this) { fromState = getState(); checkState(VALID_TRANSITIONS.get(fromState.getStatus()).contains(toStatus), ContainerError.CONTAINER_0102, fromState.getStatus(), toStatus); long nextRetryTimeStamp = fromState.getNextRetryTimeStamp(); int retryAttempt = fromState.getRetryAttempt(); if (toStatus == PipelineStatus.RUN_ERROR && shouldRetry) { toStatus = PipelineStatus.RETRY; checkState(VALID_TRANSITIONS.get(fromState.getStatus()).contains(toStatus), ContainerError.CONTAINER_0102, fromState.getStatus(), toStatus); } if (toStatus == PipelineStatus.RETRY && fromState.getStatus() != PipelineStatus.CONNECTING) { retryAttempt = fromState.getRetryAttempt() + 1; if (retryAttempt > maxRetries && maxRetries != -1) { LOG.info("Retry attempt '{}' is greater than max no of retries '{}'", retryAttempt, maxRetries); toStatus = PipelineStatus.RUN_ERROR; retryAttempt = 0; nextRetryTimeStamp = 0; } else { nextRetryTimeStamp = RetryUtils.getNextRetryTimeStamp(retryAttempt, getState().getTimeStamp()); long delay = 0; long currentTime = System.currentTimeMillis(); if (nextRetryTimeStamp > currentTime) { delay = nextRetryTimeStamp - currentTime; } retryFuture = scheduleForRetries(runnerExecutor, delay); } } else if (!toStatus.isActive()) { retryAttempt = 0; nextRetryTimeStamp = 0; } ObjectMapper objectMapper = ObjectMapperFactory.get(); String metricsJSONStr = null; if (!toStatus.isActive() || toStatus == PipelineStatus.DISCONNECTED) { Object metrics = getMetrics(); if (metrics != null) { try { metricsJSONStr = objectMapper.writer().writeValueAsString(metrics); } catch (JsonProcessingException e) { throw new PipelineStoreException(ContainerError.CONTAINER_0210, e.toString(), e); } } if (metricsJSONStr == null) { metricsJSONStr = getState().getMetrics(); } } pipelineState = pipelineStateStore.saveState(user, name, rev, toStatus, message, attributes, getState().getExecutionMode(), metricsJSONStr, retryAttempt, nextRetryTimeStamp); } // This should be out of sync block if (eventListenerManager != null) { eventListenerManager.broadcastStateChange(fromState, pipelineState, ThreadUsage.CLUSTER); } } }