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

Class for record schemas More...

Inheritance diagram for Avro.RecordSchema:
Avro.NamedSchema Avro.Schema

Public Member Functions

bool Contains (string fieldName)
 Returns true if and only if the record contains a field by the given name. More...
 
bool TryGetField (string fieldName, out Field field)
 Gets a field with a specified name. More...
 
bool TryGetFieldAlias (string fieldName, out Field field)
 Gets a field with a specified alias. More...
 
IEnumerator< FieldGetEnumerator ()
 Returns an enumerator which enumerates over the fields of this record schema More...
 
override bool Equals (object obj)
 Compares equality of two record schemas More...
 
override int GetHashCode ()
 Hash code function More...
 
override bool CanRead (Schema writerSchema)
 Checks if this schema can read data written by the given schema. Used for decoding data. 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 RecordSchema Create (string name, List< Field > fields, string space=null, IEnumerable< string > aliases=null, PropertyMap customProperties=null, string doc=null)
 Creates a new instance of RecordSchema 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

List< FieldFields [get, set]
 List of fields in the record More...
 
int Count [get]
 Number of fields in the record More...
 
Fieldthis[string name] [get]
 Returns the field with the given name. More...
 
- Properties inherited from Avro.NamedSchema
SchemaName SchemaName [get]
 Name of the schema, contains name, namespace and enclosing namespace More...
 
override string Name [get]
 Name of the schema More...
 
string Namespace [get]
 Namespace of the schema More...
 
override string Fullname [get]
 Namespace.Name of the schema More...
 
string Documentation [get]
 Documentation for the schema, if any. Null if there is no documentation. More...
 
- 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.NamedSchema
 NamedSchema (Type type, SchemaName name, IList< SchemaName > aliases, PropertyMap props, SchemaNames names, string doc)
 Constructor for named schema class More...
 
bool InAliases (SchemaName name)
 Determines whether the given schema name is one of this NamedSchema's aliases. 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.NamedSchema
static SchemaName GetName (JToken jtok, string encspace)
 Parses the name and namespace from the given JSON schema object then creates SchemaName object including the given enclosing namespace More...
 
static IList< SchemaNameGetAliases (JToken jtok, string space, string encspace)
 Parses the 'aliases' property from the given JSON token 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 record schemas

Member Function Documentation

◆ CanRead()

override bool Avro.RecordSchema.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.

◆ Contains()

bool Avro.RecordSchema.Contains ( string  fieldName)
inline

Returns true if and only if the record contains a field by the given name.

Parameters
fieldNameThe name of the field
Returns
true if the field exists, false otherwise

◆ Create()

static RecordSchema Avro.RecordSchema.Create ( string  name,
List< Field fields,
string  space = null,
IEnumerable< string >  aliases = null,
PropertyMap  customProperties = null,
string  doc = null 
)
inlinestatic

Creates a new instance of RecordSchema

Parameters
namename of the record schema
fieldslist of fields for the record
spacetype of record schema, either record or error
aliaseslist of aliases for the record name
customPropertiescustom properties on this schema
docdocumentation for this named schema

◆ Equals()

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

Compares equality of two record schemas

Parameters
objrecord schema to compare against this schema
Returns
true if the two schemas are equal, false otherwise

◆ GetEnumerator()

IEnumerator<Field> Avro.RecordSchema.GetEnumerator ( )
inline

Returns an enumerator which enumerates over the fields of this record schema

Returns
Enumerator over the field in the order of their definition

◆ GetHashCode()

override int Avro.RecordSchema.GetHashCode ( )
inline

Hash code function

Returns

◆ TryGetField()

bool Avro.RecordSchema.TryGetField ( string  fieldName,
out Field  field 
)
inline

Gets a field with a specified name.

Parameters
fieldNameName of the field to get.
fieldWhen this method returns true, contains the field with the specified name. When this method returns false, null.
Returns
True if a field with the specified name exists; false otherwise.

◆ TryGetFieldAlias()

bool Avro.RecordSchema.TryGetFieldAlias ( string  fieldName,
out Field  field 
)
inline

Gets a field with a specified alias.

Parameters
fieldNameAlias of the field to get.
fieldWhen this method returns true, contains the field with the specified alias. When this method returns false, null.
Returns
True if a field with the specified alias exists; false otherwise.

Property Documentation

◆ Count

int Avro.RecordSchema.Count
get

Number of fields in the record

◆ Fields

List<Field> Avro.RecordSchema.Fields
getset

List of fields in the record

◆ this[string name]

Field? Avro.RecordSchema.this[string name]
get

Returns the field with the given name.

Parameters
namefield name
Returns
Field object

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