ept / avrodoc

Documentation tool for Avro schemas
Apache License 2.0
148 stars 82 forks source link

Feature Request: Output arbitrary attributes for all idl objects #16

Closed mphuff closed 11 years ago

mphuff commented 11 years ago

All idl objects (protocols, records, messages, errors, etc) that can be namespaced can also accept arbitrary attribute decorations.

idl can be decorated with these arbitrary attributes and the avro tools converter from idl to avro schema maintains these as top-level attributes under the specific record for either the protocol, record, message, etc.

Example (IDL): @linksFrom("com.inome.testTypeA") @linksTo("com.inome.testTypeB") record EdgeAType { string property = ""; }

Example (Avro SCHEMA): { "type" : "record", "name" : "EdgeAType", "namespace" : "com.inome", "doc" : "Some documentation.", "fields" : [ { "name" : "field1", "type" : [ "null", "com.inome.X" ], "doc" : "Some documentation", "default" : null } ], "linksFrom" : "com.inome.testTypeA", "linksTo" : "com.inome.testTypeB" }

The output of this should go on the specific details page for each type of object. Probably as simply a separate table of key-value properties as the keys and values are just arbitrary strings. However, if a specific namespaced type is discovered in either place, an appropriate link should be generated.

ept commented 11 years ago

Fixed in #17.