Avro C#
 All Classes Namespaces Functions Variables Enumerations Properties
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Properties
Avro.Schema Class Reference

Base class for all schema types. More...

Inheritance diagram for Avro.Schema:
Avro.NamedSchema Avro.UnnamedSchema Avro.EnumSchema Avro.FixedSchema Avro.RecordSchema Avro.ArraySchema Avro.MapSchema Avro.PrimitiveSchema Avro.UnionSchema

List of all members.

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.

Detailed Description

Base class for all schema types.


Member Enumeration Documentation

Enum for schema types.


Constructor & Destructor Documentation

Avro.Schema.Schema ( Type  type,
PropertyMap  props 
) [inline, protected]

Constructor for schema class.

Parameters:
type

Member Function Documentation

static bool Avro.Schema.areEqual ( object  o1,
object  o2 
) [inline, static, protected]

Compares two objects, null is equal to null.

Parameters:
o1first object
o2second object
Returns:
true if two objects are equal, false otherwise
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.

Parameters:
writerSchemaThe writer's schema to match against.
Returns:
True if and only if the current schema matches the writer's.

Reimplemented in Avro.RecordSchema, Avro.EnumSchema, Avro.UnionSchema, Avro.FixedSchema, Avro.PrimitiveSchema, Avro.MapSchema, and Avro.ArraySchema.

override int Avro.Schema.GetHashCode ( ) [inline]
static int Avro.Schema.getHashCode ( object  obj) [inline, static, protected]

Hash code helper function.

Parameters:
obj
Returns:
string Avro.Schema.GetProperty ( string  key) [inline]

Returns the schema's custom property value given the property name.

Parameters:
keycustom property name
Returns:
custom property value
static string Avro.Schema.GetTypeString ( Type  type) [inline, static]

Returns symbol name for the given schema type.

Parameters:
typeschema type
Returns:
symbol name
static Schema Avro.Schema.Parse ( string  json) [inline, static]

Parses a given JSON string to create a new schema object.

Parameters:
jsonJSON string
Returns:
new Schema object
override string Avro.Schema.ToString ( ) [inline]

Returns the canonical JSON representation of this schema.

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.

Parameters:
writerJSON writer
nameslist of named schemas already written
encspaceenclosing 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.

Parameters:
writerJSON writer
nameslist of named schemas already written
encspaceenclosing namespace of the schema

Property Documentation

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.


The documentation for this class was generated from the following file:
 All Classes Namespaces Functions Variables Enumerations Properties