List of usage examples for com.fasterxml.jackson.core JsonParser getValueAsBoolean
public boolean getValueAsBoolean() throws IOException, JsonParseException
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readRegsField(JsonParser par, Regs.Builder reg, String fieldName) throws IOException { switch (fieldName) { case "coppa": reg.setCoppa(par.getValueAsBoolean()); break;/*w w w . j a v a 2s.c o m*/ default: readOther(reg, par, fieldName); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readPmpField(JsonParser par, Pmp.Builder pmp, String fieldName) throws IOException { switch (fieldName) { case "private_auction": pmp.setPrivateAuction(par.getValueAsBoolean()); break;/* w w w . jav a 2s.co m*/ case "deals": for (startArray(par); endArray(par); par.nextToken()) { pmp.addDeals(readDeal(par)); } break; default: readOther(pmp, par, fieldName); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readDeviceField(JsonParser par, Device.Builder device, String fieldName) throws IOException { switch (fieldName) { case "ua": device.setUa(par.getText());//from ww w . j av a 2 s . c om break; case "geo": device.setGeo(readGeo(par)); break; case "dnt": device.setDnt(par.getValueAsBoolean()); break; case "lmt": device.setLmt(par.getValueAsBoolean()); break; case "ip": device.setIp(par.getText()); break; case "ipv6": device.setIpv6(par.getText()); break; case "devicetype": { DeviceType value = DeviceType.valueOf(par.getIntValue()); if (checkEnum(value)) { device.setDevicetype(value); } } break; case "make": device.setMake(par.getText()); break; case "model": device.setModel(par.getText()); break; case "os": device.setOs(par.getText()); break; case "osv": device.setOsv(par.getText()); break; case "hwv": device.setHwv(par.getText()); break; case "w": device.setW(par.getIntValue()); break; case "h": device.setH(par.getIntValue()); break; case "ppi": device.setPpi(par.getIntValue()); break; case "pxratio": device.setPxratio(par.getValueAsDouble()); break; case "js": device.setJs(par.getValueAsBoolean()); break; case "flashver": device.setFlashver(par.getText()); break; case "language": device.setLanguage(par.getText()); break; case "carrier": device.setCarrier(par.getText()); break; case "connectiontype": { ConnectionType value = ConnectionType.valueOf(par.getIntValue()); if (checkEnum(value)) { device.setConnectiontype(value); } } break; case "ifa": device.setIfa(par.getText()); break; case "didsha1": device.setDidsha1(par.getText()); break; case "didmd5": device.setDidmd5(par.getText()); break; case "dpidsha1": device.setDpidsha1(par.getText()); break; case "dpidmd5": device.setDpidmd5(par.getText()); break; case "macsha1": device.setMacsha1(par.getText()); break; case "macmd5": device.setMacmd5(par.getText()); break; case "geofetch": device.setGeofetch(par.getValueAsBoolean()); break; default: readOther(device, par, fieldName); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readSeatBidField(JsonParser par, SeatBid.Builder seatbid, String fieldName) throws IOException { switch (fieldName) { case "bid": for (startArray(par); endArray(par); par.nextToken()) { seatbid.addBid(readBid(par)); }/*from w w w.j a v a 2 s . c o m*/ break; case "seat": seatbid.setSeat(par.getText()); break; case "group": seatbid.setGroup(par.getValueAsBoolean()); break; default: readOther(seatbid, par, fieldName); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readBidRequestField(JsonParser par, BidRequest.Builder req, String fieldName) throws IOException { switch (fieldName) { case "id": req.setId(par.getText());/*from ww w. java 2 s.c om*/ break; case "imp": for (startArray(par); endArray(par); par.nextToken()) { req.addImp(readImp(par)); } break; case "site": req.setSite(readSite(par)); break; case "app": req.setApp(readApp(par)); break; case "device": req.setDevice(readDevice(par)); break; case "user": req.setUser(readUser(par)); break; case "test": req.setTest(par.getValueAsBoolean()); break; case "at": { AuctionType value = AuctionType.valueOf(par.getIntValue()); if (checkEnum(value)) { req.setAt(value); } } break; case "tmax": req.setTmax(par.getIntValue()); break; case "wseat": for (startArray(par); endArray(par); par.nextToken()) { req.addWseat(par.getText()); } break; case "allimps": req.setAllimps(par.getValueAsBoolean()); break; case "cur": for (startArray(par); endArray(par); par.nextToken()) { req.addCur(par.getText()); } break; case "bcat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { req.addBcat(cat); } } break; case "badv": for (startArray(par); endArray(par); par.nextToken()) { req.addBadv(par.getText()); } break; case "regs": req.setRegs(readRegs(par)); break; case "bapp": for (startArray(par); endArray(par); par.nextToken()) { req.addBapp(par.getText()); } break; default: readOther(req, par, fieldName); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readImpField(JsonParser par, Imp.Builder imp, String fieldName) throws IOException { switch (fieldName) { case "id": imp.setId(par.getText());/*from www . j a v a 2s. com*/ break; case "banner": imp.setBanner(readBanner(par)); break; case "video": imp.setVideo(readVideo(par)); break; case "audio": imp.setAudio(readAudio(par)); break; case "native": imp.setNative(readNative(par)); break; case "displaymanager": imp.setDisplaymanager(par.getText()); break; case "displaymanagerver": imp.setDisplaymanagerver(par.getText()); break; case "instl": imp.setInstl(par.getValueAsBoolean()); break; case "tagid": imp.setTagid(par.getText()); break; case "bidfloor": imp.setBidfloor(par.getValueAsDouble()); break; case "bidfloorcur": imp.setBidfloorcur(par.getText()); break; case "secure": imp.setSecure(par.getValueAsBoolean()); break; case "iframebuster": for (startArray(par); endArray(par); par.nextToken()) { imp.addIframebuster(par.getText()); } break; case "pmp": imp.setPmp(readPmp(par)); break; case "clickbrowser": imp.setClickbrowser(par.getValueAsBoolean()); break; case "exp": imp.setExp(par.getIntValue()); break; default: readOther(imp, par, fieldName); } }
From source file:com.adobe.communities.ugc.migration.importer.UGCImportHelper.java
protected void extractTopic(final JsonParser jsonParser, final Resource resource, final ResourceResolver resolver, final CommentOperations operations) throws IOException, ServletException { if (jsonParser.getCurrentToken().equals(JsonToken.END_OBJECT)) { return; // replies could just be an empty object (i.e. "ugc:replies":{} ) in which case, do nothing }// w ww.ja va 2 s . c o m final Map<String, Object> properties = new HashMap<String, Object>(); properties.put("social:key", jsonParser.getCurrentName()); Resource post = null; jsonParser.nextToken(); if (jsonParser.getCurrentToken().equals(JsonToken.START_OBJECT)) { jsonParser.nextToken(); String author = null; List<DataSource> attachments = new ArrayList<DataSource>(); while (!jsonParser.getCurrentToken().equals(JsonToken.END_OBJECT)) { final String label = jsonParser.getCurrentName(); JsonToken token = jsonParser.nextToken(); if (jsonParser.getCurrentToken().isScalarValue()) { // either a string, boolean, or long value if (token.isNumeric()) { properties.put(label, jsonParser.getValueAsLong()); } else { final String value = jsonParser.getValueAsString(); if (value.equals("true") || value.equals("false")) { properties.put(label, jsonParser.getValueAsBoolean()); } else { final String decodedValue = URLDecoder.decode(value, "UTF-8"); if (label.equals("language")) { properties.put("mtlanguage", decodedValue); } else { properties.put(label, decodedValue); if (label.equals("userIdentifier")) { author = decodedValue; } else if (label.equals("jcr:description")) { properties.put("message", decodedValue); } } } } } else if (label.equals(ContentTypeDefinitions.LABEL_ATTACHMENTS)) { attachments = getAttachments(jsonParser); } else if (label.equals(ContentTypeDefinitions.LABEL_REPLIES) || label.equals(ContentTypeDefinitions.LABEL_TALLY) || label.equals(ContentTypeDefinitions.LABEL_TRANSLATION) || label.equals(ContentTypeDefinitions.LABEL_SUBNODES)) { // replies and sub-nodes ALWAYS come after all other properties and attachments have been listed, // so we can create the post now if we haven't already, and then dive in if (post == null) { try { post = createPost(resource, author, properties, attachments, resolver.adaptTo(Session.class), operations); resProvider = SocialResourceUtils.getSocialResource(post).getResourceProvider(); } catch (Exception e) { throw new ServletException(e.getMessage(), e); } } if (label.equals(ContentTypeDefinitions.LABEL_REPLIES)) { if (token.equals(JsonToken.START_OBJECT)) { jsonParser.nextToken(); while (!token.equals(JsonToken.END_OBJECT)) { extractTopic(jsonParser, post, resolver, operations); token = jsonParser.nextToken(); } } else { throw new IOException("Expected an object for the subnodes"); } } else if (label.equals(ContentTypeDefinitions.LABEL_SUBNODES)) { if (token.equals(JsonToken.START_OBJECT)) { token = jsonParser.nextToken(); try { while (!token.equals(JsonToken.END_OBJECT)) { final String subnodeType = jsonParser.getCurrentName(); token = jsonParser.nextToken(); if (token.equals(JsonToken.START_OBJECT)) { jsonParser.skipChildren(); token = jsonParser.nextToken(); } } } catch (final IOException e) { throw new IOException("unable to skip child of sub-nodes", e); } } else { final String field = jsonParser.getValueAsString(); throw new IOException("Expected an object for the subnodes. Instead: " + field); } } else if (label.equals(ContentTypeDefinitions.LABEL_TALLY)) { UGCImportHelper.extractTally(post, jsonParser, resProvider, tallyOperationsService); } else if (label.equals(ContentTypeDefinitions.LABEL_TRANSLATION)) { importTranslation(jsonParser, post); resProvider.commit(post.getResourceResolver()); } } else if (jsonParser.getCurrentToken().equals(JsonToken.START_OBJECT)) { properties.put(label, UGCImportHelper.extractSubmap(jsonParser)); } else if (jsonParser.getCurrentToken().equals(JsonToken.START_ARRAY)) { jsonParser.nextToken(); // skip the START_ARRAY token if (label.equals(ContentTypeDefinitions.LABEL_TIMESTAMP_FIELDS)) { while (!jsonParser.getCurrentToken().equals(JsonToken.END_ARRAY)) { final String timestampLabel = jsonParser.getValueAsString(); if (properties.containsKey(timestampLabel) && properties.get(timestampLabel) instanceof Long) { final Calendar calendar = new GregorianCalendar(); calendar.setTimeInMillis((Long) properties.get(timestampLabel)); properties.put(timestampLabel, calendar.getTime()); } jsonParser.nextToken(); } } else { final List<String> subArray = new ArrayList<String>(); while (!jsonParser.getCurrentToken().equals(JsonToken.END_ARRAY)) { subArray.add(jsonParser.getValueAsString()); jsonParser.nextToken(); } String[] strings = new String[subArray.size()]; for (int i = 0; i < subArray.size(); i++) { strings[i] = subArray.get(i); } properties.put(label, strings); } } jsonParser.nextToken(); } if (post == null) { try { post = createPost(resource, author, properties, attachments, resolver.adaptTo(Session.class), operations); if (null == resProvider) { resProvider = SocialResourceUtils.getSocialResource(post).getResourceProvider(); } // resProvider.commit(resolver); } catch (Exception e) { throw new ServletException(e.getMessage(), e); } } } else { throw new IOException("Improperly formed JSON - expected an OBJECT_START token, but got " + jsonParser.getCurrentToken().toString()); } }
From source file:org.wso2.extension.siddhi.map.json.sourcemapper.JsonSourceMapper.java
private Event convertToSingleEventForDefaultMapping(Object eventObject) throws IOException { Event event = new Event(attributesSize); Object[] data = event.getData(); JsonParser parser; int numberOfProvidedAttributes = 0; try {//from w w w. jav a2 s. c om parser = factory.createParser(eventObject.toString()); } catch (IOException e) { throw new SiddhiAppRuntimeException( "Initializing a parser failed for the event string." + eventObject.toString()); } int position; while (!parser.isClosed()) { JsonToken jsonToken = parser.nextToken(); if (JsonToken.START_OBJECT.equals(jsonToken)) { parser.nextToken(); if (DEFAULT_JSON_EVENT_IDENTIFIER.equalsIgnoreCase(parser.getText())) { parser.nextToken(); } else { log.error("Default json message " + eventObject + " contains an invalid event identifier. Required \"event\", " + "but found \"" + parser.getText() + "\". Hence dropping the message."); return null; } } else if (JsonToken.FIELD_NAME.equals(jsonToken)) { String key = parser.getCurrentName(); numberOfProvidedAttributes++; position = findDefaultMappingPosition(key); if (position == -1) { log.error("Stream \"" + streamDefinition.getId() + "\" does not have an attribute named \"" + key + "\", but the received event " + eventObject.toString() + " does. Hence dropping the message."); return null; } jsonToken = parser.nextToken(); Attribute.Type type = streamAttributes.get(position).getType(); if (JsonToken.VALUE_NULL.equals(jsonToken)) { data[position] = null; } else { switch (type) { case BOOL: if (JsonToken.VALUE_TRUE.equals(jsonToken) || JsonToken.VALUE_FALSE.equals(jsonToken)) { data[position] = parser.getValueAsBoolean(); } else { log.error("Json message " + eventObject.toString() + " contains incompatible attribute types and values. Value " + parser.getText() + " is not compatible with type BOOL. " + "Hence dropping the message."); return null; } break; case INT: if (JsonToken.VALUE_NUMBER_INT.equals(jsonToken)) { data[position] = parser.getValueAsInt(); } else { log.error("Json message " + eventObject.toString() + " contains incompatible attribute types and values. Value " + parser.getText() + " is not compatible with type INT. " + "Hence dropping the message."); return null; } break; case DOUBLE: if (JsonToken.VALUE_NUMBER_FLOAT.equals(jsonToken)) { data[position] = parser.getValueAsDouble(); } else { log.error("Json message " + eventObject.toString() + " contains incompatible attribute types and values. Value " + parser.getText() + " is not compatible with type DOUBLE. " + "Hence dropping the message."); return null; } break; case STRING: if (JsonToken.VALUE_STRING.equals(jsonToken)) { data[position] = parser.getValueAsString(); } else { log.error("Json message " + eventObject.toString() + " contains incompatible attribute types and values. Value " + parser.getText() + " is not compatible with type STRING. " + "Hence dropping the message."); return null; } break; case FLOAT: if (JsonToken.VALUE_NUMBER_FLOAT.equals(jsonToken) || JsonToken.VALUE_NUMBER_INT.equals(jsonToken)) { data[position] = attributeConverter.getPropertyValue(parser.getValueAsString(), Attribute.Type.FLOAT); } else { log.error("Json message " + eventObject.toString() + " contains incompatible attribute types and values. Value " + parser.getText() + " is not compatible with type FLOAT. " + "Hence dropping the message."); return null; } break; case LONG: if (JsonToken.VALUE_NUMBER_INT.equals(jsonToken)) { data[position] = parser.getValueAsLong(); } else { log.error("Json message " + eventObject.toString() + " contains incompatible attribute types and values. Value " + parser.getText() + " is not compatible with type LONG. " + "Hence dropping the message."); return null; } break; default: return null; } } } } if (failOnMissingAttribute && (numberOfProvidedAttributes != attributesSize)) { log.error("Json message " + eventObject.toString() + " contains missing attributes. Hence dropping the message."); return null; } return event; }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readSiteField(JsonParser par, Site.Builder site, String fieldName) throws IOException { switch (fieldName) { case "id": site.setId(par.getText());/*from w w w . jav a 2 s . c o m*/ break; case "name": site.setName(par.getText()); break; case "domain": site.setDomain(par.getText()); break; case "cat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { site.addCat(cat); } } break; case "sectioncat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { site.addSectioncat(cat); } } break; case "pagecat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { site.addPagecat(cat); } } break; case "page": site.setPage(par.getText()); break; case "ref": site.setRef(par.getText()); break; case "search": site.setSearch(par.getText()); break; case "mobile": site.setMobile(par.getValueAsBoolean()); break; case "privacypolicy": site.setPrivacypolicy(par.getValueAsBoolean()); break; case "publisher": site.setPublisher(readPublisher(par)); break; case "content": site.setContent(readContent(par)); break; case "keywords": site.setKeywords(readCsvString(par)); break; default: readOther(site, par, fieldName); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
protected void readAppField(JsonParser par, App.Builder app, String fieldName) throws IOException { switch (fieldName) { case "id": app.setId(par.getText());/*from w ww .jav a2s . com*/ break; case "name": app.setName(par.getText()); break; case "bundle": app.setBundle(par.getText()); break; case "domain": app.setDomain(par.getText()); break; case "storeurl": app.setStoreurl(par.getText()); break; case "cat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { app.addCat(cat); } } break; case "sectioncat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { app.addSectioncat(cat); } } break; case "pagecat": for (startArray(par); endArray(par); par.nextToken()) { String cat = par.getText(); if (checkContentCategory(cat)) { app.addPagecat(cat); } } break; case "ver": app.setVer(par.getText()); break; case "privacypolicy": app.setPrivacypolicy(par.getValueAsBoolean()); break; case "paid": app.setPaid(par.getValueAsBoolean()); break; case "publisher": app.setPublisher(readPublisher(par)); break; case "content": app.setContent(readContent(par)); break; case "keywords": app.setKeywords(readCsvString(par)); break; default: readOther(app, par, fieldName); } }