Avro C#
Public Member Functions | Static Public Member Functions | Properties | List of all members
Avro.UnionSchema Class Reference

Class for union schemas More...

Inheritance diagram for Avro.UnionSchema:
Avro.UnnamedSchema Avro.Schema

Public Member Functions

int MatchingBranch (Schema s)
 Returns the index of a branch that can read the data written by the given schema s. More...
 
override bool CanRead (Schema writerSchema)
 Checks if this schema can read data written by the given schema. Used for decoding data. More...
 
override bool Equals (object obj)
 Compares two union schema objects More...
 
override int GetHashCode ()
 Hash code function More...
 
- Public Member Functions inherited from Avro.Schema
override string ToString ()
 Returns the canonical JSON representation of this schema. More...
 
string GetProperty (string key)
 Returns the schema's custom property value given the property name More...
 
override int GetHashCode ()
 Hash code function More...
 

Static Public Member Functions

static UnionSchema Create (List< Schema > schemas, PropertyMap customProperties=null)
 Creates a new UnionSchema More...
 
- Static Public Member Functions inherited from Avro.Schema
static Schema Parse (string json)
 Parses a given JSON string to create a new schema object More...
 
static string GetTypeString (Type type)
 Returns symbol name for the given schema type More...
 
static Schema.? Type ParseType (string type, bool removeQuotes=false)
 Parses the Schema.Type from a string. More...
 

Properties

IList< SchemaSchemas [get]
 List of schemas in the union More...
 
int Count [get]
 Count of schemas in the union More...
 
Schema this[int index] [get]
 Returns the schema at the given branch. More...
 
- Properties inherited from Avro.UnnamedSchema
override string Name [get]
 
- Properties inherited from Avro.Schema
Type Tag [get]
 Schema type property More...
 
abstract string Name [get]
 If this is a record, enum or fixed, returns its name, otherwise the name the primitive type. More...
 
virtual string Fullname [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. More...
 

Additional Inherited Members

- Public Types inherited from Avro.Schema
enum  Type {
  Type.Null, Type.Boolean, Type.Int, Type.Long,
  Type.Float, Type.Double, Type.Bytes, Type.String,
  Type.Record, Type.Enumeration, Type.Array, Type.Map,
  Type.Union, Type.Fixed, Type.Error, Type.Logical
}
 Enum for schema types More...
 
- Protected Member Functions inherited from Avro.UnnamedSchema
 UnnamedSchema (Type type, PropertyMap props)
 Base constructor for an UnnamedSchema. More...
 
- Protected Member Functions inherited from Avro.Schema
 Schema (Type type, PropertyMap props)
 Constructor for schema class More...
 
- Static Protected Member Functions inherited from Avro.Schema
static bool areEqual (object o1, object o2)
 Compares two objects, null is equal to null More...
 
static int getHashCode (object obj)
 Hash code helper function More...
 

Detailed Description

Class for union schemas

Member Function Documentation

◆ CanRead()

override bool Avro.UnionSchema.CanRead ( Schema  writerSchema)
inlinevirtual

Checks if this schema can read data written by the given schema. Used for decoding data.

Parameters
writerSchemawriter schema
Returns
true if this and writer schema are compatible based on the AVRO specification, false otherwise

Reimplemented from Avro.Schema.

◆ Create()

static UnionSchema Avro.UnionSchema.Create ( List< Schema schemas,
PropertyMap  customProperties = null 
)
inlinestatic

Creates a new UnionSchema

Parameters
schemasThe union schemas
customPropertiesDictionary that provides access to custom properties
Returns
New UnionSchema

◆ Equals()

override bool Avro.UnionSchema.Equals ( object  obj)
inline

Compares two union schema objects

Parameters
objunion schema object to compare against this schema
Returns
true if objects are equal, false otherwise

◆ GetHashCode()

override int Avro.UnionSchema.GetHashCode ( )
inline

Hash code function

Returns

◆ MatchingBranch()

int Avro.UnionSchema.MatchingBranch ( Schema  s)
inline

Returns the index of a branch that can read the data written by the given schema s.

Parameters
sThe schema to match the branches against.
Returns
The index of the matching branch. If non matches a -1 is returned.

Property Documentation

◆ Count

int Avro.UnionSchema.Count
get

Count of schemas in the union

◆ Schemas

IList<Schema> Avro.UnionSchema.Schemas
get

List of schemas in the union

◆ this[int index]

Schema Avro.UnionSchema.this[int index]
get

Returns the schema at the given branch.

Parameters
indexIndex to the branch, starting with 0.
Returns
The branch corresponding to the given index.

The documentation for this class was generated from the following file: