Example usage for com.fasterxml.jackson.databind ObjectWriter writeValue

List of usage examples for com.fasterxml.jackson.databind ObjectWriter writeValue

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind ObjectWriter writeValue.

Prototype

public void writeValue(Writer w, Object value)
        throws IOException, JsonGenerationException, JsonMappingException 

Source Link

Document

Method that can be used to serialize any Java value as JSON output, using Writer provided.

Usage

From source file:org.usd.edu.btl.cli.ConvertBioextract.java

public void toBets(String inputS, String output) {
    ObjectMapper mapper = new ObjectMapper(); //create new Jackson Mapper
    File input = new File(inputS);

    BioExtV1 bioExtTool;/*from w  w w  .  j  av a  2s  . c  o m*/

    try {
        //map input json files to iplant class
        bioExtTool = mapper.readValue(input, BioExtV1.class);

        BETSV1 bets = BioExtConverter.toBETS(bioExtTool); //pass the iplant tool spec, convert to bets
        ObjectWriter ow = mapper.writer().withDefaultPrettyPrinter();
        String betsJson = ow.writeValueAsString(bets); //write Json as String
        if (output == null) {
            /*===============PRINT JSON TO CONSOLE AND FILES =================== */
            System.out.println("************************************************\n"
                    + "*********PRINTING OUT CONVERSION************\n"
                    + "----------BioExtract --> Bets--------------\n"
                    + "************************************************\n");
            //print objects as Json using jackson

            System.out.println("=== BioExt TO BETS JSON === \n" + betsJson);

        } else {
            //write to files
            ow.writeValue(new File(output), betsJson);
            System.out.println(output + " has been created successfully");
            System.exit(1);

        }
    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
}

From source file:com.basistech.rosette.dm.json.plain.JsonTest.java

@Test
public void versionCheckPasses() throws Exception {
    StringWriter writer = new StringWriter();
    ObjectMapper mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper());
    ObjectWriter objectWriter = mapper.writer();
    objectWriter.writeValue(writer, referenceTextOldEntities);
    mapper.readValue(writer.toString(), AnnotatedText.class);
}

From source file:com.basistech.rosette.dm.json.plain.JsonTest.java

@Test
public void versionInjected() throws Exception {
    StringWriter writer = new StringWriter();
    ObjectMapper mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper());
    ObjectWriter objectWriter = mapper.writer();
    objectWriter.writeValue(writer, referenceTextOldEntities);
    // to tell that the version is there, we read as a tree
    JsonNode tree = mapper.readTree(writer.toString());
    String version = tree.get("version").asText();
    assertEquals("1.1.0", version);
}

From source file:eu.scape_project.cdx_creator.CDXCreationTask.java

public void createIndex() {
    FileInputStream fileInputStream = null;
    ArchiveReader reader = null;/*from w  w w . j  av  a2 s .c o  m*/
    FileOutputStream outputStream = null;
    try {
        fileInputStream = new FileInputStream(archiveFile);
        reader = ArchiveReaderFactory.getReader(fileInputStream, this.archiveFileName);
        reader.setComputePayloadDigest(config.isCreatePayloadDigest());
        List<CdxArchiveRecord> cdxArchRecords = new ArrayList<CdxArchiveRecord>();
        while (reader.hasNext()) {
            ArchiveRecord archRec = (ArchiveRecord) reader.next();
            CdxArchiveRecord cdxArchRec = CdxArchiveRecord.fromArchiveRecord(archRec);
            cdxArchRec.setContainerFileName(archiveFileName);
            cdxArchRec.setContainerLengthStr(Long.toString(archiveFile.length()));
            cdxArchRecords.add(cdxArchRec);
        }

        CsvMapper mapper = new CsvMapper();
        mapper.setDateFormat(GMTGTechDateFormat);

        String cdxfileCsColumns = config.getCdxfileCsColumns();
        List<String> cdxfileCsColumnsList = Arrays.asList(cdxfileCsColumns.split("\\s*,\\s*"));
        String[] cdxfileCsColumnsArray = cdxfileCsColumnsList.toArray(new String[cdxfileCsColumnsList.size()]);

        CsvSchema.Builder builder = CsvSchema.builder();
        for (String cdxField : cdxfileCsColumnsList) {
            builder.addColumn(cdxField);
        }
        builder.setColumnSeparator(' ');
        CsvSchema schema = builder.build();
        schema = schema.withoutQuoteChar();

        SimpleFilterProvider filterProvider = new SimpleFilterProvider().addFilter("cdxfields",
                FilterExceptFilter.filterOutAllExcept(cdxfileCsColumnsArray));

        ObjectWriter cdxArchRecordsWriter = mapper.writer(filterProvider).withSchema(schema);

        PrintStream pout = null;
        String outputPathStr = config.getOutputStr();
        if (outputPathStr != null) {
            FileOutputStream fos;
            try {
                fos = new FileOutputStream(outputPathStr, true);
                pout = new PrintStream(fos);
                System.setOut(pout);
            } catch (FileNotFoundException ex) {
                LOG.error("File not found error", ex);
            }
        }
        System.out.println(" " + config.getCdxfileCsHeader());

        cdxArchRecordsWriter.writeValue(System.out, cdxArchRecords);

        if (pout != null) {
            pout.close();
        }

    } catch (FileNotFoundException ex) {
        LOG.error("File not found error", ex);
    } catch (IOException ex) {
        LOG.error("I/O Error", ex);
    } finally {
        try {
            if (fileInputStream != null) {
                fileInputStream.close();
            }

            if (outputStream != null) {
                outputStream.close();
            }

        } catch (IOException ex) {
            LOG.error("I/O Error", ex);
        }
    }
}

