Example usage for com.fasterxml.jackson.core JsonGenerator writeEndArray

List of usage examples for com.fasterxml.jackson.core JsonGenerator writeEndArray

Introduction

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

Prototype

public abstract void writeEndArray() throws IOException, JsonGenerationException;

Source Link

Document

Method for writing closing marker of a JSON Array value (character ']'; plus possible white space decoration if pretty-printing is enabled).

Usage

From source file:edu.usd.btl.ontology.WriteTree.java

public static void main(String[] args) {

    try {/* w  w w. j  av a2  s.c o m*/

        JsonFactory jfactory = new JsonFactory();

        /**
         * * write to file **
         */
        JsonGenerator jGenerator = jfactory.createJsonGenerator(
                new File("C:\\Users\\Tyler\\Documents\\GitHub\\BTL\\src\\user.json"), JsonEncoding.UTF8);
        jGenerator.writeStartObject(); // {

        jGenerator.writeStringField("name", "mkyong"); // "name" : "mkyong"
        jGenerator.writeNumberField("age", 29); // "age" : 29

        jGenerator.writeFieldName("messages"); // "messages" :
        jGenerator.writeStartArray(); // [

        jGenerator.writeString("msg 4134134"); // "msg 1"
        jGenerator.writeString("msg 2"); // "msg 2"
        jGenerator.writeString("msg 3"); // "msg 3"

        jGenerator.writeEndArray(); // ]

        jGenerator.writeEndObject(); // }

        jGenerator.close();

    } catch (JsonGenerationException e) {

        e.printStackTrace();

    } catch (JsonMappingException e) {

        e.printStackTrace();

    } catch (IOException e) {

        e.printStackTrace();

    }

}

From source file:Service.java

