Example usage for com.fasterxml.jackson.databind.node JsonNodeFactory objectNode

List of usage examples for com.fasterxml.jackson.databind.node JsonNodeFactory objectNode

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind.node JsonNodeFactory objectNode.

Prototype

public ObjectNode objectNode() 

Source Link

Usage

From source file:org.apache.streams.rss.serializer.SyndEntrySerializer.java

private void serializeSource(ObjectNode root, JsonNodeFactory factory, SyndFeed source) {
    if (source == null)
        return;//from   ww w  .  j av a 2  s.co m
    ObjectNode sourceNode = factory.objectNode();
    serializeString(source.getAuthor(), "author", sourceNode);
    serializeListOfStrings(source.getAuthors(), "authors", sourceNode, factory);
    serializeCategories(sourceNode, factory, source.getCategories());
    serializeString(source.getCopyright(), "copyright", sourceNode);
    serializeListOfStrings(source.getContributors(), "contributors", sourceNode, factory);
    serializeString(source.getDescription(), "description", sourceNode);
    serializeDescription(sourceNode, factory, source.getDescriptionEx());
    // source.getEntries(); wtf?
    serializeString(source.getFeedType(), "feedType", sourceNode);
    serializeImage(sourceNode, factory, source.getImage());
    serializeForeignMarkUp(sourceNode, factory, source.getForeignMarkup());
    serializeString(source.getLanguage(), "language", sourceNode);
    serializeString(source.getLink(), "link", sourceNode);
    serializeListOfStrings(source.getLinks(), "links", sourceNode, factory);
    serializeModules(sourceNode, factory, source.getModules());
    serializeDate(sourceNode, source.getPublishedDate(), "publishedDate");
    serializeString(source.getTitle(), "title", sourceNode);
    serializeString(source.getUri(), "uri", sourceNode);

    root.put("source", sourceNode);
}

From source file:org.kitesdk.apps.streaming.StreamDescription.java

private TreeNode toJson() {

    JsonNodeFactory js = JsonNodeFactory.instance;

    ObjectNode root = js.objectNode();

    root.put(NAME, getJobName());/*from ww w.j  av  a  2s .  c  om*/
    root.put(JOBCLASS, getJobClass().getName());

    ArrayNode streamsArray = js.arrayNode();

    for (Stream stream : getStreams().values()) {

        ObjectNode streamNode = streamsArray.addObject();

        streamNode.put(NAME, stream.getName());

        ObjectNode properties = js.objectNode();

        for (Map.Entry<String, String> prop : stream.getProperties().entrySet()) {

            properties.put(prop.getKey(), prop.getValue());
        }

        streamNode.put(PROPS, properties);
    }

    root.put(STREAMS, streamsArray);

    ArrayNode viewsArray = js.arrayNode();

    for (Map.Entry<String, URI> view : getViewUris().entrySet()) {

        ObjectNode viewNode = viewsArray.addObject();

        viewNode.put(NAME, view.getKey());
        viewNode.put(URI_PROP, view.getValue().toString());
    }

    root.put(VIEWS, viewsArray);

    return root;
}

From source file:com.opentok.util.HttpClient.java

public String startArchive(String sessionId, ArchiveProperties properties) throws OpenTokException {
    String responseString = null;
    Future<Response> request = null;
    String requestBody = null;/*  ww  w .  j  a  va  2  s  .  c  o  m*/
    // TODO: maybe use a StringBuilder?
    String url = this.apiUrl + "/v2/partner/" + this.apiKey + "/archive";

    JsonNodeFactory nodeFactory = JsonNodeFactory.instance;
    ObjectNode requestJson = nodeFactory.objectNode();
    requestJson.put("sessionId", sessionId);
    requestJson.put("hasVideo", properties.hasVideo());
    requestJson.put("hasAudio", properties.hasAudio());
    requestJson.put("outputMode", properties.outputMode().toString());

    if (properties.name() != null) {
        requestJson.put("name", properties.name());
    }
    try {
        requestBody = new ObjectMapper().writeValueAsString(requestJson);
    } catch (JsonProcessingException e) {
        throw new OpenTokException("Could not start an OpenTok Archive. The JSON body encoding failed.", e);
    }
    try {
        request = this.preparePost(url).setBody(requestBody).setHeader("Content-Type", "application/json")
                .execute();
    } catch (IOException e) {
        throw new RequestException("Could not start an OpenTok Archive.", e);
    }

    try {
        Response response = request.get();
        switch (response.getStatusCode()) {
        case 200:
            responseString = response.getResponseBody();
            break;
        case 403:
            throw new RequestException("Could not start an OpenTok Archive. The request was not authorized.");
        case 404:
            throw new RequestException("Could not start an OpenTok Archive. The sessionId does not exist. "
                    + "sessionId = " + sessionId);
        case 409:
            throw new RequestException("Could not start an OpenTok Archive. The session is either "
                    + "peer-to-peer or already recording. sessionId = " + sessionId);
        case 500:
            throw new RequestException("Could not start an OpenTok Archive. A server error occurred.");
        default:
            throw new RequestException("Could not start an OpenTok Archive. The server response was invalid."
                    + " response code: " + response.getStatusCode());
        }

        // if we only wanted Java 7 and above, we could DRY this into one catch clause
    } catch (InterruptedException e) {
        throw new RequestException("Could not start an OpenTok Archive.", e);
    } catch (ExecutionException e) {
        throw new RequestException("Could not start an OpenTok Archive.", e);
    } catch (IOException e) {
        throw new RequestException("Could not start an OpenTok Archive.", e);
    }
    return responseString;
}

