blob: a1a9af734dffdac7ae6a920af7f2afdea79b1397 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.6.0/dotnetdoc/class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html" />
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>Apache Ignite.NET: Apache.Ignite.Core.Binary.BinaryReflectiveSerializer Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-61232409-1', 'auto');
ga('send', 'pageview');
</script></head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="ignite_logo.png"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">Apache Ignite.NET
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Apache.Ignite.Core.Binary.BinaryReflectiveSerializer Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Binary serializer which reflectively writes all fields except of ones with System.NonSerializedAttribute.
<a href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Ignite.Core.Binary.BinaryReflectiveSerializer:</div>
<div class="dyncontent">
<div class="center">
<img src="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.png" usemap="#Apache.Ignite.Core.Binary.BinaryReflectiveSerializer_map" alt=""/>
<map id="Apache.Ignite.Core.Binary.BinaryReflectiveSerializer_map" name="Apache.Ignite.Core.Binary.BinaryReflectiveSerializer_map">
<area href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_serializer.html" title="Binary serializer. " alt="Apache.Ignite.Core.Binary.IBinarySerializer" shape="rect" coords="0,0,314,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2a01cfda7c6d5b5af1b8f27962194237"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html#a2a01cfda7c6d5b5af1b8f27962194237">WriteBinary</a> (object obj, <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_writer.html">IBinaryWriter</a> writer)</td></tr>
<tr class="memdesc:a2a01cfda7c6d5b5af1b8f27962194237"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write portalbe object. <a href="#a2a01cfda7c6d5b5af1b8f27962194237">More...</a><br /></td></tr>
<tr class="separator:a2a01cfda7c6d5b5af1b8f27962194237"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bb64aefa381f0406b079d891e983313"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html#a0bb64aefa381f0406b079d891e983313">ReadBinary</a> (object obj, <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_reader.html">IBinaryReader</a> reader)</td></tr>
<tr class="memdesc:a0bb64aefa381f0406b079d891e983313"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read binary object. <a href="#a0bb64aefa381f0406b079d891e983313">More...</a><br /></td></tr>
<tr class="separator:a0bb64aefa381f0406b079d891e983313"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a7e25e783c174e5c5d80b8ce96af3418d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html#a7e25e783c174e5c5d80b8ce96af3418d">RawMode</a><code> [get, set]</code></td></tr>
<tr class="memdesc:a7e25e783c174e5c5d80b8ce96af3418d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets or value indicating whether raw mode serialization should be used. <a href="#a7e25e783c174e5c5d80b8ce96af3418d">More...</a><br /></td></tr>
<tr class="separator:a7e25e783c174e5c5d80b8ce96af3418d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Note that Java platform stores dates as a difference between current time and predefined absolute UTC date. Therefore, this difference is always the same for all time zones. .NET, in contrast, stores dates as a difference between current time and some predefined date relative to the current time zone. It means that this difference will be different as you change time zones. To overcome this discrepancy Ignite always converts .Net date to UTC form before serializing and allows user to decide whether to deserialize them in UTC or local form using <code>ReadTimestamp(..., true/false)</code> methods in <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_reader.html" title="Reader for binary objects. ">IBinaryReader</a> and <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_raw_reader.html" title="Raw reader for binary objects. ">IBinaryRawReader</a>. This serializer always read dates in UTC form. It means that if you have local date in any field/property, it will be implicitly converted to UTC form after the first serialization-deserialization cycle. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0bb64aefa381f0406b079d891e983313"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Apache.Ignite.Core.Binary.BinaryReflectiveSerializer.ReadBinary </td>
<td>(</td>
<td class="paramtype">object&#160;</td>
<td class="paramname"><em>obj</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_reader.html">IBinaryReader</a>&#160;</td>
<td class="paramname"><em>reader</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">obj</td><td>Instantiated empty object.</td></tr>
<tr><td class="paramname">reader</td><td>Reader.</td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">BinaryObjectException</td><td>Type is not registered in serializer: + type.Name</td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_serializer.html#a53d42b0c2fd8c341b4e0bfa55f19c8ad">Apache.Ignite.Core.Binary.IBinarySerializer</a>.</p>
</div>
</div>
<a class="anchor" id="a2a01cfda7c6d5b5af1b8f27962194237"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Apache.Ignite.Core.Binary.BinaryReflectiveSerializer.WriteBinary </td>
<td>(</td>
<td class="paramtype">object&#160;</td>
<td class="paramname"><em>obj</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_writer.html">IBinaryWriter</a>&#160;</td>
<td class="paramname"><em>writer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">obj</td><td>Object.</td></tr>
<tr><td class="paramname">writer</td><td>Writer.</td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">BinaryObjectException</td><td>Type is not registered in serializer: + type.Name</td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_serializer.html#a2add1948e3eb8c0232cf8ac36e0f0f4b">Apache.Ignite.Core.Binary.IBinarySerializer</a>.</p>
</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="a7e25e783c174e5c5d80b8ce96af3418d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool Apache.Ignite.Core.Binary.BinaryReflectiveSerializer.RawMode</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span><span class="mlabel">set</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Raw mode does not include field names, improving performance and memory usage. However, queries do not support raw objects. </p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespace_apache.html">Apache</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite.html">Ignite</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core.html">Core</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_binary.html">Binary</a></li><li class="navelem"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_reflective_serializer.html">BinaryReflectiveSerializer</a></li>
<li class="footer">Generated on Wed May 18 2016 16:44:12 for Apache Ignite.NET by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
</ul>
</div>
</body>
</html>