Base class for all schema types. More...
Public Types | |
enum | Type { Null, Boolean, Int, Long, Float, Double, Bytes, String, Record, Enumeration, Array, Map, Union, Fixed, Error } |
Enum for schema types. More... | |
Public Member Functions | |
override string | ToString () |
Returns the canonical JSON representation of this schema. | |
string | GetProperty (string key) |
Returns the schema's custom property value given the property name. | |
override int | GetHashCode () |
Hash code function. | |
virtual bool | CanRead (Schema writerSchema) |
Returns true if and only if data written using writerSchema can be read using the current schema according to the Avro resolution rules. | |
Static Public Member Functions | |
static Schema | Parse (string json) |
Parses a given JSON string to create a new schema object. | |
static string | GetTypeString (Type type) |
Returns symbol name for the given schema type. | |
Protected Member Functions | |
Schema (Type type, PropertyMap props) | |
Constructor for schema class. | |
virtual internal void | WriteJsonFields (JsonTextWriter writer, SchemaNames names, string encspace) |
Default implementation for writing schema properties in JSON format. | |
virtual internal void | WriteJson (JsonTextWriter writer, SchemaNames names, string encspace) |
Writes schema object in JSON format. | |
Static Protected Member Functions | |
static bool | areEqual (object o1, object o2) |
Compares two objects, null is equal to null. | |
static int | getHashCode (object obj) |
Hash code helper function. | |
Properties | |
Type | Tag [get, set] |
Schema type property. | |
abstract string | Name [get] |
The name of this schema. If this is a named schema such as an enum, it returns the fully qualified name for the schema. For other schemas, it returns the type of the schema. |
Base class for all schema types.
enum Avro::Schema::Type |
Enum for schema types.
Avro.Schema.Schema | ( | Type | type, |
PropertyMap | props | ||
) | [inline, protected] |
Constructor for schema class.
type |
static bool Avro.Schema.areEqual | ( | object | o1, |
object | o2 | ||
) | [inline, static, protected] |
Compares two objects, null is equal to null.
o1 | first object |
o2 | second object |
virtual bool Avro.Schema.CanRead | ( | Schema | writerSchema | ) | [inline, virtual] |
Returns true if and only if data written using writerSchema can be read using the current schema according to the Avro resolution rules.
writerSchema | The writer's schema to match against. |
Reimplemented in Avro.RecordSchema, Avro.EnumSchema, Avro.UnionSchema, Avro.FixedSchema, Avro.PrimitiveSchema, Avro.MapSchema, and Avro.ArraySchema.
override int Avro.Schema.GetHashCode | ( | ) | [inline] |
Hash code function.
Reimplemented in Avro.RecordSchema, Avro.EnumSchema, Avro.UnionSchema, Avro.PrimitiveSchema, Avro.MapSchema, Avro.ArraySchema, and Avro.FixedSchema.
static int Avro.Schema.getHashCode | ( | object | obj | ) | [inline, static, protected] |
Hash code helper function.
obj |
string Avro.Schema.GetProperty | ( | string | key | ) | [inline] |
Returns the schema's custom property value given the property name.
key | custom property name |
static string Avro.Schema.GetTypeString | ( | Type | type | ) | [inline, static] |
Returns symbol name for the given schema type.
type | schema type |
static Schema Avro.Schema.Parse | ( | string | json | ) | [inline, static] |
Parses a given JSON string to create a new schema object.
json | JSON string |
override string Avro.Schema.ToString | ( | ) | [inline] |
Returns the canonical JSON representation of this schema.
virtual internal void Avro.Schema.WriteJson | ( | JsonTextWriter | writer, |
SchemaNames | names, | ||
string | encspace | ||
) | [inline, protected, virtual] |
Writes schema object in JSON format.
writer | JSON writer |
names | list of named schemas already written |
encspace | enclosing namespace of the schema |
Reimplemented in Avro.PrimitiveSchema.
virtual internal void Avro.Schema.WriteJsonFields | ( | JsonTextWriter | writer, |
SchemaNames | names, | ||
string | encspace | ||
) | [inline, protected, virtual] |
Default implementation for writing schema properties in JSON format.
writer | JSON writer |
names | list of named schemas already written |
encspace | enclosing namespace of the schema |
abstract string Avro.Schema.Name [get] |
The name of this schema. If this is a named schema such as an enum, it returns the fully qualified name for the schema. For other schemas, it returns the type of the schema.
Reimplemented in Avro.NamedSchema, and Avro.UnnamedSchema.
Type Avro.Schema.Tag [get, set] |
Schema type property.