public static void main(String[] args) {

    StringWriter sw = new StringWriter();
    try {/*from   www.j ava 2  s. co  m*/
        JsonGenerator g = factory.createGenerator(sw);
        g.writeStartObject();
        g.writeNumberField("code", 200);
        g.writeArrayFieldStart("languages");
        for (Language l : Languages.get()) {
            g.writeStartObject();
            g.writeStringField("name", l.getName());
            g.writeStringField("locale", l.getLocaleWithCountryAndVariant().toString());
            g.writeEndObject();
        }
        g.writeEndArray();
        g.writeEndObject();
        g.flush();
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
    String languagesResponse = sw.toString();

    String errorResponse = codeResponse(500);
    String okResponse = codeResponse(200);

    Scanner sc = new Scanner(System.in);
    while (sc.hasNextLine()) {
        try {
            String line = sc.nextLine();
            JsonParser p = factory.createParser(line);
            String cmd = "";
            String text = "";
            String language = "";
            while (p.nextToken() != JsonToken.END_OBJECT) {
                String name = p.getCurrentName();
                if ("command".equals(name)) {
                    p.nextToken();
                    cmd = p.getText();
                }
                if ("text".equals(name)) {
                    p.nextToken();
                    text = p.getText();
                }
                if ("language".equals(name)) {
                    p.nextToken();
                    language = p.getText();
                }
            }
            p.close();

            if ("check".equals(cmd)) {
                sw = new StringWriter();
                JsonGenerator g = factory.createGenerator(sw);
                g.writeStartObject();
                g.writeNumberField("code", 200);
                g.writeArrayFieldStart("matches");
                for (RuleMatch match : new JLanguageTool(Languages.getLanguageForShortName(language))
                        .check(text)) {
                    g.writeStartObject();

                    g.writeNumberField("offset", match.getFromPos());

                    g.writeNumberField("length", match.getToPos() - match.getFromPos());

                    g.writeStringField("message", substituteSuggestion(match.getMessage()));

                    if (match.getShortMessage() != null) {
                        g.writeStringField("shortMessage", substituteSuggestion(match.getShortMessage()));
                    }

                    g.writeArrayFieldStart("replacements");
                    for (String replacement : match.getSuggestedReplacements()) {
                        g.writeString(replacement);
                    }
                    g.writeEndArray();

                    Rule rule = match.getRule();

                    g.writeStringField("ruleId", rule.getId());

                    if (rule instanceof AbstractPatternRule) {
                        String subId = ((AbstractPatternRule) rule).getSubId();
                        if (subId != null) {
                            g.writeStringField("ruleSubId", subId);
                        }
                    }

                    g.writeStringField("ruleDescription", rule.getDescription());

                    g.writeStringField("ruleIssueType", rule.getLocQualityIssueType().toString());

                    if (rule.getUrl() != null) {
                        g.writeArrayFieldStart("ruleUrls");
                        g.writeString(rule.getUrl().toString());
                        g.writeEndArray();
                    }

                    Category category = rule.getCategory();
                    CategoryId catId = category.getId();
                    if (catId != null) {
                        g.writeStringField("ruleCategoryId", catId.toString());

                        g.writeStringField("ruleCategoryName", category.getName());
                    }

                    g.writeEndObject();
                }
                g.writeEndArray();
                g.writeEndObject();
                g.flush();
                System.out.println(sw.toString());
            } else if ("languages".equals(cmd)) {
                System.out.println(languagesResponse);
            } else if ("quit".equals(cmd)) {
                System.out.println(okResponse);
                return;
            } else {
                System.out.println(errorResponse);
            }
        } catch (Exception e) {
            System.out.println(errorResponse);
        }
    }
}

From source file:org.datagator.tools.importer.Main.java

public static void main(String[] args) throws IOException {

    int columnHeaders = 0; // cli input
    int rowHeaders = 0; // cli input

    try {/*w ww  .  ja  v  a 2s .  c om*/
        CommandLine cmds = parser.parse(opts, args);
        if (cmds.hasOption("filter")) {
            throw new UnsupportedOperationException("Not supported yet.");
        }
        if (cmds.hasOption("layout")) {
            String[] layout = cmds.getOptionValues("layout");
            if ((layout == null) || (layout.length != 2)) {
                throw new IllegalArgumentException("Bad layout.");
            }
            try {
                columnHeaders = Integer.valueOf(layout[0]);
                rowHeaders = Integer.valueOf(layout[1]);
                if ((columnHeaders < 0) || (rowHeaders < 0)) {
                    throw new IllegalArgumentException("Bad layout.");
                }
            } catch (NumberFormatException ex) {
                throw new IllegalArgumentException(ex);
            }
        }
        if (cmds.hasOption("help")) {
            help.printHelp("importer", opts, true);
            System.exit(EX_OK);
        }
        // positional arguments, i.e., input file name(s)
        args = cmds.getArgs();
    } catch (ParseException ex) {
        throw new IllegalArgumentException(ex);
    } catch (IllegalArgumentException ex) {
        help.printHelp("importer", opts, true);
        throw ex;
    }

    JsonGenerator jg = json.createGenerator(System.out, JsonEncoding.UTF8);
    jg.setPrettyPrinter(new StandardPrinter());

    final Extractor extractor;

    if (args.length == 1) {
        extractor = new FileExtractor(new File(args[0]));
    } else if (args.length > 1) {
        throw new UnsupportedOperationException("Not supported yet.");
    } else {
        throw new IllegalArgumentException("Missing input.");
    }

    int columnsCount = -1;
    int matrixCount = 0;

    ArrayDeque<String> stack = new ArrayDeque<String>();

    AtomType token = extractor.nextAtom();
    while (token != null) {
        switch (token) {
        case FLOAT:
        case INTEGER:
        case STRING:
        case NULL:
            jg.writeObject(extractor.getCurrentAtomData());
            break;
        case START_RECORD:
            jg.writeStartArray();
            break;
        case END_RECORD:
            int _numFields = (Integer) extractor.getCurrentAtomData();
            if (columnsCount < 0) {
                columnsCount = _numFields;
            } else if (columnsCount != _numFields) {
                throw new RuntimeException(String.format("row %s has different length than previous rows",
                        String.valueOf(_numFields - 1)));
            }
            jg.writeEndArray();
            break;
        case START_GROUP:
            stack.push(String.valueOf(extractor.getCurrentAtomData()));
            jg.writeStartObject();
            jg.writeStringField("kind", "datagator#Matrix");
            jg.writeNumberField("columnHeaders", columnHeaders);
            jg.writeNumberField("rowHeaders", rowHeaders);
            jg.writeFieldName("rows");
            jg.writeStartArray();
            break;
        case END_GROUP:
            int rowsCount = (Integer) extractor.getCurrentAtomData();
            if (rowsCount == 0) {
                jg.writeStartArray();
                jg.writeEndArray();
                rowsCount = 1;
                columnsCount = 0;
            }
            jg.writeEndArray();
            jg.writeNumberField("rowsCount", rowsCount);
            jg.writeNumberField("columnsCount", columnsCount);
            jg.writeEndObject();
            matrixCount += 1;
            stack.pop();
            break;
        default:
            break;
        }
        token = extractor.nextAtom();
    }

    jg.close();

    System.exit(EX_OK);
}

From source file:GetAppInfo.java

/**
 * @param args/*  w ww.  j  a v  a  2 s.c om*/
 */
public static void main(String[] args) {
    if (args.length != 4) {
        System.out.println("Usage :\n" + "java -jar this_jar_name confpath query_str startIndex numbers");
        System.exit(1);
    }
    String confpath = args[0];
    GetAppConfig conf = new GetAppConfig(confpath);
    String email = conf.getUserID();
    String password = conf.getPassword();
    String query = args[1];
    final int startIndex = Integer.parseInt(args[2]);
    final int numbers = Integer.parseInt(args[3]);
    String androidid = conf.getDeviceID();

    if (email.equals("")) {
        System.out.println("Error: Failed to get UserID.");
        System.exit(2);
    } else if (password.equals("")) {
        System.out.println("Error: Failed to get Password.");
        System.exit(3);
    } else if (androidid.equals("")) {
        System.out.println("Error: Failed to get DeviceID.");
        System.exit(4);
    }

    System.out.println("query: " + query);
    MarketSession session = new MarketSession();
    session.getContext().setAndroidId(androidid);

    Locale locale = new Locale("ja", "JP");
    session.setLocale(locale);
    session.setOperator("NTT DOCOMO", "44010");
    session.getContext().setDeviceAndSdkVersion("passion:8");

    try {
        session.login(email, password, androidid);
    } catch (Exception e) {
        System.out.println("Error: failed to login.: " + e.getMessage());
        System.exit(1);
    }

    AppsRequest appsRequest = AppsRequest.newBuilder().setQuery(query).setStartIndex(startIndex)
            .setEntriesCount(numbers).setWithExtendedInfo(true).build();

    Callback<AppsResponse> callback = new Callback<AppsResponse>() {
        @Override
        public void onResult(ResponseContext context, AppsResponse response) {
            int totalcnt, cnt;
            JsonFactory factory = new JsonFactory();
            try {
                JsonGenerator generator = factory.createGenerator(new FileWriter(new File("pkginfo.json")));
                generator.writeStartObject();
                //generator.setRootValueSeparator(new SerializedString("\n"));

                if (response != null) {
                    totalcnt = response.getEntriesCount();
                    cnt = response.getAppCount();
                    System.out.println("startIndex = " + startIndex);
                    System.out.println("entriesCount = " + numbers);
                    System.out.println("totalcount = " + totalcnt);
                    System.out.println("count = " + cnt);
                    generator.writeNumberField("startIndex", startIndex);
                    generator.writeNumberField("entriesCount", numbers);
                    generator.writeNumberField("total", totalcnt);
                    generator.writeNumberField("count", cnt);
                    generator.writeRaw("\n");
                } else {
                    cnt = -1;
                }
                generator.writeFieldName("dataset");
                generator.writeStartArray();

                if (cnt > 0) {
                    for (int i = 0; ((i < cnt) && (i < numbers)); i++) {
                        generator.writeStartObject();
                        generator.writeNumberField("num", i + startIndex);
                        System.out.println(
                                "------------------------------------------------------------------------------------");
                        int counter = i + startIndex;
                        System.out.println(counter + ":");
                        System.out.println(
                                "------------------------------------------------------------------------------------");
                        generator.writeStringField("title", response.getApp(i).getTitle());
                        generator.writeStringField("appType", "" + response.getApp(i).getAppType());
                        generator.writeStringField("category",
                                response.getApp(i).getExtendedInfo().getCategory());
                        generator.writeStringField("rating", response.getApp(i).getRating());
                        generator.writeNumberField("ratingCount", response.getApp(i).getRatingsCount());
                        generator.writeStringField("countText",
                                response.getApp(i).getExtendedInfo().getDownloadsCountText());
                        generator.writeStringField("creatorId", response.getApp(i).getCreatorId());
                        generator.writeStringField("id", response.getApp(i).getId());
                        generator.writeStringField("packageName", response.getApp(i).getPackageName());
                        generator.writeStringField("version", response.getApp(i).getVersion());
                        generator.writeNumberField("versionCode", response.getApp(i).getVersionCode());
                        generator.writeStringField("price", response.getApp(i).getPrice());
                        generator.writeNumberField("priceMicros", response.getApp(i).getPriceMicros());
                        generator.writeStringField("priceCurrency", response.getApp(i).getPriceCurrency());
                        generator.writeStringField("contactWebsite",
                                response.getApp(i).getExtendedInfo().getContactWebsite());
                        generator.writeNumberField("screenshotsCount",
                                response.getApp(i).getExtendedInfo().getScreenshotsCount());
                        generator.writeNumberField("installSize",
                                response.getApp(i).getExtendedInfo().getInstallSize());
                        generator.writeStringField("permissionIdList",
                                "" + response.getApp(i).getExtendedInfo().getPermissionIdList());
                        generator.writeStringField("promotoText",
                                response.getApp(i).getExtendedInfo().getPromoText());
                        generator.writeStringField("description",
                                response.getApp(i).getExtendedInfo().getDescription());

                        System.out.println("title: " + response.getApp(i).getTitle());
                        System.out.println("appType: " + response.getApp(i).getAppType());
                        System.out.println("category: " + response.getApp(i).getExtendedInfo().getCategory());
                        System.out.println("rating: " + response.getApp(i).getRating());
                        System.out.println("ratingsCount: " + response.getApp(i).getRatingsCount());
                        System.out
                                .println("count: " + response.getApp(i).getExtendedInfo().getDownloadsCount());
                        System.out.println(
                                "countText: " + response.getApp(i).getExtendedInfo().getDownloadsCountText());
                        System.out.println("creator: " + response.getApp(i).getCreator());
                        System.out.println("creatorId: " + response.getApp(i).getCreatorId());
                        System.out.println("id: " + response.getApp(i).getId());
                        System.out.println("packageName: " + response.getApp(i).getPackageName());
                        System.out.println("version: " + response.getApp(i).getVersion());
                        //System.out.println("contactEmail: " + response.getApp(i).getExtendedInfo().getContactEmail());
                        //System.out.println("contactPhone: " + response.getApp(i).getExtendedInfo().getContactPhone());
                        System.out.println(
                                "installSize: " + response.getApp(i).getExtendedInfo().getInstallSize());
                        generator.writeEndObject();
                        generator.writeRaw("\n");
                    }
                } else if (cnt == 0) {
                    System.out.println("no hit");
                } else {
                    System.out.println("Bad Reqeust");
                }

                generator.writeEndArray();
                generator.writeEndObject();
                generator.close();

            } catch (Exception e) {
                System.out.println("Error: pkginfo(): " + e.getMessage());
            }

        } // onResult()
    };
    session.append(appsRequest, callback);
    session.flush();
}

From source file:org.n52.restfulwpsproxy.serializer.json.AbstractWPSJsonModule.java

protected static final void writeArrayOfObjects(String fieldName, Object[] objects, JsonGenerator jg)
        throws IOException {
    jg.writeArrayFieldStart(fieldName);//  ww w .  j  a  v  a  2  s  .  co  m
    for (Object o : objects) {
        jg.writeObject(o);
    }
    jg.writeEndArray();
}

From source file:org.n52.restfulwpsproxy.serializer.json.AbstractWPSJsonModule.java

protected static final void writeArrayOfStrings(String fieldName, String[] strings, JsonGenerator jg)
        throws IOException {
    jg.writeArrayFieldStart(fieldName);/*from  w  w w.ja v a 2s .c om*/
    for (String s : strings) {
        jg.writeString(s);
    }
    jg.writeEndArray();
}

From source file:com.netflix.hystrix.contrib.requests.stream.HystrixRequestEventsJsonStream.java

public static String convertRequestsToJson(Collection<HystrixRequestEvents> requests) throws IOException {
    StringWriter jsonString = new StringWriter();
    JsonGenerator json = jsonFactory.createGenerator(jsonString);

    json.writeStartArray();//  w w  w  .  ja v  a2  s .com
    for (HystrixRequestEvents request : requests) {
        writeRequestAsJson(json, request);
    }
    json.writeEndArray();
    json.close();
    return jsonString.getBuffer().toString();
}

From source file:org.loklak.objects.AbstractIndexEntry.java

public static void writeArray(JsonGenerator json, String fieldName, String[] array) throws IOException {
    json.writeArrayFieldStart(fieldName);
    for (String o : array)
        json.writeObject(o);// ww  w  . j  av a  2 s  .  co m
    json.writeEndArray();
}

From source file:org.loklak.objects.AbstractIndexEntry.java

public static void writeArray(JsonGenerator json, String fieldName, double[] array) throws IOException {
    json.writeArrayFieldStart(fieldName);
    for (double o : array)
        json.writeObject(o);/* w  ww. j ava  2  s  . c  o m*/
    json.writeEndArray();
}

From source file:org.bedework.carddav.vcard.JsonParameters.java

private static void outVal(final JsonGenerator jgen, final String[] val) throws Throwable {
    if (val.length == 1) {
        jgen.writeString(val[0]);
        return;/*from   w ww .j  a  v  a  2 s . c o m*/
    }

    jgen.writeStartArray();

    for (final String s : val) {
        jgen.writeString(s);
    }

    jgen.writeEndArray();
}