List of usage examples for com.fasterxml.jackson.core JsonGenerator writeEndArray
public abstract void writeEndArray() throws IOException, JsonGenerationException;
From source file:org.pentaho.metaverse.impl.model.kettle.json.AbstractStepMetaJsonSerializer.java
protected void writeExternalResources(T meta, JsonGenerator json, SerializerProvider serializerProvider) throws IOException, JsonGenerationException { Set<Class<?>> metaClassSet = new HashSet<Class<?>>(1); metaClassSet.add(meta.getClass());/*w w w . j a v a 2 s . co m*/ IStepExternalResourceConsumerProvider stepExternalResourceConsumerProvider = getStepExternalResourceConsumerProvider(); List<IStepExternalResourceConsumer> resourceConsumers = null; if (stepExternalResourceConsumerProvider != null) { resourceConsumers = stepExternalResourceConsumerProvider.getExternalResourceConsumers(metaClassSet); } json.writeArrayFieldStart(JSON_PROPERTY_EXTERNAL_RESOURCES); if (resourceConsumers != null) { for (IStepExternalResourceConsumer resourceConsumer : resourceConsumers) { Collection<IExternalResourceInfo> infos = resourceConsumer.getResourcesFromMeta(meta); for (IExternalResourceInfo info : infos) { json.writeObject(info); } } } json.writeEndArray(); }
From source file:com.google.openrtb.json.OpenRtbJsonWriter.java
protected void writeSeatBidFields(SeatBid seatbid, JsonGenerator gen) throws IOException { if (seatbid.getBidCount() != 0) { gen.writeArrayFieldStart("bid"); for (Bid bid : seatbid.getBidList()) { writeBid(bid, gen);//from ww w . j a v a2 s . co m } gen.writeEndArray(); } if (seatbid.hasSeat()) { gen.writeStringField("seat", seatbid.getSeat()); } if (seatbid.hasGroup()) { writeIntBoolField("group", seatbid.getGroup(), gen); } }
From source file:org.openiot.security.oauth.lsm.LSMOAuth20PermissionController.java
@Override protected ModelAndView handleRequestInternal(final HttpServletRequest request, final HttpServletResponse response) throws Exception { final String clientId = request.getParameter(OAuthConstants.CLIENT_ID); log.debug("clientId : {}", clientId); final String accessToken = request.getParameter(OAuthConstants.ACCESS_TOKEN); log.debug("accessToken : {}", accessToken); final String callerClientId = request.getParameter(CALLER_CLIENT_ID); log.debug("callerClientId : {}", callerClientId); final String callerAccessToken = request.getParameter(CALLER_ACCESS_TOKEN); log.debug("callerAccessToken : {}", callerAccessToken); final String userClientId = request.getParameter(USER_CLIENT_ID); log.debug("userClientId : {}", userClientId); final String userAccessToken = request.getParameter(USER_ACCESS_TOKEN); log.debug("userAccessToken : {}", userAccessToken); final String targetClientId = request.getParameter(TARGET_CLIENT_ID); log.debug("targetClientId : {}", targetClientId); response.setContentType("application/json"); // accessToken is required if (StringUtils.isBlank(accessToken)) { log.error("missing accessToken"); writeErrorMessage(response, OAuthConstants.MISSING_ACCESS_TOKEN); return null; }//from w w w .j a va 2 s . com // clientId is required if (StringUtils.isBlank(clientId)) { log.error("missing clientId"); writeErrorMessage(response, MISSING_CLIENT_ID); return null; } // userToken is required if (StringUtils.isBlank(userAccessToken)) { log.error("missing user accessToken"); writeErrorMessage(response, "missing_userAccessToken"); return null; } // target clientId is required if (StringUtils.isBlank(targetClientId)) { log.error("missing target clientId"); writeErrorMessage(response, MISSING_CLIENT_ID + "for_target"); return null; } // caller accessToken and clientId are required if one of them is provided if (!StringUtils.isBlank(callerAccessToken) || !StringUtils.isBlank(callerClientId)) { if (StringUtils.isBlank(callerAccessToken)) { log.error("missing caller accessToken"); writeErrorMessage(response, "missing_callerAccessToken"); return null; } else if (StringUtils.isBlank(callerClientId)) { log.error("missing caller clientId"); writeErrorMessage(response, "missing_callerClientId"); return null; } } // get ticket granting ticket final TicketGrantingTicket ticketGrantingTicket = (TicketGrantingTicket) this.ticketRegistry .getTicket(accessToken); if (ticketGrantingTicket == null || ticketGrantingTicket.isExpired()) { log.error("expired accessToken : {}", accessToken); writeErrorMessage(response, OAuthConstants.EXPIRED_ACCESS_TOKEN); return null; } // get ticket granting ticket for the user final TicketGrantingTicket userTicketGrantingTicket; if (StringUtils.equals(accessToken, userAccessToken)) userTicketGrantingTicket = ticketGrantingTicket; else { userTicketGrantingTicket = (TicketGrantingTicket) this.ticketRegistry.getTicket(userAccessToken); if (userTicketGrantingTicket == null || userTicketGrantingTicket.isExpired()) { log.error("expired user accessToken : {}", userAccessToken); writeErrorMessage(response, OAuthConstants.EXPIRED_ACCESS_TOKEN + "_for_user"); return null; } } // Retrieve all registered services final Collection<RegisteredService> services = servicesManager.getAllServices(); // If called accessToken and clientId are provided, check their validity if (!StringUtils.isBlank(callerAccessToken)) { // get ticket granting ticket for the caller final TicketGrantingTicket callerTicketGrantingTicket = (TicketGrantingTicket) this.ticketRegistry .getTicket(callerAccessToken); if (callerTicketGrantingTicket == null || callerTicketGrantingTicket.isExpired()) { log.error("expired accessToken : {}", callerAccessToken); writeErrorMessage(response, OAuthConstants.EXPIRED_ACCESS_TOKEN + "_for_caller"); return null; } // name of the CAS service for caller RegisteredService callerService = null; for (final RegisteredService aService : services) { if (StringUtils.equals(aService.getName(), callerClientId)) { callerService = aService; break; } } if (callerService == null) { log.error("nonexistent caller clientId : {}", callerClientId); writeErrorMessage(response, NONEXISTENT_CLIENT_ID + "for_caller"); return null; } } // if user clienId is provided, check its validity if (!StringUtils.isBlank(userClientId)) { RegisteredService userService = null; for (final RegisteredService aService : services) { if (StringUtils.equals(aService.getName(), userClientId)) { userService = aService; break; } } if (userService == null) { log.error("nonexistent clientId : {}", userClientId); writeErrorMessage(response, NONEXISTENT_CLIENT_ID + "_for_user"); return null; } } // check validity of clientId RegisteredService service = null; for (final RegisteredService aService : services) { if (StringUtils.equals(aService.getName(), clientId)) { service = aService; break; } } if (service == null) { log.error("nonexistent clientId : {}", clientId); writeErrorMessage(response, NONEXISTENT_CLIENT_ID); return null; } // check validity of target clientId RegisteredService targetService = null; for (final RegisteredService aService : services) { if (StringUtils.equals(aService.getName(), targetClientId)) { targetService = aService; break; } } if (targetService == null) { log.error("nonexistent target clientId : {}", clientId); writeErrorMessage(response, NONEXISTENT_CLIENT_ID + "for_target"); return null; } // TODO: check if the TGT is granted to the client?! // final TicketGrantingTicket rawTicket = // ((AbstractDistributedTicketRegistry.TicketGrantingTicketDelegator)ticketGrantingTicket).getTicket(); // final Field servicesField = // rawTicket.getClass().getDeclaredField("services"); // servicesField.setAccessible(true); // HashMap<String, Service> servicesMap = new HashMap<String, // Service>(); // servicesMap = (HashMap<String, Service>) // servicesField.get(rawTicket); // log.error("ServiceMaps is empty ? {}", servicesMap.isEmpty()); // for(Map.Entry<String, Service> entry : servicesMap.entrySet()){ // AbstractWebApplicationService webAppService = // (AbstractWebApplicationService) entry.getValue(); // log.error("Service for ticket {} is {}", rawTicket.getId(), // webAppService.getId()); // } // if (!servicesMap.containsKey(service.getId()) || // !servicesMap.get(service.getId()).equals(service)) { // log.error("Ticket is not granted to client : {}", clientId); // jsonGenerator.writeStartObject(); // jsonGenerator.writeStringField("error", TICKET_NOT_GRANTED); // jsonGenerator.writeEndObject(); // jsonGenerator.close(); // response.flushBuffer(); // return null; // } // Check if the caller has permission for retrieving permission information if (!targetClientId.equals(clientId)) { final Principal principal = ticketGrantingTicket.getAuthentication().getPrincipal(); if (!isPermitted(principal.getId(), targetService.getId())) { log.error("[{} from {}] is not permitted to retrieve permission information on [{}]", principal.getId(), clientId, targetClientId); writeErrorMessage(response, "permission_denied"); return null; } } final JsonFactory jsonFactory = new JsonFactory(); final JsonGenerator jsonGenerator = jsonFactory.createJsonGenerator(response.getWriter()); final Principal principal = userTicketGrantingTicket.getAuthentication().getPrincipal(); final Map<String, Set<String>> permissions = extractPermissions(targetService.getId(), principal.getId()); jsonGenerator.writeStartObject(); jsonGenerator.writeStringField(CasWrapperProfile.ID, principal.getId()); jsonGenerator.writeArrayFieldStart("role_permissions"); for (final String roleName : permissions.keySet()) { jsonGenerator.writeStartObject(); jsonGenerator.writeArrayFieldStart(roleName); for (final String permission : permissions.get(roleName)) jsonGenerator.writeString(permission); jsonGenerator.writeEndArray(); jsonGenerator.writeEndObject(); } jsonGenerator.writeEndArray(); jsonGenerator.writeEndObject(); jsonGenerator.close(); response.flushBuffer(); return null; }
From source file:com.jxt.web.vo.AgentActiveThreadCountList.java
@Override public void serialize(AgentActiveThreadCountList agentActiveThreadStatusList, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { List<AgentActiveThreadCount> agentActiveThreadRepository = agentActiveThreadStatusList .getAgentActiveThreadRepository(); jgen.writeStartObject();/* ww w . j a v a2 s. co m*/ for (AgentActiveThreadCount agentActiveThread : agentActiveThreadRepository) { jgen.writeFieldName(agentActiveThread.getAgentId()); jgen.writeStartObject(); jgen.writeNumberField("code", agentActiveThread.getCode()); jgen.writeStringField("message", agentActiveThread.getCodeMessage()); TCmdActiveThreadCountRes activeThreadCount = agentActiveThread.getActiveThreadCount(); if (activeThreadCount != null) { if (activeThreadCount.getActiveThreadCountSize() >= 4) { List<Integer> values = activeThreadCount.getActiveThreadCount(); jgen.writeFieldName("status"); jgen.writeStartArray(); jgen.writeNumber(values.get(0)); jgen.writeNumber(values.get(1)); jgen.writeNumber(values.get(2)); jgen.writeNumber(values.get(3)); jgen.writeEndArray(); } } jgen.writeEndObject(); } jgen.writeEndObject(); }
From source file:com.google.openrtb.json.OpenRtbJsonWriter.java
protected void writeCompanionAd21Fields(CompanionAd companionad21, JsonGenerator gen) throws IOException { if (companionad21.getBannerCount() != 0) { gen.writeArrayFieldStart("banner"); for (Banner banner : companionad21.getBannerList()) { writeBanner(banner, gen);/*from w ww .ja va 2s . c om*/ } gen.writeEndArray(); } }
From source file:models.GroupSerializer.java
@Override public void serialize(Group group, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartObject();/* ww w. ja va2s . c om*/ jgen.writeStringField("id", group.getId()); jgen.writeStringField("comment", parseReferencesInComment(group)); jgen.writeStringField("label", group.getLabel()); jgen.writeFieldName("unit"); jgen.writeObject(group.getUnit()); jgen.writeFieldName("type"); jgen.writeObject(group.getType()); jgen.writeFieldName("commonKeywords"); jgen.writeObject(group.getCommonKeywords()); jgen.writeFieldName("dimensions"); jgen.writeStartArray(); for (Dimension dim : group.getDimSet().dimensions) { jgen.writeStartObject(); jgen.writeFieldName("id"); jgen.writeObject(dim.getId()); jgen.writeFieldName("keywords"); jgen.writeObject(dim.keywords); jgen.writeFieldName("keywordsPosition"); jgen.writeObject(dim.keywordsPosition); jgen.writeFieldName("orientation"); jgen.writeObject(group.getDimSet().getDimensionOrientation(dim)); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeFieldName("overlap"); jgen.writeStartArray(); for (Group otherGroup : group.getOverlappingGroups()) { jgen.writeStartObject(); jgen.writeStringField("id", otherGroup.getId()); jgen.writeStringField("label", otherGroup.getLabel()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeFieldName("references"); jgen.writeStartArray(); for (Reference ref : group.getReferences()) { jgen.writeObject(ref); } jgen.writeEndArray(); jgen.writeFieldName("sourceRelations"); jgen.writeStartArray(); for (SourceRelation sourceRelation : group.getSourceRelations()) { jgen.writeObject(sourceRelation); } jgen.writeEndArray(); jgen.writeFieldName("elementsURI"); jgen.writeStartObject(); for (SingleElement element : group.getElements()) { jgen.writeStringField(StringUtils.join(element.getKeywords(), "+") + "+" + element.getUnit().getId(), element.getId()); } jgen.writeEndObject(); if (group.getType() == Type.COEFFICIENT) { jgen.writeFieldName("elementsValue"); jgen.writeStartObject(); for (SingleElement element : group.getElements()) { Coefficient coeff = (Coefficient) element; jgen.writeFieldName(StringUtils.join(element.getKeywords(), "+") + "+" + element.getUnit().getId()); jgen.writeStartObject(); jgen.writeNumberField("value", coeff.getValue().value); jgen.writeNumberField("uncertainty", coeff.getValue().uncertainty); jgen.writeEndObject(); } jgen.writeEndObject(); } else { jgen.writeFieldName("elementsImpactsAndFlows"); jgen.writeStartObject(); for (SingleElement element : group.getElements()) { Process process = (Process) element; jgen.writeFieldName(StringUtils.join(element.getKeywords(), "+") + "+" + element.getUnit().getId()); jgen.writeStartObject(); for (ElementaryFlow flow : process.getCalculatedFlows().values()) { jgen.writeFieldName(flow.getType().getId()); jgen.writeStartObject(); jgen.writeNumberField("value", flow.getValue().value); jgen.writeNumberField("uncertainty", flow.getValue().uncertainty); jgen.writeEndObject(); } for (Impact impact : process.getImpacts().values()) { jgen.writeFieldName(impact.getType().getId()); jgen.writeStartObject(); jgen.writeNumberField("value", impact.getValue().value); jgen.writeNumberField("uncertainty", impact.getValue().uncertainty); jgen.writeEndObject(); } jgen.writeEndObject(); } jgen.writeEndObject(); } jgen.writeEndObject(); }
From source file:com.google.openrtb.json.OpenRtbJsonWriter.java
protected void writeBidResponseFields(BidResponse resp, JsonGenerator gen) throws IOException { gen.writeStringField("id", resp.getId()); if (resp.getSeatbidCount() != 0) { gen.writeArrayFieldStart("seatbid"); for (SeatBid seatbid : resp.getSeatbidList()) { writeSeatBid(seatbid, gen);/*from ww w . ja v a2 s . c o m*/ } gen.writeEndArray(); } if (resp.hasBidid()) { gen.writeStringField("bidid", resp.getBidid()); } if (resp.hasCur()) { gen.writeStringField("cur", resp.getCur()); } if (resp.hasCustomdata()) { gen.writeStringField("customdata", resp.getCustomdata()); } if (resp.hasNbr()) { gen.writeNumberField("nbr", resp.getNbr().getNumber()); } }
From source file:TDS.Shared.Messages.MessageJson.java
private void writeMessageElement(Message message, JsonGenerator jsonWriter) throws JsonGenerationException, IOException { // {"id":10884, // "m":"Global.Path.Help", // "t_a":[{"t":"..\/Projects\/Oregon\/Help\/help.html", // "l":"ENU"}] // }// w w w .j a va 2s. c o m jsonWriter.writeStartObject(); // { jsonWriter.writeNumberField("id", message.getMessageId()); jsonWriter.writeStringField("m", message.getMessageKey()); jsonWriter.writeFieldName("t_a"); // "t_a": jsonWriter.writeStartArray(); // [ List<MessageTranslation> translations; // if there is no language specified they get all translations if (StringUtils.isEmpty(_language)) { translations = message.getTranslations(); } else { // if a language is provided then find the best language and only // include that MessageTranslation defaultTranslation = message.getTranslation(_language, _subject, _grade); translations = new ArrayList<MessageTranslation>(); translations.add(defaultTranslation); } for (MessageTranslation translation : translations) { writeTranslationElement(translation, jsonWriter); } jsonWriter.writeEndArray(); // ] jsonWriter.writeEndObject(); // } }
From source file:com.google.openrtb.json.OpenRtbJsonWriter.java
protected void writeBidRequestFields(BidRequest req, JsonGenerator gen) throws IOException { gen.writeStringField("id", req.getId()); if (checkRequired(req.getImpCount())) { gen.writeArrayFieldStart("imp"); for (Imp imp : req.getImpList()) { writeImp(imp, gen);/*from w w w . j a v a2 s . c om*/ } gen.writeEndArray(); } switch (req.getDistributionchannelOneofCase()) { case SITE: gen.writeFieldName("site"); writeSite(req.getSite(), gen); break; case APP: gen.writeFieldName("app"); writeApp(req.getApp(), gen); break; case DISTRIBUTIONCHANNELONEOF_NOT_SET: checkRequired(false); } if (req.hasDevice()) { gen.writeFieldName("device"); writeDevice(req.getDevice(), gen); } if (req.hasUser()) { gen.writeFieldName("user"); writeUser(req.getUser(), gen); } if (req.hasTest()) { writeIntBoolField("test", req.getTest(), gen); } if (req.hasAt()) { gen.writeNumberField("at", req.getAt().getNumber()); } if (req.hasTmax()) { gen.writeNumberField("tmax", req.getTmax()); } writeStrings("wseat", req.getWseatList(), gen); if (req.hasAllimps()) { writeIntBoolField("allimps", req.getAllimps(), gen); } writeStrings("cur", req.getCurList(), gen); writeContentCategories("bcat", req.getBcatList(), gen); writeStrings("badv", req.getBadvList(), gen); if (req.hasRegs()) { gen.writeFieldName("regs"); writeRegs(req.getRegs(), gen); } writeStrings("bapp", req.getBappList(), gen); }
From source file:com.google.openrtb.json.OpenRtbJsonWriter.java
protected void writePmpFields(Pmp pmp, JsonGenerator gen) throws IOException { if (pmp.hasPrivateAuction()) { writeIntBoolField("private_auction", pmp.getPrivateAuction(), gen); }/*from w w w. java 2s.c o m*/ if (pmp.getDealsCount() != 0) { gen.writeArrayFieldStart("deals"); for (Deal deals : pmp.getDealsList()) { writeDeal(deals, gen); } gen.writeEndArray(); } }