List of usage examples for com.fasterxml.jackson.core JsonGenerator writeArrayFieldStart
public final void writeArrayFieldStart(String fieldName) throws IOException, JsonGenerationException
From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.organisational.EnvironmentJSON.java
public final static void environment2JSON(Environment environment, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();//from w w w . ja v a2s . c om jgenerator.writeNumberField(ENV_ID, environment.getId()); jgenerator.writeNumberField(ENV_VERSION, environment.getVersion()); jgenerator.writeStringField(ENV_NAME, environment.getName()); jgenerator.writeStringField(ENV_DESCRIPTION, environment.getDescription()); jgenerator.writeArrayFieldStart(ENV_OSI_ID); for (OSInstance osi : environment.getOsInstances()) jgenerator.writeNumber(osi.getId()); jgenerator.writeEndArray(); jgenerator.writeEndObject(); }
From source file:org.apache.flink.runtime.jobgraph.jsonplan.JsonPlanGenerator.java
public static String generatePlan(JobGraph jg) { try {//ww w .j a v a2 s. co m final StringWriter writer = new StringWriter(1024); final JsonFactory factory = new JsonFactory(); final JsonGenerator gen = factory.createGenerator(writer); // start of everything gen.writeStartObject(); gen.writeStringField("jid", jg.getJobID().toString()); gen.writeStringField("name", jg.getName()); gen.writeArrayFieldStart("nodes"); // info per vertex for (JobVertex vertex : jg.getVertices()) { String operator = vertex.getOperatorName() != null ? vertex.getOperatorName() : NOT_SET; String operatorDescr = vertex.getOperatorDescription() != null ? vertex.getOperatorDescription() : NOT_SET; String optimizerProps = vertex.getResultOptimizerProperties() != null ? vertex.getResultOptimizerProperties() : EMPTY; String description = vertex.getOperatorPrettyName() != null ? vertex.getOperatorPrettyName() : vertex.getName(); // make sure the encoding is HTML pretty description = StringEscapeUtils.escapeHtml4(description); description = description.replace("\n", "<br/>"); description = description.replace("\\", "\"); operatorDescr = StringEscapeUtils.escapeHtml4(operatorDescr); operatorDescr = operatorDescr.replace("\n", "<br/>"); gen.writeStartObject(); // write the core properties gen.writeStringField("id", vertex.getID().toString()); gen.writeNumberField("parallelism", vertex.getParallelism()); gen.writeStringField("operator", operator); gen.writeStringField("operator_strategy", operatorDescr); gen.writeStringField("description", description); if (!vertex.isInputVertex()) { // write the input edge properties gen.writeArrayFieldStart("inputs"); List<JobEdge> inputs = vertex.getInputs(); for (int inputNum = 0; inputNum < inputs.size(); inputNum++) { JobEdge edge = inputs.get(inputNum); if (edge.getSource() == null) { continue; } JobVertex predecessor = edge.getSource().getProducer(); String shipStrategy = edge.getShipStrategyName(); String preProcessingOperation = edge.getPreProcessingOperationName(); String operatorLevelCaching = edge.getOperatorLevelCachingDescription(); gen.writeStartObject(); gen.writeNumberField("num", inputNum); gen.writeStringField("id", predecessor.getID().toString()); if (shipStrategy != null) { gen.writeStringField("ship_strategy", shipStrategy); } if (preProcessingOperation != null) { gen.writeStringField("local_strategy", preProcessingOperation); } if (operatorLevelCaching != null) { gen.writeStringField("caching", operatorLevelCaching); } gen.writeStringField("exchange", edge.getSource().getResultType().name().toLowerCase()); gen.writeEndObject(); } gen.writeEndArray(); } // write the optimizer properties gen.writeFieldName("optimizer_properties"); gen.writeRawValue(optimizerProps); gen.writeEndObject(); } // end of everything gen.writeEndArray(); gen.writeEndObject(); gen.close(); return writer.toString(); } catch (Exception e) { throw new RuntimeException("Failed to generate plan", e); } }
From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.organisational.TeamJSON.java
public final static void team2JSON(Team team, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();/*from w ww . j ava 2s . co m*/ jgenerator.writeNumberField(TEAM_ID, team.getId()); jgenerator.writeNumberField(TEAM_VERSION, team.getVersion()); jgenerator.writeStringField(TEAM_NAME, team.getName()); jgenerator.writeStringField(TEAM_DESCRIPTION, team.getDescription()); jgenerator.writeStringField(TEAM_COLOR_CODE, team.getColorCode()); jgenerator.writeArrayFieldStart(TEAM_OSI_ID); for (OSInstance osi : team.getOsInstances()) jgenerator.writeNumber(osi.getId()); jgenerator.writeEndArray(); jgenerator.writeArrayFieldStart(TEAM_APP_ID); for (Application app : team.getApplications()) jgenerator.writeNumber(app.getId()); jgenerator.writeEndArray(); jgenerator.writeEndObject(); }
From source file:org.bndtools.rt.repository.marshall.CapReqJson.java
public static void writeCapability(Capability capability, JsonGenerator generator) throws IOException { generator.writeStartObject();//from ww w.j av a 2s .c o m generator.writeStringField("ns", capability.getNamespace()); Map<String, Object> attrs = capability.getAttributes(); if (!attrs.isEmpty()) { generator.writeArrayFieldStart("attrs"); for (Entry<String, Object> entry : attrs.entrySet()) { writeAttribute(entry.getKey(), entry.getValue(), generator); } generator.writeEndArray(); } Map<String, String> dirs = capability.getDirectives(); if (!dirs.isEmpty()) { generator.writeArrayFieldStart("dirs"); for (Entry<String, String> entry : dirs.entrySet()) { writeDirective(entry.getKey(), entry.getValue(), generator); } generator.writeEndArray(); } generator.writeEndObject(); }
From source file:com.meetingninja.csse.database.AgendaDatabaseAdapter.java
public static Agenda createAgenda(Agenda create) throws IOException { Agenda newAgenda = new Agenda(create); // Server URL setup String _url = getBaseUri().build().toString(); // Establish connection URL url = new URL(_url); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // add request header conn.setRequestMethod(IRequest.POST); addRequestHeader(conn, true);// w w w . j ava 2 s . c o m // prepare POST payload ByteArrayOutputStream json = new ByteArrayOutputStream(); // this type of print stream allows us to get a string easily PrintStream ps = new PrintStream(json); // Create a generator to build the JSON string JsonGenerator jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8); // Build JSON Object jgen.writeStartObject(); // start agenda jgen.writeStringField(Keys.Agenda.TITLE, create.getTitle()); jgen.writeStringField(Keys.Agenda.MEETING, create.getAttachedMeetingID()); jgen.writeArrayFieldStart(Keys.Agenda.TOPIC); // start topics MAPPER.writeValue(jgen, create.getTopics()); // recursively does // subtopics jgen.writeEndArray(); // end topics jgen.writeEndObject(); // end agenda jgen.close(); // Get JSON Object payload from print stream String payload = json.toString("UTF8"); ps.close(); // Send payload int responseCode = sendPostPayload(conn, payload); String response = getServerResponse(conn); newAgenda = parseAgenda(MAPPER.readTree(response)); return newAgenda; }
From source file:org.bndtools.rt.repository.marshall.CapReqJson.java
public static void writeRequirement(Requirement requirement, JsonGenerator generator) throws IOException { generator.writeStartObject();/*w w w . j a v a 2 s . c o m*/ generator.writeStringField("ns", requirement.getNamespace()); Map<String, Object> attrs = requirement.getAttributes(); if (!attrs.isEmpty()) { generator.writeArrayFieldStart("attrs"); for (Entry<String, Object> entry : attrs.entrySet()) { writeAttribute(entry.getKey(), entry.getValue(), generator); } generator.writeEndArray(); } Map<String, String> dirs = requirement.getDirectives(); if (!dirs.isEmpty()) { generator.writeArrayFieldStart("dirs"); for (Entry<String, String> entry : dirs.entrySet()) { writeDirective(entry.getKey(), entry.getValue(), generator); } generator.writeEndArray(); } generator.writeEndObject(); }
From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.technical.system.OSTypeJSON.java
public final static void osType2JSON(OSType osType, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();//w w w. java 2 s .co m jgenerator.writeNumberField(OST_ID, osType.getId()); jgenerator.writeNumberField(OST_VERSION, osType.getVersion()); jgenerator.writeStringField(OST_NAME, osType.getName()); jgenerator.writeStringField(OST_ARCHITECTURE, osType.getArchitecture()); jgenerator.writeNumberField(OST_CMP_ID, ((osType.getCompany() != null) ? osType.getCompany().getId() : -1)); jgenerator.writeArrayFieldStart(OST_OSI_ID); for (OSInstance osi : osType.getOsInstances()) jgenerator.writeNumber(osi.getId()); jgenerator.writeEndArray(); jgenerator.writeEndObject(); }
From source file:com.meetingninja.csse.database.ProjectDatabaseAdapter.java
public static Project createProject(Project p) throws IOException, MalformedURLException { // Server URL setup String _url = getBaseUri().build().toString(); // establish connection URL url = new URL(_url); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); addRequestHeader(conn, true);//www .ja va 2 s. co m // prepare POST payload ByteArrayOutputStream json = new ByteArrayOutputStream(); // this type of print stream allows us to get a string easily PrintStream ps = new PrintStream(json); // Create a generator to build the JSON string JsonGenerator jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8); // Build JSON Object jgen.writeStartObject(); jgen.writeStringField(Keys.Project.TITLE, p.getProjectTitle()); jgen.writeArrayFieldStart(Keys.Project.MEETINGS); for (Meeting meeting : p.getMeetings()) { jgen.writeStartObject(); jgen.writeStringField(Keys.Meeting.ID, meeting.getID()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeArrayFieldStart(Keys.Project.NOTES); for (Note note : p.getNotes()) { jgen.writeStartObject(); jgen.writeStringField(Keys.Note.ID, note.getID()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeArrayFieldStart(Keys.Project.MEMBERS); for (User member : p.getMembers()) { jgen.writeStartObject(); jgen.writeStringField(Keys.User.ID, member.getID()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); jgen.close(); // Get JSON Object payload from print stream String payload = json.toString("UTF8"); ps.close(); // send payload sendPostPayload(conn, payload); String response = getServerResponse(conn); // prepare to get the id of the created Meeting // Map<String, String> responseMap = new HashMap<String, String>(); /* * result should get valid={"meetingID":"##"} */ String result = new String(); if (!response.isEmpty()) { // responseMap = MAPPER.readValue(response, // new TypeReference<HashMap<String, String>>() { // }); JsonNode projectNode = MAPPER.readTree(response); if (!projectNode.has(Keys.Project.ID)) { result = "invalid"; } else result = projectNode.get(Keys.Project.ID).asText(); } if (!result.equalsIgnoreCase("invalid")) p.setProjectID(result); conn.disconnect(); return p; }
From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.technical.system.OSInstanceJSON.java
public final static void osInstance2JSON(OSInstance osInstance, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();/*from w w w .ja v a2s. c om*/ jgenerator.writeNumberField(OSI_ID, osInstance.getId()); jgenerator.writeNumberField(OSI_VERSION, osInstance.getVersion()); jgenerator.writeStringField(OSI_NAME, osInstance.getName()); jgenerator.writeStringField(OSI_ADMIN_GATE_URI, osInstance.getAdminGateURI()); jgenerator.writeStringField(OSI_DESCRIPTION, osInstance.getDescription()); jgenerator.writeArrayFieldStart(OSI_SUBNETS_ID); if (osInstance.getNetworkSubnets() != null) for (Subnet subnet : osInstance.getNetworkSubnets()) jgenerator.writeNumber(subnet.getId()); jgenerator.writeEndArray(); jgenerator.writeNumberField(OSI_EMBEDDING_OSI_ID, ((osInstance.getEmbeddingOSInstance() != null) ? osInstance.getEmbeddingOSInstance().getId() : -1)); jgenerator.writeArrayFieldStart(OSI_EMBEDDED_OSI_ID); for (OSInstance eosi : osInstance.getEmbeddedOSInstances()) jgenerator.writeNumber(eosi.getId()); jgenerator.writeEndArray(); jgenerator.writeNumberField(OSI_OST_ID, ((osInstance.getOsType() != null) ? osInstance.getOsType().getId() : -1)); jgenerator.writeArrayFieldStart(OSI_APPS_ID); for (Application app : osInstance.getApplications()) jgenerator.writeNumber(app.getId()); jgenerator.writeEndArray(); jgenerator.writeArrayFieldStart(OSI_TEAMS_ID); for (Team team : osInstance.getTeams()) jgenerator.writeNumber(team.getId()); jgenerator.writeEndArray(); jgenerator.writeArrayFieldStart(OSI_ENVS_ID); for (Environment env : osInstance.getEnvironments()) jgenerator.writeNumber(env.getId()); jgenerator.writeEndArray(); jgenerator.writeEndObject(); }
From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.organisational.ApplicationJSON.java
public final static void application2JSON(Application application, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();/*from w w w. ja va2 s . com*/ jgenerator.writeNumberField(APP_ID, application.getId()); jgenerator.writeNumberField(APP_VERSION, application.getVersion()); jgenerator.writeStringField(APP_NAME, application.getName()); jgenerator.writeStringField(APP_SHORT_NAME, application.getShortName()); jgenerator.writeStringField(APP_COLOR_CODE, application.getColorCode()); jgenerator.writeStringField(APP_DESCRIPTION, application.getDescription()); jgenerator.writeArrayFieldStart(APP_OSI_ID); for (OSInstance osi : application.getOsInstances()) jgenerator.writeNumber(osi.getId()); jgenerator.writeEndArray(); jgenerator.writeNumberField(APP_TEAM_ID, ((application.getTeam() != null) ? application.getTeam().getId() : -1)); jgenerator.writeNumberField(APP_COMPANY_ID, ((application.getCompany() != null) ? application.getCompany().getId() : -1)); jgenerator.writeEndObject(); }