From source file:edu.usd.btl.REST.CategoriesResource.java

@Path("/test")
@GET//from ww w  .j  a v a  2s.  co m
@Produces("application/json")
public String getTestJson() throws Exception {
    // Create the node factory that gives us nodes.
    JsonNodeFactory factory = new JsonNodeFactory(false);

    // create a json factory to write the treenode as json. for the example
    // we just write to console
    JsonFactory jsonFactory = new JsonFactory();
    JsonGenerator generator = jsonFactory.createGenerator(System.out);
    ObjectMapper mapper = new ObjectMapper();

    // the root node - album
    JsonNode album = factory.objectNode();
    mapper.writeTree(generator, album);

    return "null";
}

From source file:squash.booking.lambdas.core.BackupManager.java

@Override
public final ImmutablePair<List<Booking>, List<BookingRule>> backupAllBookingsAndBookingRules()
        throws Exception {

    if (!initialised) {
        throw new IllegalStateException("The backup manager has not been initialised");
    }/*from   w w  w.  jav  a  2  s  . co m*/

    // Encode bookings and booking rules as JSON
    JsonNodeFactory factory = new JsonNodeFactory(false);
    // Create a json factory to write the treenode as json.
    JsonFactory jsonFactory = new JsonFactory();
    ObjectNode rootNode = factory.objectNode();

    ArrayNode bookingsNode = rootNode.putArray("bookings");
    List<Booking> bookings = bookingManager.getAllBookings(false);
    for (Booking booking : bookings) {
        bookingsNode.add((JsonNode) (mapper.valueToTree(booking)));
    }

    ArrayNode bookingRulesNode = rootNode.putArray("bookingRules");
    List<BookingRule> bookingRules = ruleManager.getRules(false);
    for (BookingRule bookingRule : bookingRules) {
        bookingRulesNode.add((JsonNode) (mapper.valueToTree(bookingRule)));
    }

    // Add this, as will be needed for restore in most common case.
    rootNode.put("clearBeforeRestore", true);

    ByteArrayOutputStream backupDataStream = new ByteArrayOutputStream();
    PrintStream printStream = new PrintStream(backupDataStream);
    try (JsonGenerator generator = jsonFactory.createGenerator(printStream)) {
        mapper.writeTree(generator, rootNode);
    }
    String backupString = backupDataStream.toString(StandardCharsets.UTF_8.name());

    logger.log("Backing up all bookings and booking rules to S3 bucket");
    IS3TransferManager transferManager = getS3TransferManager();
    byte[] backupAsBytes = backupString.getBytes(StandardCharsets.UTF_8);
    ByteArrayInputStream backupAsStream = new ByteArrayInputStream(backupAsBytes);
    ObjectMetadata metadata = new ObjectMetadata();
    metadata.setContentLength(backupAsBytes.length);
    PutObjectRequest putObjectRequest = new PutObjectRequest(databaseBackupBucketName,
            "AllBookingsAndBookingRules", backupAsStream, metadata);
    TransferUtils.waitForS3Transfer(transferManager.upload(putObjectRequest), logger);
    logger.log("Backed up all bookings and booking rules to S3 bucket: " + backupString);

    // Backup to the SNS topic
    logger.log("Backing up all bookings and booking rules to SNS topic: " + adminSnsTopicArn);
    getSNSClient().publish(adminSnsTopicArn, backupString, "Sqawsh all-bookings and booking rules backup");

    return new ImmutablePair<>(bookings, bookingRules);
}

From source file:com.redhat.lightblue.eval.Projector.java

/**
 * Projects a document// ww  w.  j  av  a  2s.  co m
 */
public JsonDoc project(JsonDoc doc, JsonNodeFactory factory) {
    JsonNodeCursor cursor = doc.cursor();
    cursor.firstChild();

    ObjectNode root = (ObjectNode) project(factory, rootMdPath, rootMdNode, cursor,
            new QueryEvaluationContext(doc.getRoot()), false);
    if (root == null)
        root = factory.objectNode();
    return new JsonDoc(root);
}

From source file:io.gravitee.management.service.ApiServiceTest.java

private EventEntity mockEvent(EventType eventType) throws Exception {
    final JsonNodeFactory factory = JsonNodeFactory.instance;
    ObjectNode node = factory.objectNode();
    node.set("id", factory.textNode(API_ID));

    Map<String, String> properties = new HashMap<String, String>();
    properties.put(Event.EventProperties.API_ID.getValue(), API_ID);
    properties.put(Event.EventProperties.USERNAME.getValue(), USER_NAME);

    Api api = new Api();
    api.setId(API_ID);/*w ww. jav a2  s. com*/

    EventEntity event = new EventEntity();
    event.setType(eventType);
    event.setId(UUID.randomUUID().toString());
    event.setPayload(objectMapper.writeValueAsString(api));
    event.setCreatedAt(new Date());
    event.setUpdatedAt(event.getCreatedAt());
    event.setProperties(properties);

    return event;
}

From source file:org.apache.streams.rss.serializer.SyndEntrySerializer.java

private void serializeContents(ObjectNode root, JsonNodeFactory factory, List contents) {
    if (contents == null || contents.size() == 0)
        return;/*  ww w  . j  a v  a 2s.c o  m*/
    ArrayNode contentsArray = factory.arrayNode();
    for (Object obj : contents) {
        ObjectNode content = factory.objectNode();
        if (obj instanceof Content) {
            Content rssContent = (Content) obj;
            content.put("type", rssContent.getType());
            content.put("value", rssContent.getValue());
        }
        if (obj instanceof com.sun.syndication.feed.atom.Content) {
            com.sun.syndication.feed.atom.Content atomContent = (com.sun.syndication.feed.atom.Content) obj;
            content.put("type", atomContent.getType());
            content.put("value", atomContent.getValue());
            content.put("mode", atomContent.getMode());
            content.put("src", atomContent.getSrc());
        }
        contentsArray.add(content);
    }
    root.put("contents", contentsArray);
}

From source file:org.apache.streams.rss.serializer.SyndEntrySerializer.java

private void serializeCategories(ObjectNode root, JsonNodeFactory factory, List categories) {
    if (categories == null || categories.size() == 0)
        return;//from ww  w  .j av  a 2s  . co m
    ArrayNode cats = factory.arrayNode();
    for (Object obj : categories) {
        if (obj instanceof Category) {
            ObjectNode catNode = factory.objectNode();
            Category category = (Category) obj;
            if (category.getDomain() != null)
                catNode.put("domain", category.getDomain());
            if (category.getValue() != null)
                catNode.put("value", category.getValue());
            cats.add(catNode);
        } else if (obj instanceof com.sun.syndication.feed.atom.Category) {
            com.sun.syndication.feed.atom.Category category = (com.sun.syndication.feed.atom.Category) obj;
            ObjectNode catNode = factory.objectNode();
            if (category.getLabel() != null)
                catNode.put("label", category.getLabel());
            if (category.getScheme() != null)
                catNode.put("scheme", category.getScheme());
            if (category.getSchemeResolved() != null)
                catNode.put("schemeResolved", category.getSchemeResolved());
            if (category.getTerm() != null)
                catNode.put("term", category.getTerm());
            cats.add(catNode);
        }
    }
    root.put("categories", cats);
}

From source file:org.apache.streams.rss.serializer.SyndEntrySerializer.java

private void serializeEnclosures(ObjectNode root, JsonNodeFactory factory, List enclosures) {
    if (enclosures == null || enclosures.size() == 0)
        return;//from w  ww  . j  a v a2s.c om
    ArrayNode encls = factory.arrayNode();
    for (Object obj : enclosures) {
        if (obj instanceof Enclosure) {
            Enclosure enclosure = (Enclosure) obj;
            ObjectNode encl = factory.objectNode();
            if (enclosure.getType() != null)
                encl.put("type", enclosure.getType());
            if (enclosure.getUrl() != null)
                encl.put("url", enclosure.getUrl());
            encl.put("length", enclosure.getLength());
            encls.add(encl);
        } else if (obj instanceof SyndEnclosure) {
            SyndEnclosure enclosure = (SyndEnclosure) obj;
            ObjectNode encl = factory.objectNode();
            if (enclosure.getType() != null)
                encl.put("type", enclosure.getType());
            if (enclosure.getUrl() != null)
                encl.put("url", enclosure.getUrl());
            encl.put("length", enclosure.getLength());
            encls.add(encl);
        } else {
            LOGGER.warn("serializeEnclosures does not handle type : {}", obj.getClass().toString());
        }
    }
    root.put("enclosures", encls);
}