List of usage examples for com.google.gson.stream JsonReader nextName
public String nextName() throws IOException
From source file:org.eclipse.thym.core.plugin.registry.CordovaPluginRegistryManager.java
License:Open Source License
private void parseDistDetails(JsonReader reader, RegistryPluginVersion plugin) throws IOException { reader.beginObject();//from www. j a va 2 s. c om JsonToken token = reader.peek(); while (token != JsonToken.END_OBJECT) { switch (token) { case NAME: String name = reader.nextName(); if ("shasum".equals(name)) { plugin.setShasum(reader.nextString()); break; } if ("tarball".equals(name)) { plugin.setTarball(reader.nextString()); break; } break; default: reader.skipValue(); break; } token = reader.peek(); } reader.endObject(); }
From source file:org.eclipse.thym.core.plugin.registry.CordovaPluginRegistryManager.java
License:Open Source License
private void parseVersions(JsonReader reader, CordovaRegistryPlugin plugin) throws IOException { reader.beginObject();//versions JsonToken token = reader.peek();//w w w. j a v a2s . c o m while (token != JsonToken.END_OBJECT) { switch (token) { case NAME: RegistryPluginVersion version = plugin.new RegistryPluginVersion(); version.setVersionNumber(reader.nextName()); readVersionInfo(reader, version); plugin.addVersion(version); break; default: reader.skipValue(); break; } token = reader.peek(); } reader.endObject(); }
From source file:org.eclipse.thym.core.plugin.registry.CordovaPluginRegistryManager.java
License:Open Source License
private void parseLatestVersion(JsonReader reader, CordovaRegistryPlugin plugin) throws IOException { reader.beginObject();//from w w w . j a va 2 s. c o m JsonToken token = reader.peek(); while (token != JsonToken.END_OBJECT) { switch (token) { case NAME: String tag = reader.nextName(); if ("latest".equals(tag)) { plugin.setLatestVersion(reader.nextString()); } break; default: reader.skipValue(); break; } token = reader.peek(); } reader.endObject(); }
From source file:org.eclipse.thym.core.plugin.registry.CordovaPluginRegistryManager.java
License:Open Source License
private void parseMaintainers(JsonReader reader, CordovaRegistryPlugin plugin) throws IOException { reader.beginArray();//from www.j a va 2 s . com String name = null, email = null; JsonToken token = reader.peek(); while (token != JsonToken.END_ARRAY) { switch (token) { case BEGIN_OBJECT: reader.beginObject(); name = email = null; break; case END_OBJECT: reader.endObject(); plugin.addMaintainer(email, name); break; case NAME: String tagName = reader.nextName(); if ("name".equals(tagName)) { name = reader.nextString(); break; } if ("email".equals(tagName)) { email = reader.nextString(); break; } default: Assert.isTrue(false, "Unexpected token"); break; } token = reader.peek(); } reader.endArray(); }
From source file:org.eclipse.tm4e.core.internal.parser.json.JSONPListParser.java
License:Open Source License
public T parse(InputStream contents) throws Exception { PList<T> pList = new PList<T>(theme); JsonReader reader = new JsonReader(new InputStreamReader(contents, StandardCharsets.UTF_8)); // reader.setLenient(true); boolean parsing = true; while (parsing) { JsonToken nextToken = reader.peek(); switch (nextToken) { case BEGIN_ARRAY: pList.startElement(null, "array", null, null); reader.beginArray();//from www . j av a2s .c om break; case END_ARRAY: pList.endElement(null, "array", null); reader.endArray(); break; case BEGIN_OBJECT: pList.startElement(null, "dict", null, null); reader.beginObject(); break; case END_OBJECT: pList.endElement(null, "dict", null); reader.endObject(); break; case NAME: String lastName = reader.nextName(); pList.startElement(null, "key", null, null); pList.characters(lastName.toCharArray(), 0, lastName.length()); pList.endElement(null, "key", null); break; case NULL: reader.nextNull(); break; case BOOLEAN: reader.nextBoolean(); break; case NUMBER: reader.nextLong(); break; case STRING: String value = reader.nextString(); pList.startElement(null, "string", null, null); pList.characters(value.toCharArray(), 0, value.length()); pList.endElement(null, "string", null); break; case END_DOCUMENT: parsing = false; break; default: break; } } reader.close(); return pList.getResult(); }
From source file:org.fao.fenix.wds.core.datasource.DatasourcePool.java
License:Open Source License
/** * @param reader Google's <code>JsonReader</code> * @return <code>DatasourceBean</code> populated out of the JSON file * @throws IOException//from w w w. java2s . com * * This method reads one of the objects of the JSON array through the * <code>JsonReader</code> and creates a <code>DatasourceBean</code> * out of it. */ public DatasourceBean readMessage(JsonReader reader) throws IOException { DatasourceBean b = new DatasourceBean(); reader.beginObject(); while (reader.hasNext()) { String name = reader.nextName(); if (name.equalsIgnoreCase("driver")) { DRIVER d = DRIVER.valueOf(reader.nextString().toUpperCase()); b.setDriver(d); } else if (name.equalsIgnoreCase("id")) { b.setId(reader.nextString()); } else if (name.equalsIgnoreCase("url")) { b.setUrl(reader.nextString()); } else if (name.equalsIgnoreCase("dbName")) { b.setDbName(reader.nextString()); } else if (name.equalsIgnoreCase("username")) { b.setUsername(reader.nextString()); } else if (name.equalsIgnoreCase("password")) { b.setPassword(reader.nextString()); } else if (name.equalsIgnoreCase("create")) { b.setCreate(reader.nextBoolean()); } else if (name.equalsIgnoreCase("retrieve")) { b.setRetrieve(reader.nextBoolean()); } else if (name.equalsIgnoreCase("update")) { b.setUpdate(reader.nextBoolean()); } else if (name.equalsIgnoreCase("delete")) { b.setDelete(reader.nextBoolean()); } else { reader.skipValue(); } } reader.endObject(); return b; }
From source file:org.gradle.api.internal.artifacts.ivyservice.ivyresolve.parser.ModuleMetadataParser.java
License:Apache License
public void parse(final LocallyAvailableExternalResource resource, final MutableModuleComponentResolveMetadata metadata) { resource.withContent(new Transformer<Void, InputStream>() { @Override/*from ww w .ja v a2s . c om*/ public Void transform(InputStream inputStream) { try { JsonReader reader = new JsonReader(new InputStreamReader(inputStream, "utf-8")); reader.beginObject(); if (reader.peek() != JsonToken.NAME) { throw new RuntimeException("Module metadata should contain a 'formatVersion' value."); } String name = reader.nextName(); if (!name.equals("formatVersion")) { throw new RuntimeException(String.format( "The 'formatVersion' value should be the first value in a module metadata. Found '%s' instead.", name)); } if (reader.peek() != JsonToken.STRING) { throw new RuntimeException("The 'formatVersion' value should have a string value."); } String version = reader.nextString(); if (!version.equals(FORMAT_VERSION)) { throw new RuntimeException(String.format( "Unsupported format version '%s' specified in module metadata. This version of Gradle supports format version %s only.", version, FORMAT_VERSION)); } consumeTopLevelElements(reader, metadata); return null; } catch (Exception e) { throw new MetaDataParseException("module metadata", resource, e); } } }); }
From source file:org.gradle.api.internal.artifacts.ivyservice.ivyresolve.parser.ModuleMetadataParser.java
License:Apache License
private void consumeTopLevelElements(JsonReader reader, MutableModuleComponentResolveMetadata metadata) throws IOException { while (reader.peek() != END_OBJECT) { String name = reader.nextName(); if ("variants".equals(name)) { consumeVariants(reader, metadata); } else if ("component".equals(name)) { consumeComponent(reader, metadata); } else {/*from w ww.j a v a 2 s .c o m*/ consumeAny(reader); } } }
From source file:org.gradle.api.internal.artifacts.ivyservice.ivyresolve.parser.ModuleMetadataParser.java
License:Apache License
private void consumeComponent(JsonReader reader, MutableModuleComponentResolveMetadata metadata) throws IOException { reader.beginObject();/* w w w . j av a 2s. c om*/ while (reader.peek() != END_OBJECT) { String name = reader.nextName(); if ("attributes".equals(name)) { metadata.setAttributes(consumeAttributes(reader)); } else { consumeAny(reader); } } reader.endObject(); }
From source file:org.gradle.api.internal.artifacts.ivyservice.ivyresolve.parser.ModuleMetadataParser.java
License:Apache License
private void consumeVariant(JsonReader reader, MutableModuleComponentResolveMetadata metadata) throws IOException { reader.beginObject();//w w w. j a v a 2 s .co m String variantName = null; ImmutableAttributes attributes = ImmutableAttributes.EMPTY; List<ModuleFile> files = Collections.emptyList(); List<ModuleDependency> dependencies = Collections.emptyList(); List<ModuleDependencyConstraint> dependencyConstraints = Collections.emptyList(); List<VariantCapability> capabilities = Collections.emptyList(); while (reader.peek() != END_OBJECT) { String name = reader.nextName(); if (name.equals("name")) { variantName = reader.nextString(); } else if (name.equals("attributes")) { attributes = consumeAttributes(reader); } else if (name.equals("files")) { files = consumeFiles(reader); } else if (name.equals("dependencies")) { dependencies = consumeDependencies(reader); } else if (name.equals("dependencyConstraints")) { dependencyConstraints = consumeDependencyConstraints(reader); } else if (name.equals("capabilities")) { capabilities = consumeCapabilities(reader); } else if (name.equals("available-at")) { // For now just collect this as another dependency // TODO - collect this information and merge the metadata from the other module dependencies = consumeVariantLocation(reader); } else { consumeAny(reader); } } reader.endObject(); MutableComponentVariant variant = metadata.addVariant(variantName, attributes); for (ModuleFile file : files) { variant.addFile(file.name, file.uri); } for (ModuleDependency dependency : dependencies) { variant.addDependency(dependency.group, dependency.module, dependency.versionConstraint, dependency.excludes, dependency.reason, dependency.attributes); } for (ModuleDependencyConstraint dependencyConstraint : dependencyConstraints) { variant.addDependencyConstraint(dependencyConstraint.group, dependencyConstraint.module, dependencyConstraint.versionConstraint, dependencyConstraint.reason, dependencyConstraint.attributes); } for (VariantCapability capability : capabilities) { variant.addCapability(capability.group, capability.name, capability.version); } }