From source file:com.basistech.rosette.dm.json.plain.JsonTest.java

@Test
public void dataPlainString() throws Exception {
    CharSequence fancyCharSequence = new CharSequence() {
        private final String data = "Hello Polly";

        public String getExtraneousInfo() {
            return "What is this doing here?";
        }/*from w w w .  ja va 2  s  .co m*/

        @Override
        public int length() {
            return data.length();
        }

        @Override
        public char charAt(int index) {
            return data.charAt(index);
        }

        @Override
        public CharSequence subSequence(int start, int end) {
            return data.substring(start, end);
        }

        @Override
        public String toString() {
            return data;
        }
    };

    AnnotatedText.Builder builder = new AnnotatedText.Builder();
    builder.data(fancyCharSequence);
    AnnotatedText text = builder.build();
    StringWriter writer = new StringWriter();
    ObjectMapper mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper());
    ObjectWriter objectWriter = mapper.writer();
    objectWriter.writeValue(writer, text);
    assertFalse(writer.toString().contains("What is this doing here"));
    assertTrue(writer.toString().contains("Hello Polly"));
}

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);/*from w  ww. j  a  va  2s  . c  om*/
    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  ww w  .  ja  v a  2s  .  c  om*/
    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:org.wrml.runtime.format.application.vnd.wrml.design.schema.SchemaDesignFormatter.java

@Override
public void writeModel(final OutputStream out, final Model model, final ModelWriteOptions writeOptions)
        throws ModelWritingException {

    if (!(model instanceof Schema)) {
        throw new ModelWritingException("The \"" + getFormatUri() + "\" format cannot write the model.", null,
                this);
    }//  w  w  w. jav  a  2 s .com

    final Schema schema = (Schema) model;
    final ObjectNode rootNode;
    final ObjectWriter objectWriter;

    try {

        // TODO: Should this ObjectMapper be stored in a field?
        final ObjectMapper objectMapper = new ObjectMapper();
        rootNode = createSchemaDesignObjectNode(objectMapper, schema);
        objectWriter = objectMapper.writer(new DefaultPrettyPrinter());
        objectWriter.writeValue(out, rootNode);
    } catch (final Exception e) {
        throw new ModelWritingException(getClass().getSimpleName()
                + " encounter an error while attempting to write a SchemaDesign.  Message: " + e.getMessage(),
                null, this);

    }

}

From source file:org.seedstack.seed.core.internal.data.DataManagerImpl.java

private void dumpAll(List<DataSetMarker<Object>> dataSetMarker, OutputStream outputStream) {
    try {//from w  w  w.  ja  v a 2s  . co  m
        JsonGenerator jsonGenerator = this.jsonFactory
                .createGenerator(new OutputStreamWriter(outputStream, Charset.forName(UTF_8)));
        ObjectWriter objectWriter = objectMapper.writer();

        jsonGenerator.writeStartArray();

        for (DataSetMarker<Object> objectDataSetMarker : dataSetMarker) {
            // start
            jsonGenerator.writeStartObject();

            // metadata
            jsonGenerator.writeStringField(GROUP, objectDataSetMarker.getGroup());
            jsonGenerator.writeStringField(NAME, objectDataSetMarker.getName());

            // items
            jsonGenerator.writeArrayFieldStart(ITEMS);
            while (objectDataSetMarker.getItems().hasNext()) {
                objectWriter.writeValue(jsonGenerator, objectDataSetMarker.getItems().next());
            }
            jsonGenerator.writeEndArray();

            // end
            jsonGenerator.writeEndObject();
        }

        jsonGenerator.writeEndArray();

        jsonGenerator.flush();
    } catch (Exception e) {
        throw SeedException.wrap(e, DataErrorCode.EXPORT_FAILED);
    }
}

From source file:org.usd.edu.btl.cli.ConvertBets.java

public void toIplant(String inputS, String output) {
    ObjectMapper betsMapper = new ObjectMapper(); //create new Jackson Mapper
    File input = new File(inputS);

    BETSV1 betsTool; //create new seqTool
    ObjectWriter iplantWriter = betsMapper.writer().withDefaultPrettyPrinter();

    //map input json files to iplant class
    try {/*from  w  w w  .  ja  v  a  2 s .  c  o  m*/
        betsTool = betsMapper.readValue(input, BETSV1.class);

        IplantV1 iplantOutput = BETSConverter.toIplant(betsTool);
        String iplantOutputJson = iplantWriter.writeValueAsString(iplantOutput); //write Json as String
        if (output == null) {
            /*===============PRINT JSON TO CONSOLE AND FILES =================== */
            System.err.println("************************************************\n"
                    + "*********PRINTING OUT CONVERSION************\n"
                    + "--------------BETS --> Iplant--------------\n"
                    + "************************************************\n");
            //print objects as Json using jackson

            System.err.println("=== iPlant TO BETS JSON - OUTPUT === \n" + iplantOutputJson);
        } else {
            System.err.println("Writing to file...");
            //write to files
            iplantWriter.writeValue(new File(output), iplantOutput);
            System.err.println(output + " has been created successfully");
        }
    } catch (IOException e) {
        System.out.println(e.getMessage());
    }
}