Example usage for com.fasterxml.jackson.core JsonFactory JsonFactory

List of usage examples for com.fasterxml.jackson.core JsonFactory JsonFactory

Introduction

In this page you can find the example usage for com.fasterxml.jackson.core JsonFactory JsonFactory.

Prototype

public JsonFactory() 

Source Link

Document

Default constructor used to create factory instances.

Usage

From source file:org.apache.usergrid.chop.runner.drivers.ResultsLog.java

@Override
public void open() throws IOException {
    synchronized (isOpen) {
        if (isOpen.compareAndSet(false, true)) {
            resultCount.set(0);//from ww w  .j  av a  2 s  .c o  m

            // write the json header for recording the chop results
            JsonFactory factory = new JsonFactory();
            jgen = factory.createGenerator(new File(resultsFile.get()), JsonEncoding.UTF8);

            if (prettyPrint.get()) {
                jgen.useDefaultPrettyPrinter();
            }

            jgen.setCodec(new ObjectMapper());

            setupJsonStream();

            thread = new Thread(this, "ResultLog Writer");
            thread.start();
        }
    }
}

From source file:com.chalmers.feedlr.parser.TwitterJSONParser.java

/**
 * Parse a JSON response for a list of "tweets" from Twitter's REST API with
 * Jackson's streaming parse method. Although this is a sligthly faster
 * alternative the current build uses the databinding parse, favoring a
 * simplier implementation. This method is thus currently not in use.
 * //from ww w  .  j  a  v  a 2  s .  c o  m
 * @param json
 *            the JSON response from Twitters RESP API
 */
private List<TwitterItem> streamingTwitterParse(String json) {
    long time = System.currentTimeMillis();

    List<TwitterItem> list = new ArrayList<TwitterItem>();

    try {

        if (jfactory == null) {
            jfactory = new JsonFactory();
        }

        jParser = jfactory.createJsonParser(json);

        TwitterItem o = null;
        while (jParser.nextToken() != null) {
            if ("created_at".equals(jParser.getCurrentName())) {
                jParser.nextToken();
                o = new TwitterItem();
                o.setTimestamp(jParser.getText());
            }
            if ("text".equals(jParser.getCurrentName())) {
                jParser.nextToken();
                o.setText(jParser.getText());
            }
            if ("name".equals(jParser.getCurrentName())) {
                jParser.nextToken();
                o.getUser().setUserName(jParser.getText());
            }
            if ("profile_image_url".equals(jParser.getCurrentName())) {
                jParser.nextToken();
                o.getUser().setProfileImageURL(jParser.getText());
                list.add(o);
            }
        }
        jParser.close();

    } catch (JsonGenerationException e) {
        Log.e(getClass().getName(), e.getMessage());
    } catch (JsonMappingException e) {
        Log.e(getClass().getName(), e.getMessage());
    } catch (IOException e) {
        Log.e(getClass().getName(), e.getMessage());
    }

    Log.i(TwitterJSONParser.class.getName(), "Streaming parse");
    Log.i(TwitterJSONParser.class.getName(), "Items: " + list.size());
    Log.i(TwitterJSONParser.class.getName(), "Time in millis: " + (System.currentTimeMillis() - time));

    return list;
}

From source file:org.n52.movingcode.runtime.processors.config.ProcessorConfig.java

/**
 * Properties reader/*from w  w w . j  a v a2 s  .  c  om*/
 * 
 * @return
 */
