List of usage examples for com.google.gson.stream JsonReader hasNext
public boolean hasNext() throws IOException
From source file:com.nridge.core.io.gson.DocumentJSON.java
License:Open Source License
private void loadRelated(JsonReader aReader, Document aDocument) throws IOException { Relationship relationship;/*w ww .j ava 2s . co m*/ RelationshipJSON relationshipJSON = new RelationshipJSON(); ArrayList<Relationship> relationshipList = aDocument.getRelationships(); aReader.beginArray(); while (aReader.hasNext()) { relationship = relationshipJSON.loadRelationship(aReader); relationshipList.add(relationship); } aReader.endArray(); }
From source file:com.nridge.core.io.gson.DocumentJSON.java
License:Open Source License
/** * Parses an JSON stream and loads it into a document and returns * an instance to it./*w w w . ja v a 2 s.c o m*/ * * @param aReader Json reader stream instance. * * @return Document instance containing the parsed data. * * @throws java.io.IOException I/O related exception. */ public Document loadDocument(JsonReader aReader) throws IOException { String jsonName, jsonValue; Document document = new Document(IO.XML_DOCUMENT_NODE_NAME); aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); if (StringUtils.equals(jsonName, IO.JSON_NAME_MEMBER_NAME)) document.setName(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_TYPE_MEMBER_NAME)) document.setType(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_VERSION_MEMBER_NAME)) document.setSchemaVersion(Integer.parseInt(aReader.nextString())); else if (StringUtils.equals(jsonName, IO.JSON_TITLE_MEMBER_NAME)) document.setTitle(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_FEATURES_ARRAY_NAME)) { aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); jsonValue = aReader.nextString(); document.addFeature(jsonName, jsonValue); } aReader.endObject(); } else if (StringUtils.equals(jsonName, IO.JSON_TABLE_OBJECT_NAME)) { DataTableJSON dataTableJSON = new DataTableJSON(); dataTableJSON.load(aReader); document.setTable(dataTableJSON.getTable()); } else if (StringUtils.equals(jsonName, IO.JSON_RELATED_ARRAY_NAME)) loadRelated(aReader, document); else if (StringUtils.equals(jsonName, IO.JSON_ACL_ARRAY_NAME)) loadACL(aReader, document); else aReader.skipValue(); } aReader.endObject(); return document; }
From source file:com.nridge.core.io.gson.DocumentOpJSON.java
License:Open Source License
/** * Parses an JSON stream and loads it into an internally managed * document operation instance.//from ww w . j a v a 2 s. c om * * @param aReader Json reader stream instance. * * @throws java.io.IOException I/O related exception. */ public void load(JsonReader aReader) throws IOException { String jsonName; mCriteria = null; mDocumentList.clear(); mField.clearFeatures(); aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); if (StringUtils.equals(jsonName, IO.JSON_FIELD_OBJECT_NAME)) { DataFieldJSON dataFieldJSON = new DataFieldJSON(); mField = dataFieldJSON.load(aReader); } else if (StringUtils.equals(jsonName, IO.JSON_DOCUMENTS_ARRAY_NAME)) { DocumentJSON documentJSON; aReader.beginArray(); while (aReader.hasNext()) { documentJSON = new DocumentJSON(); documentJSON.load(aReader); mDocumentList.add(documentJSON.getDocument()); } aReader.endArray(); } else if (StringUtils.equals(jsonName, IO.JSON_CRITERIA_OBJECT_NAME)) { DSCriteriaJSON dsCriteriaJSON = new DSCriteriaJSON(); dsCriteriaJSON.load(aReader); mCriteria = dsCriteriaJSON.getCriteria(); } else aReader.skipValue(); } aReader.endObject(); }
From source file:com.nridge.core.io.gson.DocumentReplyJSON.java
License:Open Source License
/** * Parses an JSON stream and loads it into an internally managed * document instance./*from w ww . ja v a 2s . com*/ * * @param aReader Json reader stream instance. * * @throws java.io.IOException I/O related exception. */ public void load(JsonReader aReader) throws IOException { String jsonName; mDocumentList.clear(); mField.clearFeatures(); aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); if (StringUtils.equals(jsonName, IO.JSON_FIELD_OBJECT_NAME)) { DataFieldJSON dataFieldJSON = new DataFieldJSON(); mField = dataFieldJSON.load(aReader); } else if (StringUtils.equals(jsonName, IO.JSON_DOCUMENTS_ARRAY_NAME)) { DocumentJSON documentJSON; aReader.beginArray(); while (aReader.hasNext()) { documentJSON = new DocumentJSON(); documentJSON.load(aReader); mDocumentList.add(documentJSON.getDocument()); } aReader.endArray(); } else aReader.skipValue(); } aReader.endObject(); }
From source file:com.nridge.core.io.gson.DSCriteriaJSON.java
License:Open Source License
/** * Parses an JSON stream and loads it into a bag/table. * * @param aReader Json reader stream instance. * * @throws java.io.IOException I/O related exception. *///from w w w.ja v a 2 s . co m public void load(JsonReader aReader) throws IOException { DataField dataField; String jsonName, jsonValue, logicalOperator; mDSCriteria.reset(); aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); if (StringUtils.equals(jsonName, IO.JSON_NAME_MEMBER_NAME)) mDSCriteria.setName(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_FEATURES_ARRAY_NAME)) { aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); jsonValue = aReader.nextString(); mDSCriteria.addFeature(jsonName, jsonValue); } aReader.endObject(); } else if (StringUtils.equals(jsonName, IO.JSON_FIELDS_ARRAY_NAME)) { aReader.beginArray(); while (aReader.hasNext()) { dataField = mDataFieldJSON.load(aReader); if (dataField != null) { logicalOperator = dataField.getFeature(IO.JSON_OPERATOR_MEMBER_NAME); if (StringUtils.isEmpty(logicalOperator)) logicalOperator = Field.operatorToString(Field.Operator.EQUAL); mDSCriteria.add(dataField, Field.stringToOperator(logicalOperator)); } } aReader.endArray(); } else aReader.skipValue(); } aReader.endObject(); }
From source file:com.nridge.core.io.gson.RangeJSON.java
License:Open Source License
/** * Parses an JSON stream and loads it into a field range. * * @param aReader Json reader stream instance. * * @throws java.io.IOException I/O related exception. *//*from w w w. jav a2 s . c o m*/ public FieldRange load(JsonReader aReader) throws IOException { String jsonName; boolean isFirst = true; Date firstDate = new Date(); long firstLong = Long.MIN_VALUE; int firstInt = Integer.MIN_VALUE; double firstDouble = Double.MIN_VALUE; Field.Type rangeType = Field.Type.Text; FieldRange fieldRange = new FieldRange(); aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); if (StringUtils.equals(jsonName, IO.JSON_TYPE_MEMBER_NAME)) rangeType = Field.stringToType(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_DELIMITER_MEMBER_NAME)) fieldRange.setDelimiterChar(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_VALUE_MEMBER_NAME)) fieldRange.setItems(StrUtl.expandToList(aReader.nextString(), fieldRange.getDelimiterChar())); else if (StringUtils.equals(jsonName, "min")) { switch (rangeType) { case Long: if (isFirst) { isFirst = false; firstLong = aReader.nextLong(); } else fieldRange = new FieldRange(aReader.nextLong(), firstLong); break; case Integer: if (isFirst) { isFirst = false; firstInt = aReader.nextInt(); } else fieldRange = new FieldRange(aReader.nextInt(), firstInt); break; case Double: if (isFirst) { isFirst = false; firstDouble = aReader.nextDouble(); } else fieldRange = new FieldRange(aReader.nextDouble(), firstDouble); break; case DateTime: if (isFirst) { isFirst = false; firstDate = Field.createDate(aReader.nextString()); } else fieldRange = new FieldRange(Field.createDate(aReader.nextString()), firstDate); break; default: aReader.skipValue(); break; } } else if (StringUtils.equals(jsonName, "max")) { switch (rangeType) { case Long: if (isFirst) { isFirst = false; firstLong = aReader.nextLong(); } else fieldRange = new FieldRange(firstLong, aReader.nextLong()); break; case Integer: if (isFirst) { isFirst = false; firstInt = aReader.nextInt(); } else fieldRange = new FieldRange(firstInt, aReader.nextInt()); break; case Double: if (isFirst) { isFirst = false; firstDouble = aReader.nextDouble(); } else fieldRange = new FieldRange(firstDouble, aReader.nextDouble()); break; case DateTime: if (isFirst) { isFirst = false; firstDate = Field.createDate(aReader.nextString()); } else fieldRange = new FieldRange(firstDate, Field.createDate(aReader.nextString())); break; default: aReader.skipValue(); break; } } else aReader.skipValue(); } aReader.endObject(); return fieldRange; }
From source file:com.nridge.core.io.gson.RelationshipJSON.java
License:Open Source License
private void loadDocuments(JsonReader aReader, Relationship aRelationship) throws IOException { Document relationshipDocument; DocumentJSON documentJSON = new DocumentJSON(); ArrayList<Document> documentList = aRelationship.getDocuments(); aReader.beginArray();/*from www.j ava2 s .co m*/ while (aReader.hasNext()) { relationshipDocument = documentJSON.loadDocument(aReader); documentList.add(relationshipDocument); } aReader.endArray(); }
From source file:com.nridge.core.io.gson.RelationshipJSON.java
License:Open Source License
/** * Parses an JSON stream and loads it into a relationship and returns * an instance to it./*from ww w .j a v a 2 s . co m*/ * * @param aReader Json reader stream instance. * * @throws java.io.IOException I/O related exception. */ public Relationship loadRelationship(JsonReader aReader) throws IOException { String jsonName, jsonValue; Relationship relationship = new Relationship(); aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); if (StringUtils.equals(jsonName, IO.JSON_TYPE_MEMBER_NAME)) relationship.setType(aReader.nextString()); else if (StringUtils.equals(jsonName, IO.JSON_FEATURES_ARRAY_NAME)) { aReader.beginObject(); while (aReader.hasNext()) { jsonName = aReader.nextName(); jsonValue = aReader.nextString(); relationship.addFeature(jsonName, jsonValue); } aReader.endObject(); } else if (StringUtils.equals(jsonName, IO.JSON_DOCUMENTS_ARRAY_NAME)) loadDocuments(aReader, relationship); else aReader.skipValue(); } aReader.endObject(); return relationship; }
From source file:com.nridge.ds.solr.SolrCollection.java
License:Open Source License
private ArrayList<String> load(InputStream anIS) throws IOException { String jsonName, jsonValue;//from w w w . jav a 2 s. c om ArrayList<String> configSetList = new ArrayList<>(); String configSetString = IOUtils.toString(anIS, StrUtl.CHARSET_UTF_8); StringReader stringReader = new StringReader(configSetString); JsonReader jsonReader = new JsonReader(stringReader); jsonReader.beginObject(); while (jsonReader.hasNext()) { jsonName = jsonReader.nextName(); if (StringUtils.equals(jsonName, "collections")) { jsonReader.beginArray(); while (jsonReader.hasNext()) { jsonValue = jsonReader.nextString(); configSetList.add(jsonValue); } jsonReader.endArray(); } } jsonReader.endObject(); return configSetList; }
From source file:com.nridge.ds.solr.SolrCollection.java
License:Open Source License
private void parseReply(String aMessage) throws DSException, IOException { String jsonName;//w w w .ja va 2s. c o m Logger appLogger = mAppMgr.getLogger(this, "parseReply"); appLogger.trace(mAppMgr.LOGMSG_TRACE_ENTER); int msgCode = 0; String msgString = StringUtils.EMPTY; StringReader stringReader = new StringReader(aMessage); JsonReader jsonReader = new JsonReader(stringReader); jsonReader.beginObject(); while (jsonReader.hasNext()) { jsonName = jsonReader.nextName(); if (StringUtils.equals(jsonName, "exception")) { jsonReader.beginObject(); while (jsonReader.hasNext()) { jsonName = jsonReader.nextName(); if (StringUtils.equals(jsonName, "msg")) msgString = jsonReader.nextString(); else if (StringUtils.equals(jsonName, "rspCode")) msgCode = jsonReader.nextInt(); else jsonReader.skipValue(); } jsonReader.endObject(); } else jsonReader.skipValue(); } jsonReader.endObject(); if (StringUtils.isNotEmpty(msgString)) throw new DSException(String.format("Solr Exception [%d]: %s", msgCode, msgString)); appLogger.trace(mAppMgr.LOGMSG_TRACE_DEPART); }