Robert Yokota created AVRO-2822:
-----------------------------------
Summary: Need a method to reconstruct the original schema string
before referenced schemas were resolved and inlined by the Parser
Key: AVRO-2822
URL: https://issues.apache.org/jira/browse/AVRO-2822
Project: Apache Avro
Issue Type: Improvement
Components: java
Affects Versions: 1.9.2
Reporter: Robert Yokota
Fix For: 1.10.0
I need a method to reconstruct the original schema string before referenced
schemas were resolved and inlined by the Parser.
There is already logic to do this for a schema in the context of a protocol,
but not when a schema (and its referenced schemas) are submitted to the
parser() method of Schema.Parser.
The method would essentially look like
```
public String toString(Collection<Schema> referencedSchemas, boolean pretty) {
try {
StringWriter writer = new StringWriter();
JsonGenerator gen = FACTORY.createGenerator(writer);
if (pretty) {
gen.useDefaultPrettyPrinter();
}
Schema.Names names = new Schema.Names();
if (referencedSchemas != null) {
for (Schema s : referencedSchemas) {
names.add(s);
}
}
toJson(names, gen);
gen.flush();
return writer.toString();
} catch (IOException e) {
throw new AvroRuntimeException(e);
}
}
```
--
This message was sent by Atlassian Jira
(v8.3.4#803005)