Show / Hide Table of Contents

# Class BinaryConfiguration

Binary type configuration.

##### Inheritance

System.Object
BinaryConfiguration

##### Inherited Members

System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()

###### Namespace: Apache.Ignite.Core.Binary

###### Assembly: Apache.Ignite.Core.dll

##### Syntax

    public class BinaryConfiguration

### Constructors

#### BinaryConfiguration()

Initializes a new instance of the BinaryConfiguration class.

##### Declaration

    public BinaryConfiguration()

#### BinaryConfiguration(BinaryConfiguration)

Initializes a new instance of the BinaryConfiguration class.

##### Declaration

    public BinaryConfiguration(BinaryConfiguration cfg)

##### Parameters

Type | Name | Description
--- | --- | ---
BinaryConfiguration | cfg | The binary configuration to copy.

#### BinaryConfiguration(Type[])

Initializes a new instance of the BinaryConfiguration class.

##### Declaration

    public BinaryConfiguration(params Type[] binaryTypes)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Type[] | binaryTypes | Binary types to register.

### Fields

#### DefaultCompactFooter

Default CompactFooter setting.

##### Declaration

    public const bool DefaultCompactFooter = true

##### Field Value

Type | Description
--- | ---
System.Boolean |

#### DefaultForceTimestamp

Default ForceTimestamp setting.

##### Declaration

    public const bool DefaultForceTimestamp = false

##### Field Value

Type | Description
--- | ---
System.Boolean |

#### DefaultKeepDeserialized

Default KeepDeserialized setting.

##### Declaration

    public const bool DefaultKeepDeserialized = true

##### Field Value

Type | Description
--- | ---
System.Boolean |

### Properties

#### CompactFooter

Gets or sets a value indicating whether to write footers in compact form. When enabled, Ignite will not write fields metadata when serializing objects, because internally metadata is distributed inside cluster. This increases serialization performance.

WARNING! This mode should be disabled when already serialized data can be taken from some external sources (e.g.cache store which stores data in binary form, data center replication, etc.). Otherwise binary objects without any associated metadata could could not be deserialized.

##### Declaration

    public bool CompactFooter { get; set; }

##### Property Value

Type | Description
--- | ---
System.Boolean |

#### ForceTimestamp

Gets or sets a value indicating whether all DateTime keys, values and object fields should be written as a Timestamp.

Timestamp format is required for values used in SQL and for interoperation with other platforms. Only UTC values are supported in Timestamp format. Other values will cause an exception on write, unless TimestampConverter is provided.

Normally Ignite serializer uses WriteObject<T>(String, T) for DateTime fields, keys and values. This attribute changes the behavior to WriteTimestamp(String, Nullable<DateTime>).

See also TimestampAttribute, ForceTimestamp.

##### Declaration

    public bool ForceTimestamp { get; set; }

##### Property Value

Type | Description
--- | ---
System.Boolean |

#### IdMapper

Default ID mapper.

##### Declaration

    public IBinaryIdMapper IdMapper { get; set; }

##### Property Value

Type | Description
--- | ---
IBinaryIdMapper |

#### KeepDeserialized

Default keep deserialized flag.

##### Declaration

    public bool KeepDeserialized { get; set; }

##### Property Value

Type | Description
--- | ---
System.Boolean |

#### NameMapper

Default name mapper.

##### Declaration

    public IBinaryNameMapper NameMapper { get; set; }

##### Property Value

Type | Description
--- | ---
IBinaryNameMapper |

#### Serializer

Default serializer.

##### Declaration

    public IBinarySerializer Serializer { get; set; }

##### Property Value

Type | Description
--- | ---
IBinarySerializer |

#### TimestampConverter

Gets or sets a converter between System.DateTime and Java Timestamp. Called from WriteTimestamp(String, Nullable<DateTime>), WriteTimestampArray(String, Nullable<DateTime>[]), ReadTimestamp(String), ReadTimestampArray(String).

See also ForceTimestamp.

##### Declaration

    public ITimestampConverter TimestampConverter { get; set; }

##### Property Value

Type | Description
--- | ---
ITimestampConverter |

#### TypeConfigurations

Type configurations.

##### Declaration

    public ICollection<BinaryTypeConfiguration> TypeConfigurations { get; set; }

##### Property Value

Type | Description
--- | ---
System.Collections.Generic.ICollection<BinaryTypeConfiguration> |

#### Types

Gets or sets a collection of assembly-qualified type names (the result of System.Type.AssemblyQualifiedName) for binarizable types.

Shorthand for creating BinaryTypeConfiguration.

##### Declaration

    public ICollection<string> Types { get; set; }

##### Property Value

Type | Description
--- | ---
System.Collections.Generic.ICollection<System.String> |