Click here to Skip to main content
15,880,469 members
Articles / Programming Languages / Java / Java SE

OpenNxSerialization

Rate me:
Please Sign up or sign in to vote.
5.00/5 (1 vote)
16 Jun 2009GPL32 min read 20.4K   177   9  
Speed up object serialization in Java.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_01) on Thu Jun 11 19:13:26 GMT+05:00 2009 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
NxEnumSerializationSurrogate (NxSerialzation Help)
</TITLE>

<META NAME="date" CONTENT="2009-06-11">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="NxEnumSerializationSurrogate (NxSerialzation Help)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/NxEnumSerializationSurrogate.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxDoubleSerializationSurrogate.html" title="class in com.nextreme.opennxserialization.standard.io.surrogates"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxExternalizableSerializationSurrogate.html" title="class in com.nextreme.opennxserialization.standard.io.surrogates"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../index.html?com/nextreme/opennxserialization/standard/io/surrogates/NxEnumSerializationSurrogate.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="NxEnumSerializationSurrogate.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.nextreme.opennxserialization.standard.io.surrogates</FONT>
<BR>
Class NxEnumSerializationSurrogate</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by ">com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogateBase
      <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>com.nextreme.opennxserialization.standard.io.surrogates.NxEnumSerializationSurrogate</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>com.nextreme.opennxserialization.core.io.surrogates.NxBuiltinSerializationSurrogate, com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogate</DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>NxEnumSerializationSurrogate</B><DT>extends com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogateBase<DT>implements com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogate, com.nextreme.opennxserialization.core.io.surrogates.NxBuiltinSerializationSurrogate</DL>
</PRE>

<P>
NxEnumSerializationSurrogate is responsible for writing and reading
 instances of enumrated types.
<P>

<P>
<DL>
<DT><B>Version:</B></DT>
  <DD>1.0, September 18, 2008</DD>
</DL>
<HR>

<P>

<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxEnumSerializationSurrogate.html#NxEnumSerializationSurrogate(java.lang.Class)">NxEnumSerializationSurrogate</A></B>(java.lang.Class&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new instance of NxEnumSerializationSurrogate</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxEnumSerializationSurrogate.html#readObject(com.nextreme.opennxserialization.core.io.NxObjectInput)">readObject</A></B>(com.nextreme.opennxserialization.core.io.NxObjectInput&nbsp;input)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read and return an object.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxEnumSerializationSurrogate.html#writeObject(com.nextreme.opennxserialization.core.io.NxObjectOutput, java.lang.Object)">writeObject</A></B>(com.nextreme.opennxserialization.core.io.NxObjectOutput&nbsp;output,
            java.lang.Object&nbsp;graph)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Write an object to the underlying storage or stream.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogateBase"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogateBase</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>createInstance, getClassHandle, getRealClass, setClassHandle, writeHandle</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogate"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogate</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>getClassHandle, getRealClass, setClassHandle, writeHandle</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="NxEnumSerializationSurrogate(java.lang.Class)"><!-- --></A><H3>
NxEnumSerializationSurrogate</H3>
<PRE>
public <B>NxEnumSerializationSurrogate</B>(java.lang.Class&nbsp;type)</PRE>
<DL>
<DD>Creates a new instance of NxEnumSerializationSurrogate
<P>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="readObject(com.nextreme.opennxserialization.core.io.NxObjectInput)"><!-- --></A><H3>
readObject</H3>
<PRE>
public java.lang.Object <B>readObject</B>(com.nextreme.opennxserialization.core.io.NxObjectInput&nbsp;input)
                            throws com.nextreme.opennxserialization.core.io.surrogates.NxInstantiationException,
                                   com.nextreme.opennxserialization.core.io.surrogates.NxIOException</PRE>
<DL>
<DD>Read and return an object. The class that implements this interface
 defines where the object is "read" from.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>readObject</CODE> in interface <CODE>com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogate</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>input</CODE> - the stream to read data from in order to restore the object.
<DT><B>Returns:</B><DD>the object read from the stream
<DT><B>Throws:</B>
<DD><CODE>java.lang.ClassNotFoundException</CODE> - If the class of a serialized
      object cannot be found.
<DD><CODE>java.io.IOException</CODE> - If any of the usual Input/Output
 related exceptions occur.
<DD><CODE>com.nextreme.opennxserialization.core.io.surrogates.NxInstantiationException</CODE>
<DD><CODE>com.nextreme.opennxserialization.core.io.surrogates.NxIOException</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="writeObject(com.nextreme.opennxserialization.core.io.NxObjectOutput, java.lang.Object)"><!-- --></A><H3>
writeObject</H3>
<PRE>
public void <B>writeObject</B>(com.nextreme.opennxserialization.core.io.NxObjectOutput&nbsp;output,
                        java.lang.Object&nbsp;graph)
                 throws com.nextreme.opennxserialization.core.io.surrogates.NxIOException</PRE>
<DL>
<DD>Write an object to the underlying storage or stream.  The
 class that implements this interface defines how the object is
 written.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>writeObject</CODE> in interface <CODE>com.nextreme.opennxserialization.core.io.surrogates.NxSerializationSurrogate</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>output</CODE> - the stream to write the object to.<DD><CODE>graph</CODE> - the object to write .
<DT><B>Throws:</B>
<DD><CODE>java.io.IOException</CODE> - Any of the usual Input/Output related exceptions.
<DD><CODE>com.nextreme.opennxserialization.core.io.surrogates.NxIOException</CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/NxEnumSerializationSurrogate.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxDoubleSerializationSurrogate.html" title="class in com.nextreme.opennxserialization.standard.io.surrogates"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../com/nextreme/opennxserialization/standard/io/surrogates/NxExternalizableSerializationSurrogate.html" title="class in com.nextreme.opennxserialization.standard.io.surrogates"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../index.html?com/nextreme/opennxserialization/standard/io/surrogates/NxEnumSerializationSurrogate.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="NxEnumSerializationSurrogate.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The GNU General Public License (GPLv3)


Written By
Architect
Pakistan Pakistan
Let a = b ....... (1)
a - b = a - b
a^2 - ab = a^2 - ab
a^2 - ab = a^2 - b^2 (from 1)
a (a - b) = (a + b) (a - b)
a = (a + b) ...... (2)

if a = 1
1 = (1 + 1) (from 1 & 2)
1 = 2 !!

Comments and Discussions