blob: 0ec9edb4c249851be40cdb7c1161b23f235dec51 [file] [log] [blame]
{
"protocol" : "Simple",
"namespace" : "org.apache.avro.test",
"doc" : "A simple test case.",
"version" : "1.0.5",
"types" : [ {
"type" : "enum",
"name" : "Kind",
"doc" : "A kind of record.",
"symbols" : [ "FOO", "BAR", "BAZ" ],
"aliases" : [ "org.foo.KindOf" ]
}, {
"type" : "enum",
"name" : "Status",
"symbols" : [ "A", "B", "C" ],
"default" : "C"
}, {
"type" : "record",
"name" : "TestRecord",
"doc" : "A TestRecord.",
"fields" : [ {
"name" : "name",
"type" : {
"type": "string",
"avro.java.string": "String"
},
"default" : "foo",
"order" : "ignore"
}, {
"name" : "kind",
"type" : "Kind",
"doc" : "The kind of record.",
"order" : "descending"
}, {
"name" : "status",
"type" : "Status",
"doc" : "The status of the record.",
"default" : "A"
}, {
"name" : "hash",
"type" : {
"type" : "fixed",
"name" : "MD5",
"doc" : "An MD5 hash.",
"size" : 16
},
"default" : "0000000000000000"
}, {
"name" : "nullableHash",
"type" : [ "null", "MD5" ],
"default" : null,
"aliases" : [ "hash", "hsh" ]
}, {
"name" : "value",
"type" : "double",
"default" : "NaN"
}, {
"name" : "average",
"type" : "float",
"default" : "-Infinity"
}, {
"name": "d",
"type": {"type": "int", "logicalType": "date"},
"default": 0
}, {
"name": "t",
"type": [ {"type": "int", "logicalType": "time-millis"}, "null" ],
"default": 0
} , {
"name": "l",
"type": {"type": "long", "foo.bar": "bar.foo"},
"default": 0
} , {
"name": "a",
"type": {"type": "array", "items": "string", "foo.bar.bar": "foo.bar2"},
"default": []
} , {
"name": "prop",
"type": [ "null" , {"type":"string", "foo.foo.bar": 42, "foo.foo.foo": "3foo"} ],
"default": null
}],
"my-property" : {
"key" : 3
}
}, {
"type" : "error",
"name" : "TestError",
"fields" : [ {
"name" : "message",
"type" : "string"
} ]
} ],
"messages" : {
"hello" : {
"doc" : "method 'hello' takes @parameter 'greeting'",
"request" : [ {
"name" : "greeting",
"type" : "string"
} ],
"response" : "string"
},
"echo" : {
"request" : [ {
"name" : "record",
"type" : "TestRecord",
"default" : {
"name" : "bar",
"kind" : "BAR"
}
} ],
"response" : "TestRecord"
},
"add" : {
"doc" : "method 'add' takes @parameter 'arg1' @parameter 'arg2'",
"specialProp" : "test",
"request" : [ {
"name" : "arg1",
"type" : "int"
}, {
"name" : "arg2",
"type" : "int",
"default" : 0
} ],
"response" : "int"
},
"echoBytes" : {
"request" : [ {
"name" : "data",
"type" : "bytes"
} ],
"response" : "bytes"
},
"error" : {
"request" : [ ],
"response" : "null",
"errors" : [ "TestError" ]
},
"ping" : {
"request" : [ ],
"response" : "null",
"one-way" : true
}
}
}