private static final HashMap<String, ProcessorDescription> readProperties() {
    ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
    InputStream is = classLoader.getResourceAsStream(configFile);

    HashMap<String, ProcessorDescription> processorMap = new HashMap<String, ProcessorDescription>();

    JsonFactory f = new JsonFactory();
    JsonParser jp;

    try {
        jp = f.createParser(is);
        jp.nextToken(); // will return JsonToken.START_OBJECT
        while (jp.nextToken() != END_OBJECT) {
            String field = jp.getCurrentName();

            if (field.equalsIgnoreCase(KEY_PROCESSORS)) {
                // get next token, make sure it is the beginning of an array
                if (jp.nextToken() != START_ARRAY) {
                    break;
                }

                while (jp.nextToken() != END_ARRAY) {
                    // do the parsing
                    if (jp.getCurrentToken() == START_OBJECT) {
                        ProcessorDescription p = parseProcessorJSON(jp);
                        // only add those processor that have a valid ID
                        if (p.getId() != null) {
                            processorMap.put(p.getId(), p);
                        }
                    }

                }

            } else {
                if (field.equalsIgnoreCase(KEY_DEFAULTS)) {
                    // parse defaults
                    ProcessorDescription p = parseProcessorJSON(jp);
                    p.setId(DEFAULT_PROCESSOR_CONFIG_ID);
                    processorMap.put(p.getId(), p);
                }
            }

        }
    } catch (JsonParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return processorMap;
}

From source file:org.oscim.tiling.source.geojson.GeoJsonTileDecoder.java

public GeoJsonTileDecoder(GeoJsonTileSource tileSource) {
    mTileSource = tileSource;/*from  ww  w  .j  a v  a 2s. c o  m*/
    mTagMap = new LinkedHashMap<String, Object>();
    mJsonFactory = new JsonFactory();

    mMapElement = new MapElement();
    mMapElement.layer = 5;
}

From source file:com.loopj.android.http.sample.PersistentCookiesSample.java

@Override
public ResponseHandlerInterface getResponseHandler() {
    return new BaseJsonHttpResponseHandler<SampleJSON>() {
        @Override/*from w  w  w .j  a v a2  s  .  c  o m*/
        public void onStart() {
            clearOutputs();
        }

        @Override
        public void onSuccess(int statusCode, Header[] headers, String rawJsonResponse, SampleJSON response) {
            debugHeaders(LOG_TAG, headers);
            debugStatusCode(LOG_TAG, statusCode);
            if (response != null) {
                debugResponse(LOG_TAG, rawJsonResponse);
            }
        }

        @Override
        public void onFailure(int statusCode, Header[] headers, Throwable throwable, String rawJsonData,
                SampleJSON errorResponse) {
            debugHeaders(LOG_TAG, headers);
            debugStatusCode(LOG_TAG, statusCode);
            debugThrowable(LOG_TAG, throwable);
            if (errorResponse != null) {
                debugResponse(LOG_TAG, rawJsonData);
            }
        }

        @Override
        protected SampleJSON parseResponse(String rawJsonData, boolean isFailure) throws Throwable {
            return new ObjectMapper().readValues(new JsonFactory().createParser(rawJsonData), SampleJSON.class)
                    .next();
        }
    };
}

From source file:org.eclipse.winery.repository.resources.entitytypes.relationshiptypes.VisualAppearanceResource.java

@GET
@RestDoc(methodDescription = "@return JSON object to be used at jsPlumb.registerConnectionType('NAME', <data>)")
@Produces(MediaType.APPLICATION_JSON)/*from w w w .  jav a2s . c o m*/
public Response getConnectionTypeForJsPlumbData() {
    JsonFactory jsonFactory = new JsonFactory();
    StringWriter sw = new StringWriter();
    try {
        JsonGenerator jg = jsonFactory.createGenerator(sw);
        jg.writeStartObject();

        jg.writeFieldName("connector");
        jg.writeString("Flowchart");

        jg.writeFieldName("paintStyle");
        jg.writeStartObject();
        jg.writeFieldName("lineWidth");
        jg.writeNumber(this.getLineWidth());
        jg.writeFieldName("strokeStyle");
        jg.writeObject(this.getColor());
        String dash = this.getDash();
        if (!StringUtils.isEmpty(dash)) {
            String dashStyle = null;
            switch (dash) {
            case "dotted":
                dashStyle = "1 5";
                break;
            case "dotted2":
                dashStyle = "3 4";
                break;
            case "plain":
                // default works
                // otherwise, "1 0" can be used
                break;
            }
            if (dashStyle != null) {
                jg.writeStringField("dashstyle", dashStyle);
            }
        }
        jg.writeEndObject();

        jg.writeFieldName("hoverPaintStyle");
        jg.writeStartObject();
        jg.writeFieldName("strokeStyle");
        jg.writeObject(this.getHoverColor());
        jg.writeEndObject();

        // BEGIN: Overlays

        jg.writeFieldName("overlays");
        jg.writeStartArray();

        // source arrow head
        String head = this.getSourceArrowHead();
        if (!head.equals("none")) {
            jg.writeStartArray();
            jg.writeString(head);

            jg.writeStartObject();

            jg.writeFieldName("location");
            jg.writeNumber(0);

            // arrow should point towards the node and not away from it
            jg.writeFieldName("direction");
            jg.writeNumber(-1);

            jg.writeFieldName("width");
            jg.writeNumber(20);

            jg.writeFieldName("length");
            jg.writeNumber(12);

            jg.writeEndObject();
            jg.writeEndArray();
        }

        // target arrow head
        head = this.getTargetArrowHead();
        if (!head.equals("none")) {
            jg.writeStartArray();
            jg.writeString(head);
            jg.writeStartObject();
            jg.writeFieldName("location");
            jg.writeNumber(1);
            jg.writeFieldName("width");
            jg.writeNumber(20);
            jg.writeFieldName("length");
            jg.writeNumber(12);
            jg.writeEndObject();
            jg.writeEndArray();
        }

        // Type in brackets on the arrow
        jg.writeStartArray();
        jg.writeString("Label");
        jg.writeStartObject();
        jg.writeStringField("id", "label");
        //jg.writeStringField("label", "(" + ((RelationshipTypeResource) this.res).getName() + ")");
        jg.writeStringField("label", "");
        jg.writeStringField("cssClass", "relationshipTypeLabel");
        jg.writeFieldName("location");
        jg.writeNumber(0.5);
        jg.writeEndObject();
        jg.writeEndArray();

        jg.writeEndArray();

        // END: Overlays

        jg.writeEndObject();

        jg.close();
    } catch (Exception e) {
        VisualAppearanceResource.logger.error(e.getMessage(), e);
        return Response.status(Status.INTERNAL_SERVER_ERROR).entity(e).build();
    }
    String res = sw.toString();
    return Response.ok(res).build();
}

From source file:com.googlecode.jmxtrans.model.output.SensuWriterFactory.java

@Override
public ResultTransformerOutputWriter<WriterPoolOutputWriter<SensuWriter2>> create() {
    return ResultTransformerOutputWriter
            .booleanToNumber(booleanAsNumber,
                    TcpOutputWriterBuilder
                            .builder(server,
                                    new SensuWriter2(new GraphiteWriter2(typeNames, rootPrefix),
                                            new JsonFactory()))
                            .setFlushStrategy(flushStrategy).setPoolSize(poolSize).build());
}

From source file:org.dswarm.xsd2jsonschema.model.JSRoot.java

public String render() throws IOException {
    final JsonFactory jsonFactory = new JsonFactory();
    final StringWriter writer = new StringWriter();

    final JsonGenerator generator = jsonFactory.createGenerator(writer);
    generator.setPrettyPrinter(new DefaultPrettyPrinter());

    render(generator);/*ww w.java  2 s  .  c  om*/

    return writer.getBuffer().toString();
}

From source file:de.odysseus.staxon.json.stream.jackson.JacksonStreamTargetTest.java

@Test
public void testString() throws IOException {
    StringWriter writer = new StringWriter();
    JacksonStreamTarget target = new JacksonStreamTarget(new JsonFactory().createGenerator(writer));

    target.startArray();/*ww w .ja  va  2 s . c om*/
    target.value("");
    target.value("abc");
    target.value("\b\f\n\r\t");
    target.value("\"");
    target.value("\\");
    target.value("\u001F");
    target.endArray();

    target.close();

    Assert.assertEquals("[\"\",\"abc\",\"\\b\\f\\n\\r\\t\",\"\\\"\",\"\\\\\",\"\\u001F\"]", writer.toString());
}

From source file:com.quinsoft.zeidon.standardoe.WriteOisToJsonStream.java

@Override
public void writeToStream(SerializeOi options, Writer writer) {
    this.viewList = options.getViewList();
    this.options = options;
    if (options.getFlags() == null)
        flags = EnumSet.noneOf(WriteOiFlags.class);
    else/*w ww. j a  v  a  2s .c  om*/
        flags = options.getFlags();
    if (!flags.contains(WriteOiFlags.INCREMENTAL))
        throw new ZeidonException("This JSON stream writer intended for writing incremental.");

    // Create a set of all the OIs and turn off the record owner flag.  The record owner
    // flag will be used to determine if a linked EI has been written to the stream.
    for (View view : viewList) {
        ObjectInstance oi = ((InternalView) view).getViewImpl().getObjectInstance();
        ois.add(oi);
        for (EntityInstanceImpl ei = oi.getRootEntityInstance(); ei != null; ei = ei.getNextTwin())
            ei.setRecordOwner(false);
    }

    JsonFactory jsonF = new JsonFactory();
    try {
        jg = jsonF.createGenerator(writer);
        if (!options.isCompressed())
            jg.useDefaultPrettyPrinter(); // enable indentation just to make debug/testing easier

        jg.writeStartObject();

        // Write meta info for entire JSON object.
        jg.writeObjectFieldStart(".meta");
        jg.writeStringField("version", VERSION);
        if (options.isWriteDate())
            jg.writeStringField("datetime", new LocalDateTime().toString());
        jg.writeEndObject();

        jg.writeArrayFieldStart("OIs");

        for (View view : viewList) {
            currentView = view;
            jg.writeStartObject();
            writeOi(view);
            jg.writeEndObject();
        }
        jg.writeEndArray();
        jg.writeEndObject();
        jg.close();
    } catch (Exception e) {
        throw ZeidonException.wrapException(e);
    }
}