List of usage examples for com.google.gson.stream JsonReader nextString
public String nextString() throws IOException
From source file:org.komodo.rest.relational.json.BasicEntitySerializer.java
License:Open Source License
/** * {@inheritDoc}/* w ww . j av a 2s . com*/ * * @see org.komodo.rest.relational.json.AbstractEntitySerializer#read(com.google.gson.stream.JsonReader) */ @Override public T read(final JsonReader in) throws IOException { final T entity = createEntity(); beginRead(in); while (in.hasNext()) { final String name = in.nextName(); if (readExtension(name, entity, in) != null) continue; if (PROPERTIES.equals(name)) readProperties(in, entity); else if (LINKS.equals(name)) readLinks(in, entity); else { JsonToken token = in.peek(); switch (token) { case BOOLEAN: entity.addTuple(name, in.nextBoolean()); break; case NUMBER: { double value = in.nextDouble(); if (value % 1 == 0) entity.addTuple(name, (int) value); else entity.addTuple(name, value); break; } case STRING: entity.addTuple(name, in.nextString()); break; case NULL: in.nextNull(); entity.addTuple(name, null); break; case BEGIN_ARRAY: final Object[] value = BUILDER.fromJson(in, Object[].class); // // BUILDER always converts json numbers to double regardless // of them being integers so need to do some checking and on-the-fly // conversion // for (int i = 0; i < value.length; ++i) { if (value[i] instanceof Double && ((double) value[i] % 1) == 0) value[i] = ((Double) value[i]).intValue(); } entity.addTuple(name, value); break; default: throw new IOException(Messages.getString(Messages.Error.UNEXPECTED_JSON_TOKEN, name)); } } } if (!isComplete(entity)) { throw new IOException(Messages.getString(INCOMPLETE_JSON, getClass().getSimpleName())); } endRead(in); return entity; }
From source file:org.komodo.rest.relational.json.ConnectionAttributesSerializer.java
License:Open Source License
/** * {@inheritDoc}//w ww. j a va2 s . co m * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public KomodoConnectionAttributes read(final JsonReader in) throws IOException { final KomodoConnectionAttributes ConnectionAttr = createEntity(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case KomodoConnectionAttributes.JNDI_LABEL: ConnectionAttr.setJndi(in.nextString()); break; case KomodoConnectionAttributes.JDBC_LABEL: ConnectionAttr.setJdbc(in.nextBoolean()); break; case KomodoConnectionAttributes.DRIVER_LABEL: ConnectionAttr.setDriver(in.nextString()); break; case KomodoConnectionAttributes.PARAMETERS_LABEL: Map<String, String> parameters = BUILDER.fromJson(in, Map.class); for (Map.Entry<String, String> parameter : parameters.entrySet()) { ConnectionAttr.setParameter(parameter.getKey(), parameter.getValue()); } break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return ConnectionAttr; }
From source file:org.komodo.rest.relational.json.DataserviceUpdateAttributesSerializer.java
License:Open Source License
/** * {@inheritDoc}//from w ww. j ava2 s. c om * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public KomodoDataserviceUpdateAttributes read(final JsonReader in) throws IOException { final KomodoDataserviceUpdateAttributes updateAttrs = new KomodoDataserviceUpdateAttributes(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case KomodoDataserviceUpdateAttributes.DATASERVICE_NAME_LABEL: updateAttrs.setDataserviceName(in.nextString()); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_TABLE_PATH_LABEL: updateAttrs.setTablePath(in.nextString()); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_MODEL_SOURCE_PATH_LABEL: updateAttrs.setModelSourcePath(in.nextString()); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_COLUMN_NAMES_LABEL: List<String> colNames = BUILDER.fromJson(in, List.class); updateAttrs.setColumnNames(colNames); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_RH_TABLE_PATH_LABEL: updateAttrs.setRhTablePath(in.nextString()); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_RH_MODEL_SOURCE_PATH_LABEL: updateAttrs.setRhModelSourcePath(in.nextString()); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_RH_COLUMN_NAMES_LABEL: List<String> rhColNames = BUILDER.fromJson(in, List.class); updateAttrs.setRhColumnNames(rhColNames); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_JOIN_TYPE_LABEL: updateAttrs.setJoinType(in.nextString()); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_CRITERIA_PREDICATES_LABEL: List<Map<String, String>> predicates = BUILDER.fromJson(in, List.class); updateAttrs.setCriteriaPredicates(predicates); break; case KomodoDataserviceUpdateAttributes.DATASERVICE_VIEW_DDL_LABEL: updateAttrs.setViewDdl(in.nextString()); break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return updateAttrs; }
From source file:org.komodo.rest.relational.json.DataSourceJdbcTableAttributesSerializer.java
License:Open Source License
/** * {@inheritDoc}//w w w.jav a2 s . c o m * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public KomodoDataSourceJdbcTableAttributes read(final JsonReader in) throws IOException { final KomodoDataSourceJdbcTableAttributes updateAttrs = new KomodoDataSourceJdbcTableAttributes(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case KomodoDataSourceJdbcTableAttributes.DATA_SOURCE_NAME_LABEL: updateAttrs.setDataSourceName(in.nextString()); break; case KomodoDataSourceJdbcTableAttributes.CATALOG_FILTER_LABEL: updateAttrs.setCatalogFilter(in.nextString()); break; case KomodoDataSourceJdbcTableAttributes.SCHEMA_FILTER_LABEL: updateAttrs.setSchemaFilter(in.nextString()); break; case KomodoDataSourceJdbcTableAttributes.TABLE_FILTER_LABEL: updateAttrs.setTableFilter(in.nextString()); break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return updateAttrs; }
From source file:org.komodo.rest.relational.json.FileAttributesSerializer.java
License:Open Source License
/** * {@inheritDoc}/*from www .j av a 2 s . co m*/ * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public KomodoFileAttributes read(final JsonReader in) throws IOException { final KomodoFileAttributes fileAttr = new KomodoFileAttributes(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); if (readContent(in, fileAttr, name) != null) continue; switch (name) { case KomodoFileAttributes.NAME_LABEL: fileAttr.setName(in.nextString()); break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return fileAttr; }
From source file:org.komodo.rest.relational.json.ImportExportStatusSerializer.java
License:Open Source License
/** * {@inheritDoc}/* w w w. j a v a2 s. c om*/ * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public ImportExportStatus read(final JsonReader in) throws IOException { final ImportExportStatus status = new ImportExportStatus(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case ImportExportStatus.NAME_LABEL: status.setName(in.nextString()); break; case ImportExportStatus.TYPE_LABEL: status.setType(in.nextString()); break; case ImportExportStatus.SUCCESS_LABEL: status.setSuccess(in.nextBoolean()); break; case ImportExportStatus.DOWNLOADABLE_LABEL: status.setDownloadable(in.nextBoolean()); break; case ImportExportStatus.CONTENT_LABEL: status.setContent(in.nextString()); break; case ImportExportStatus.MESSAGE_LABEL: status.setMessage(in.nextString()); break; case ImportExportStatus.DOWNLOADABLE_SIZE_LABEL: status.setDownloadableSize(in.nextLong()); break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return status; }
From source file:org.komodo.rest.relational.json.PathAttributeSerializer.java
License:Open Source License
protected String readPath(JsonReader in, String name, T pathAttr) throws IOException { if (KomodoPathAttribute.PATH_LABEL.equals(name)) { String path = in.nextString(); pathAttr.setPath(path);/*from w w w .ja va 2 s .c o m*/ return path; } return null; }
From source file:org.komodo.rest.relational.json.QueryAttributeSerializer.java
License:Open Source License
/** * {@inheritDoc}// ww w . java 2 s . c o m * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public KomodoQueryAttribute read(final JsonReader in) throws IOException { final KomodoQueryAttribute queryAttr = new KomodoQueryAttribute(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case KomodoQueryAttribute.QUERY_LABEL: queryAttr.setQuery(in.nextString()); break; case KomodoQueryAttribute.TARGET_LABEL: queryAttr.setTarget(in.nextString()); break; case KomodoQueryAttribute.LIMIT_LABEL: queryAttr.setLimit(in.nextInt()); break; case KomodoQueryAttribute.OFFSET_LABEL: queryAttr.setOffset(in.nextInt()); break; } } in.endObject(); return queryAttr; }
From source file:org.komodo.rest.relational.json.QueryColumnSerializer.java
License:Open Source License
/** * {@inheritDoc}//from w ww . j av a 2 s .co m * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public RestQueryColumn read(final JsonReader in) throws IOException { final RestQueryColumn queryColumn = new RestQueryColumn(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case RestQueryColumn.NAME_LABEL: queryColumn.setName(in.nextString()); break; case RestQueryColumn.LABEL_LABEL: queryColumn.setLabel(in.nextString()); break; case RestQueryColumn.TYPE_LABEL: queryColumn.setType(in.nextString()); break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return queryColumn; }
From source file:org.komodo.rest.relational.json.SavedSearcherSerializer.java
License:Open Source License
/** * {@inheritDoc}/*from w w w . j a va 2s .c o m*/ * * @see com.google.gson.TypeAdapter#read(com.google.gson.stream.JsonReader) */ @Override public KomodoSavedSearcher read(final JsonReader in) throws IOException { final KomodoSavedSearcher status = new KomodoSavedSearcher(); in.beginObject(); while (in.hasNext()) { final String name = in.nextName(); switch (name) { case KomodoSavedSearcher.NAME_LABEL: status.setName(in.nextString()); break; case KomodoSavedSearcher.QUERY_LABEL: status.setQuery(in.nextString()); break; case KomodoSavedSearcher.PARAMETER_LABEL: final String[] parameters = BUILDER.fromJson(in, String[].class); status.setParameters(Arrays.asList(parameters)); break; default: throw new IOException(Messages.getString(UNEXPECTED_JSON_TOKEN, name)); } } in.endObject(); return status; }