Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > 864d1c3c3cd8df4e3a2692faf8776e05 > files > 719

db4o-doc-7.4-2.fc13.i686.rpm

<html>
  <head>
    <META http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Possible Solutions</title>
    <link rel="stylesheet" type="text/css" href="../../../../style.css">
  </head>
  <body>
    <div class="CommonContent">
      <div class="CommonContentArea">
        <h1>Possible Solutions</h1><script>
//We attach this function to a browser object as a variable so that if multiple of these blocks are
//present on the same page, then they will simply over-write eachother with the same function instead
//of generating a naming collision.
window.WikiCodeFormattingCopyToClipboard = function copyToClipboard(sID){
	var sContent = document.getElementById(sID).innerText;
	if( window.clipboardData && clipboardData.setData )
	{
		clipboardData.setData("Text", sContent);
	}
	else
	{
		alert("You must enable javascript access to your clipboard for this feature to work. Please referr to your browser documentation or Google search for instructions.");
	}
}
</script><p><font color="#990000">This topic applies to java version only</font></p><p>Of course, if you only use JDK5 or 6 there are no worries
about the final fields at all. But if you do not want to stick to the definite
java version and need to have the flexibility of switching to different java
versions you currently have 2 solutions:</p>

<ul><li>avoid using the final modifier in the persistent objects;</li><li>use translator.</li></ul>



<p>An example of the final fields translator can look like
this:</p>

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">FinalFieldTranslator.java</span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">01</span><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Open_Text').style.display='inline';"/><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">/**/</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_0_60_Open_Text"><span style="color: #008000;">/*</span><span style="color: #008000;"> Copyright (C) 2007 db4objects Inc. </span><span style="color: #008000; text-decoration: underline;">http://www.db4o.com</span><span style="color: #008000;"> </span><span style="color: #008000;">*/</span></span><span style="color: #000000;">
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/></span><span style="color: #0000FF;">package</span><span style="color: #000000;"> com.db4odoc.finalfields;
</span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/>
</span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/></span><span style="color: #0000FF;">import</span><span style="color: #000000;"> com.db4o.</span><span style="color: #000000;">*</span><span style="color: #000000;">;
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/></span><span style="color: #0000FF;">import</span><span style="color: #000000;"> com.db4o.config.</span><span style="color: #000000;">*</span><span style="color: #000000;">;
</span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/>
</span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/></span><span style="color: #008000;">//</span><span style="color: #008000;"> Translator allowing to store final fields on any Java version</span><span style="color: #008000;">
</span><span style="color: #008080;">08</span><span style="color: #008000;"><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Open_Text').style.display='inline';"/></span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">class</span><span style="color: #000000;"> FinalFieldTranslator </span><span style="color: #0000FF;">implements</span><span style="color: #000000;"> ObjectConstructor </span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_269_1224_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>  </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> Object onStore(ObjectContainer container,
</span><span style="color: #008080;">11</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Open_Text').style.display='inline';"/>      Object applicationObject) </span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_351_616_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    System.out.println(</span><span style="color: #000000;">&quot;</span><span style="color: #000000;">onStore for </span><span style="color: #000000;">&quot;</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> applicationObject);
</span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    TestFinal notStorable </span><span style="color: #000000;">=</span><span style="color: #000000;"> (TestFinal) applicationObject;
</span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    </span><span style="color: #008000;">//</span><span style="color: #008000;"> final fields values are stored to an array of objects</span><span style="color: #008000;">
</span><span style="color: #008080;">15</span><span style="color: #008000;"><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Open_Text').style.display='inline';"/></span><span style="color: #000000;">    </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Object[] </span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_549_612_Open_Text"><span style="color: #000000;">{ </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Integer(notStorable._final_i),
</span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/>        notStorable._final_s }</span></span><span style="color: #000000;">;
</span><span style="color: #008080;">17</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/>  }</span></span><span style="color: #000000;">
</span><span style="color: #008080;">18</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">19</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>  </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> Object onInstantiate(ObjectContainer container,
</span><span style="color: #008080;">20</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Open_Text').style.display='inline';"/>      Object storedObject) </span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_698_968_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">21</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    System.out.println(</span><span style="color: #000000;">&quot;</span><span style="color: #000000;">onInstantiate for </span><span style="color: #000000;">&quot;</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> storedObject);
</span><span style="color: #008080;">22</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    Object[] raw </span><span style="color: #000000;">=</span><span style="color: #000000;"> (Object[]) storedObject;
</span><span style="color: #008080;">23</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    </span><span style="color: #008000;">//</span><span style="color: #008000;"> final fields values are restored from the array of objects</span><span style="color: #008000;">
</span><span style="color: #008080;">24</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;">    </span><span style="color: #0000FF;">int</span><span style="color: #000000;"> i </span><span style="color: #000000;">=</span><span style="color: #000000;"> ((Integer) raw[</span><span style="color: #000000;">0</span><span style="color: #000000;">]).intValue();
</span><span style="color: #008080;">25</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    String s </span><span style="color: #000000;">=</span><span style="color: #000000;"> (String) raw[</span><span style="color: #000000;">1</span><span style="color: #000000;">];
</span><span style="color: #008080;">26</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> TestFinal(i, s);
</span><span style="color: #008080;">27</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/>  }</span></span><span style="color: #000000;">
</span><span style="color: #008080;">28</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">29</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>  </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">void</span><span style="color: #000000;"> onActivate(ObjectContainer container,
</span><span style="color: #008080;">30</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Open_Text').style.display='inline';"/>      Object applicationObject, Object storedObject) </span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1071_1163_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">31</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    System.out.println(</span><span style="color: #000000;">&quot;</span><span style="color: #000000;">onActivate for </span><span style="color: #000000;">&quot;</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> applicationObject
</span><span style="color: #008080;">32</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>        </span><span style="color: #000000;">+</span><span style="color: #000000;"> </span><span style="color: #000000;">&quot;</span><span style="color: #000000;"> / </span><span style="color: #000000;">&quot;</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> storedObject);
</span><span style="color: #008080;">33</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/>  }</span></span><span style="color: #000000;">
</span><span style="color: #008080;">34</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">35</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Open_Text').style.display='inline';"/>  </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> Class storedClass() </span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesType_HandlingFinal_FieldsFinalFieldsJava.ZipsFinalFieldTranslator.Java_FinalFieldTranslator.Java_523_59_1193_1222_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">36</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>    </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> Object[].</span><span style="color: #0000FF;">class</span><span style="color: #000000;">;
</span><span style="color: #008080;">37</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/>  }</span></span><span style="color: #000000;">
</span><span style="color: #008080;">38</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/>}</span></span></div></pre></div></div>

<p>The
following call should be issued before opening the ObjectContainer to connect
the translator to the TestFinal class:</p>

<p><code>Db4o.configure().objectClass(TestFinal.class).translate(new
FinalFieldTranslator());</code></p>



</div>
    </div>
    <div id="footer">
					This revision (3) was last Modified 2007-01-22T19:20:48 by Tetyana.
				</div>
  </body>
</html>