org.apache.ignite.binary

## Interface Binarylizable

All Known Implementing Classes:
  BinaryTreeMap, BinaryTreeSet, GridClosureProcessor.C1MLAV2, GridClosureProcessor.C1V2, GridClosureProcessor.C2MLAV2, GridClosureProcessor.C2V2, GridClosureProcessor.C4MLAV2, GridClosureProcessor.C4V2, IgfsBlockKey, IgfsBlockLocationImpl, IgfsClientAbstractCallable, IgfsClientAffinityCallable, IgfsClientDeleteCallable, IgfsClientExistsCallable, IgfsClientInfoCallable, IgfsClientListFilesCallable, IgfsClientListPathsCallable, IgfsClientMetaIdsForPathCallable, IgfsClientMetaInfoForPathCallable, IgfsClientMetaUnlockCallable, IgfsClientMkdirsCallable, IgfsClientRenameCallable, IgfsClientSetTimesCallable, IgfsClientSizeCallable, IgfsClientSummaryCallable, IgfsClientUpdateCallable, IgfsDataPutProcessor, IgfsDirectoryInfo, IgfsFileAffinityRange, IgfsFileImpl, IgfsFileInfo, IgfsFileMap, IgfsListingEntry, IgfsMetaDirectoryCreateProcessor, IgfsMetaDirectoryListingAddProcessor, IgfsMetaDirectoryListingRemoveProcessor, IgfsMetaDirectoryListingRenameProcessor, IgfsMetaDirectoryListingReplaceProcessor, IgfsMetaFileCreateProcessor, IgfsMetaFileLockProcessor, IgfsMetaFileRangeDeleteProcessor, IgfsMetaFileRangeUpdateProcessor, IgfsMetaFileReserveSpaceProcessor, IgfsMetaFileUnlockProcessor, IgfsMetaUpdatePropertiesProcessor, IgfsMetaUpdateTimesProcessor, IgfsNodePredicate, IgfsPath, IgfsPathSummary, PlatformDotNetEntityFrameworkCacheEntry, PlatformDotNetEntityFrameworkCacheKey, PlatformDotNetSessionData, PlatformDotNetSessionLockResult, PlatformDotNetSessionSetAndUnlockProcessor, PlatformJavaObjectFactoryProxy, WebSessionAttributeProcessor, WebSessionEntity

    public interface Binarylizable

Interface that allows to implement custom serialization logic for binary objects. IgniteObject is not required to implement this interface, in which case Ignite will automatically serialize binary objects using reflection.

This interface, in a way, is analogous to `Externalizable` interface, which allows users to override default serialization logic, usually for performance reasons. The only difference here is that binary serialization is already very fast and implementing custom serialization logic for binary does not provide significant performance gains.

### Method Summary

Methods
`void` `readBinary(BinaryReader reader)` Reads fields from provided reader.
`void` `writeBinary(BinaryWriter writer)` Writes fields to provided writer.

### Method Detail

#### writeBinary

    void writeBinary(BinaryWriter writer)
                     throws BinaryObjectException

Writes fields to provided writer.

Parameters:
  `writer` - Binary object writer.
Throws:
  `BinaryObjectException` - In case of error.

#### readBinary

    void readBinary(BinaryReader reader)
                    throws BinaryObjectException

Reads fields from provided reader.

Parameters:
  `reader` - Binary object reader.
Throws:
  `BinaryObjectException` - In case of error.

2017 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 1.9.0
Release Date | : March 2 2017