<!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" xml:lang="en" lang="en" dir="ltr">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
				<meta name="keywords" content="SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning DeltaIndexing On or Off" />
		<link rel="shortcut icon" href="http://wiki.eclipse.org/SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/favicon.ico" />
		<link rel="search" type="application/opensearchdescription+xml" href="http://wiki.eclipse.org/opensearch_desc.php" title="Eclipsepedia (English)" />
<link rel="alternate" type="application/rss+xml" title="Eclipsepedia RSS Feed" href="http://wiki.eclipse.org/index.php?title=Special:Recentchanges&amp;feed=rss" />
<link rel="alternate" type="application/atom+xml" title="Eclipsepedia Atom Feed" href="http://wiki.eclipse.org/index.php?title=Special:Recentchanges&amp;feed=atom" />
	
		
		<title>SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning DeltaIndexing On or Off - Eclipsepedia</title>

		<style type="text/css" media="screen,projection">/*<![CDATA[*/ @import "/skins/eclipsenova/novaWide.css?116"; /*]]>*/</style>
		<link rel="stylesheet" type="text/css" media="print" href="http://wiki.eclipse.org/skins/eclipsenova/eclipsenovaPrint.css?116" />
		<link rel="stylesheet" type="text/css" media="handheld" href="http://wiki.eclipse.org/skins/eclipsenova/handheld.css?116" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/header.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/tabs.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/visual.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/layout.css" media="screen" />
		<link rel="stylesheet" type="text/css" href="http://wiki.eclipse.org/skins/eclipsenova/Nova/css/footer.css" media="screen" />
	        <!--[if IE]><link rel="stylesheet" type="text/css" href="/skins/eclipsenova/IEpngfix.css" media="screen" /><![endif]-->
		<!--[if lt IE 5.5000]><style type="text/css">@import "/skins/eclipsenova/IE50Fixes.css?116";</style> <![endif]-->
		<!--[if IE 5.5000]><style type="text/css">@import "/skins/eclipsenova/IE55Fixes.css?116";</style><![endif]-->
		<!--[if IE 6]><style type="text/css">@import "/skins/eclipsenova/IE60Fixes.css?116";</style><![endif]-->
		<!--[if IE 7]><style type="text/css">@import "/skins/eclipsenova/IE70Fixes.css?116";</style><![endif]-->
		<!--[if lt IE 7]><script type="text/javascript" src="/skins/common/IEFixes.js?116"></script>
		<meta http-equiv="imagetoolbar" content="no" /><![endif]-->
		<script type= "text/javascript">/*<![CDATA[*/
var skin = "eclipsenova";
var stylepath = "/skins";
var wgArticlePath = "/$1";
var wgScriptPath = "";
var wgScript = "/index.php";
var wgServer = "http://wiki.eclipse.org";
var wgCanonicalNamespace = "";
var wgCanonicalSpecialPageName = false;
var wgNamespaceNumber = 0;
var wgPageName = "SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off";
var wgTitle = "SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning DeltaIndexing On or Off";
var wgAction = "view";
var wgRestrictionEdit = [];
var wgRestrictionMove = [];
var wgArticleId = "22044";
var wgIsArticle = true;
var wgUserName = null;
var wgUserGroups = null;
var wgUserLanguage = "en";
var wgContentLanguage = "en";
var wgBreakFrames = false;
var wgCurRevisionId = "174934";
var wgVersion = "1.12.0";
var wgEnableAPI = true;
var wgEnableWriteAPI = false;
/*]]>*/</script>
                
		<script type="text/javascript" src="http://wiki.eclipse.org/skins/common/wikibits.js?116"><!-- wikibits js --></script>

<!-- Performance mods similar to those for bug 166401 -->
		<script type="text/javascript" src="http://wiki.eclipse.org/index.php?title=-&amp;action=raw&amp;gen=js&amp;useskin=eclipsenova"><!-- site js --></script>

		<!-- Head Scripts -->
				<script type="text/javascript" src="http://wiki.eclipse.org/skins/common/ajax.js?116"></script>
<style type="text/css">/*<![CDATA[*/
.source-xml {line-height: normal; font-size: medium;}
.source-xml li {line-height: normal;}
/**
 * GeSHi Dynamically Generated Stylesheet
 * --------------------------------------
 * Dynamically generated stylesheet for xml
 * CSS class: source-xml, CSS id: 
 * GeSHi (C) 2004 - 2007 Nigel McNie (http://qbnz.com/highlighter)
 */
.source-xml .de1, .source-xml .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal;}
.source-xml  {}
.source-xml .head {}
.source-xml .foot {}
.source-xml .imp {font-weight: bold; color: red;}
.source-xml .ln-xtra {color: #cc0; background-color: #ffc;}
.source-xml li {font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;}
.source-xml li.li2 {font-weight: bold;}
.source-xml .coMULTI {color: #808080; font-style: italic;}
.source-xml .es0 {color: #000099; font-weight: bold;}
.source-xml .br0 {color: #66cc66;}
.source-xml .st0 {color: #ff0000;}
.source-xml .nu0 {color: #cc66cc;}
.source-xml .sc0 {color: #00bbdd;}
.source-xml .sc1 {color: #ddbb00;}
.source-xml .sc2 {color: #339933;}
.source-xml .sc3 {color: #009900;}
.source-xml .re0 {color: #000066;}
.source-xml .re1 {font-weight: bold; color: black;}
.source-xml .re2 {font-weight: bold; color: black;}

/*]]>*/
</style>
<style type="text/css">/*<![CDATA[*/
@import "/index.php?title=MediaWiki:Geshi.css&usemsgcache=yes&action=raw&ctype=text/css&smaxage=18000";
/*]]>*/
</style><link rel="stylesheet" type="text/css" href="Turning_DeltaIndexing_On_or_Off.html" />	</head>
<body  class="mediawiki ns-0 ltr page-SMILA_Specifications_DeltaIndexingAndConnectivtyDiscussion09_Turning_DeltaIndexing_On_or_Off">
	<div id="globalWrapper">


		<div id="column-one">
<!-- Eclipse Additions for the Top Nav start here M. Ward-->

		      <div id="header">
               <div id="header-graphic">
                 <img src="http://wiki.eclipse.org/skins/eclipsenova/eclipse.png" alt="Eclipse Wiki">
               </div>
<!-- Pulled 101409 Mward	   -->
            
            <div class="portlet" id="p-personal">
              <div class="pBody">
              <ul>
                <li id="pt-login"><a href="http://wiki.eclipse.org/index.php?title=Special:Userlogin&amp;returnto=SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off">Log in</a></li>
                      </ul>
              </div>
            </div>

            <div id="header-icons">
	      <div id="sites">
              <ul id="sitesUL">
                <li><a href="http://www.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/eclipseIcon.png" width="28" height="28" alt="Eclipse Foundation" title="Eclipse Foundation" /><div>Eclipse Foundation</div></a></li>
                <li><a href="http://marketplace.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/marketplace.png" width="28" height="28" alt="Eclipse Marketplace" title="Eclipse Marketplace" /><div>Eclipse Marketplace</div></a></li>
                <li><a href="https://bugs.eclipse.org/bugs"><img src="http://dev.eclipse.org/custom_icons/system-search-bw.png" width="28" height="28" alt="Bugzilla" title="Bugzilla" /><div>Bugzilla</div></a></li>
                <li><a href="http://live.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/audio-input-microphone-bw.png" width="28" height="28" alt="Live" title="Live" /><div>Eclipse Live</div></a></li>
                <li><a href="http://planeteclipse.org"><img src="http://dev.eclipse.org/large_icons/devices/audio-card.png" width="28" height="28" alt="PlanetEclipse" title="Planet" /><div>Planet Eclipse</div></a></li>
                <li><a href="http://portal.eclipse.org"><img src="http://dev.eclipse.org/custom_icons/preferences-system-network-proxy-bw.png" width="28" height="28" alt="Portal" title="Portal" /><div>My Foundation Portal</div></a></li>
              </ul>
              </div>
            </div>
        </div> 
<!-- NEW HEADER STUFF HERE -->
       <div id="header-menu">
         <div id="header-nav">
               <ul> 		 <li><a class="first_one" href="http://wiki.eclipse.org/" target="_self">Home</a></li>                  <li><a  href="http://www.eclipse.org/downloads/" target="_self">Downloads</a></li> 
                 <li><a  href="http://www.eclipse.org/users/" target="_self">Users</a></li> 
                 <li><a  href="http://www.eclipse.org/membership/" target="_self">Members</a></li> 
                 <li><a  href="http://wiki.eclipse.org/index.php/Development_Resources" target="_self">Committers</a></li> 
                 <li><a  href="http://www.eclipse.org/resources/" target="_self">Resources</a></li> 
                 <li><a  href="http://www.eclipse.org/projects/" target="_self">Projects</a></li> 
                 <li><a  href="http://www.eclipse.org/org/" target="_self">About Us</a></li> 
                </ul>
         </div>
         <div id="header-utils">
<!-- moved the search window here -->
                           <form action="http://wiki.eclipse.org/Special:Search" >
                  <input class="input" name="search" type="text" accesskey="f" value="" />
                    <input type='submit' onclick="this.submit();" name="go" id="searchGoButton" class="button" title="Go to a page with this exact name if one exists" value="Go" />&nbsp;
                    <input type='submit' onclick="this.submit();" name="fulltext" class="button" id="mw-searchButton" title="Search Eclipsepedia for this text"  value="Search" />
                </form>
		 </div>
      </div>


<!-- Eclipse Additions for the Header stop here -->
<!-- Additions and mods for leftside nav Start here -->

<!--Started nav  rip here-->
<!-- these are the nav controls main page, changes etc -->
    <div id="novaContent" class="faux">
            <div id="leftcol">
          <ul id="leftnav">
<!-- these are the page controls, edit history etc -->
            	  <li class="separator"><a class="separator">Navigation &#160;&#160;</li>
                                <li id="n-mainpage"><a href="http://wiki.eclipse.org/Main_Page">Main Page</a></li>
	                                <li id="n-portal"><a href="http://wiki.eclipse.org/Eclipsepedia:Community_Portal">Community portal</a></li>
	                                <li id="n-currentevents"><a href="http://wiki.eclipse.org/Eclipsepedia:Current_events">Current events</a></li>
	                                <li id="n-recentchanges"><a href="http://wiki.eclipse.org/Special:Recentchanges">Recent changes</a></li>
	                                <li id="n-randompage"><a href="http://wiki.eclipse.org/Special:Random">Random page</a></li>
	                                <li id="n-help"><a href="http://wiki.eclipse.org/Help:Contents">Help</a></li>
		  <li class="separator"><a class="separator">Toolbox &#160;&#160;</a></li>

				<li id="t-whatlinkshere"><a href="http://wiki.eclipse.org/Special:Whatlinkshere/SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off">What links here</a></li>
				<li id="t-recentchangeslinked"><a href="http://wiki.eclipse.org/Special:Recentchangeslinked/SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off">Related changes</a></li>
                <!-- This is the toolbox section -->
<li id="t-upload"><a href="http://wiki.eclipse.org/Special:Upload">Upload file</a></li>
<li id="t-specialpages"><a href="http://wiki.eclipse.org/Special:Specialpages">Special pages</a></li>
				<li id="t-print"><a href="http://wiki.eclipse.org/index.php?title=SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off&amp;printable=yes">Printable version</a></li>				<li id="t-permalink"><a href="http://wiki.eclipse.org/index.php?title=SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off&amp;oldid=174934">Permanent link</a></li>	  </ul>
        </div>


<!-- Additions and mods for leftside nav End here -->


  <div id="column-content">
    <div id="content">
      <a name="top" id="top"></a>

              <div id="tabs">
         <ul class="primary">
                                         <li class="active"><a href="Turning_DeltaIndexing_On_or_Off.html"><span class="tab">Page</span></a></li>
                                                         <li><a href="http://wiki.eclipse.org/index.php?title=Talk:SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off&amp;action=edit"><span class="tab">Discussion</span></a></li>
                                         <li><a href="http://wiki.eclipse.org/index.php?title=SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off&amp;action=edit"><span class="tab">View source</span></a></li>
                                         <li><a href="http://wiki.eclipse.org/index.php?title=SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off&amp;action=history"><span class="tab">History</span></a></li>
                                         <li><a href="http://wiki.eclipse.org/index.php?title=Special:Userlogin&amp;returnto=SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning%20DeltaIndexing%20On%20or%20Off"><span class="tab">Edit</span></a></li>
                  </ul>
        </div>


          <script type="text/javascript"> if (window.isMSIE55) fixalpha(); </script>
            <h1 class="firstHeading">SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning DeltaIndexing On or Off</h1>
      <div id="bodyContent">
        <h3 id="siteSub">From Eclipsepedia</h3>
        <div id="contentSub"><span class="subpages">&lt; <a href="../../../SMILA.html" title="SMILA">SMILA</a> | <a href="../../Specifications.1.html" title="SMILA/Specifications">Specifications</a> | <a href="../DeltaIndexingAndConnectivtyDiscussion09.html" title="SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09">DeltaIndexingAndConnectivtyDiscussion09</a></span></div>
                              <div id="jump-to-nav">Jump to: <a href="Turning_DeltaIndexing_On_or_Off.html#column-one">navigation</a>, <a href="Turning_DeltaIndexing_On_or_Off.html#searchInput">search</a></div>          <!-- start content -->
          <table id="toc" class="toc" summary="Contents"><tr><td><div id="toctitle"><h2>Contents</h2></div>
<ul>
<li class="toclevel-1"><a href="Turning_DeltaIndexing_On_or_Off.html#New_Feature:_DeltaIndexing_On.2FOff"><span class="tocnumber">1</span> <span class="toctext">New Feature: DeltaIndexing On/Off</span></a>
<ul>
<li class="toclevel-2"><a href="Turning_DeltaIndexing_On_or_Off.html#Motivation"><span class="tocnumber">1.1</span> <span class="toctext">Motivation</span></a></li>
<li class="toclevel-2"><a href="Turning_DeltaIndexing_On_or_Off.html#Draft"><span class="tocnumber">1.2</span> <span class="toctext">Draft</span></a></li>
<li class="toclevel-2"><a href="Turning_DeltaIndexing_On_or_Off.html#Configuration"><span class="tocnumber">1.3</span> <span class="toctext">Configuration</span></a></li>
<li class="toclevel-2"><a href="Turning_DeltaIndexing_On_or_Off.html#Implementation"><span class="tocnumber">1.4</span> <span class="toctext">Implementation</span></a>
<ul>
<li class="toclevel-3"><a href="Turning_DeltaIndexing_On_or_Off.html#Current_Concept"><span class="tocnumber">1.4.1</span> <span class="toctext">Current Concept</span></a></li>
<li class="toclevel-3"><a href="Turning_DeltaIndexing_On_or_Off.html#Alternative_Concept"><span class="tocnumber">1.4.2</span> <span class="toctext">Alternative Concept</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</td></tr></table><script type="text/javascript"> if (window.showTocToggle) { var tocShowText = "show"; var tocHideText = "hide"; showTocToggle(); } </script>
<a name="New_Feature:_DeltaIndexing_On.2FOff"></a><h2> <span class="mw-headline"> New Feature: DeltaIndexing On/Off </span></h2>
<p><b>This approach was realized. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=279242" class="external free" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=279242" rel="nofollow">https://bugs.eclipse.org/bugs/show_bug.cgi?id=279242</a></b>
</p>
<a name="Motivation"></a><h3> <span class="mw-headline"> Motivation </span></h3>
<p>It should be possible to turn the usage of DeltaIndexing on and off, either to reduce complexity or to gain better performance.
</p>
<a name="Draft"></a><h3> <span class="mw-headline"> Draft </span></h3>
<p>A simple boolean logic (on/off) seems to simple, as I see 4 possible use cases (modes):
</p>
<ul><li> <b>FULL</b>: DeltaIndexing is fully activated. This means that
<ul><li> each Record is checked if it needs to be updated
</li><li> for each Record an entry is made/updated in the DeltaIndexingManager
</li><li> Delta-Delete is executed at the end of the import
</li></ul>
</li><li> <b>ADDITIVE</b>: as <b>FULL</b>, but Delta-Delete is not executed (we allow records in the index that do not exist anymore
</li><li> <b>INITIAL</b>: For an initial import in an empty index or a new source in an existing index performance can be optimized by
<ul><li> NOT checking if a record needs to be updated (we know that all records are new)
</li><li> adding an entry in the DeltaIndexingManager for each Record. This allows later imports to make use of DeltaIndexing
</li><li> NOT: executing Delta-Delete (we know that no records are to be deleted)
</li></ul>
</li><li> <b>DISABLED</b>: DeltaIndexing is fully deactivated. No checks are done, no entries are created/updated, no Delta-Delete is executed. Later runs cannot benefit from DeltaIndexing
</li></ul>
<p>As always, Delta-Delete MUST NOT be executed if any errors occur during import as we do not want to delete records erroneously!
</p>
<a name="Configuration"></a><h3> <span class="mw-headline"> Configuration </span></h3>
<p>To configure the mode of DeltaIndexing execution, an additional parameter is needed in the IndexOrderConfiguration:
</p><p>XML-Schema:
</p>
<div dir="ltr" style="text-align: left;"><pre class="source-xml">...
<span class="sc3"><span class="re1">&lt;xs:element</span> <span class="re0">name</span>=<span class="st0">&quot;DeltaIndexingMode&quot;</span> <span class="re0">type</span>=<span class="st0">&quot;DeltaIndexingModeType&quot;</span><span class="re2">/&gt;</span></span>
&nbsp;
  <span class="sc3"><span class="re1">&lt;xs:simpleType</span> <span class="re0">name</span>=<span class="st0">&quot;DeltaIndexingModeType&quot;</span><span class="re2">&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;xs:annotation<span class="re2">&gt;</span></span></span>
      <span class="sc3"><span class="re1">&lt;xs:appinfo<span class="re2">&gt;</span></span></span>
        <span class="sc3"><span class="re1">&lt;jxb:class</span> <span class="re0">ref</span>=<span class="st0">&quot;org.eclipse.eilf.connectivity.framework.indexorder.messages.DeltaIndexingModeType&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;/xs:appinfo<span class="re2">&gt;</span></span></span>
    <span class="sc3"><span class="re1">&lt;/xs:annotation<span class="re2">&gt;</span></span></span>
    <span class="sc3"><span class="re1">&lt;xs:restriction</span> <span class="re0">base</span>=<span class="st0">&quot;xs:string&quot;</span><span class="re2">&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;xs:pattern</span> <span class="re0">value</span>=<span class="st0">&quot;FULL&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;xs:pattern</span> <span class="re0">value</span>=<span class="st0">&quot;ADDITIVE&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;xs:pattern</span> <span class="re0">value</span>=<span class="st0">&quot;INITIAL&quot;</span><span class="re2">/&gt;</span></span>
      <span class="sc3"><span class="re1">&lt;xs:pattern</span> <span class="re0">value</span>=<span class="st0">&quot;DISABLED&quot;</span><span class="re2">/&gt;</span></span>
    <span class="sc3"><span class="re1">&lt;/xs:restriction<span class="re2">&gt;</span></span></span>
  <span class="sc3"><span class="re1">&lt;/xs:simpleType<span class="re2">&gt;</span></span></span>
...</pre></div>
<p>XML example
</p>
<div dir="ltr" style="text-align: left;"><pre class="source-xml">...
<span class="sc3"><span class="re1">&lt;DeltaIndexingMode<span class="re2">&gt;</span></span></span>FULL<span class="sc3"><span class="re1">&lt;/DeltaIndexingMode<span class="re2">&gt;</span></span></span>
...</pre></div>
<p><br />
</p>
<a name="Implementation"></a><h3> <span class="mw-headline"> Implementation </span></h3>
<a name="Current_Concept"></a><h4> <span class="mw-headline"> Current Concept </span></h4>
<p>The execution logic has to be added in parts to the CrawlerController (CrawlThread) and ConnectivityManager. Therefore the mode has to be added to the ConnectivityManager interface. The problem is, that initialize and finish still need to be called, and that the MODE then controls if and how DeltaIndexing is used. This makes the usage and implementation of ConnectivityManager more and more complex and obscure (too many special cases).
</p><p><br />
</p>
<a name="Alternative_Concept"></a><h4> <span class="mw-headline"> Alternative Concept </span></h4>
<p>The execution logic has to be added either
</p>
<ul><li> to the CrawlerController (CrawlThread) only. It decides what actions to perform on the given mode.
</li><li> to the Crawler themselves, if the more radical change is implemented
</li></ul>

<!-- 
NewPP limit report
Preprocessor node count: 20/1000000
Post-expand include size: 0/2097152 bytes
Template argument size: 0/2097152 bytes
#ifexist count: 0/100
-->

<!-- Saved in parser cache with key wikidb:pcache:idhash:22044-0!1!0!!en!2!edit=0 and timestamp 20120203101615 -->
<div class="printfooter">
Retrieved from "<a href="Turning_DeltaIndexing_On_or_Off.html">http://wiki.eclipse.org/SMILA/Specifications/DeltaIndexingAndConnectivtyDiscussion09/Turning_DeltaIndexing_On_or_Off</a>"</div>
                    <!-- end content -->
          <div class="visualClear"></div>
        </div>
      </div>


    </div>


	<!-- Yoink of toolbox for phoenix moved up -->


  </div>
  </div>
              <div id="clearFooter"/>
            <div id="footer" >  
	      <ul id="footernav">
                <li class="first"><a href="http://www.eclipse.org/">Home</a></li>
               	<li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
	        <li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
		<li><a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
                <li><a href="http://www.eclipse.org/org/foundation/contact.php">Contact</a></li>
               	<li><a href="http://wiki.eclipse.org/Eclipsepedia:About" title="Eclipsepedia:About">About Eclipsepedia</a></li>
	      </ul>
              <span id="copyright">Copyright &copy; 2012 The Eclipse Foundation. All Rights Reserved</span>
	      <p id="footercredit">This page was last modified 15:49, 15 October 2009 by <a href="http://wiki.eclipse.org/User:Tmenzel.brox.de" title="User:Tmenzel.brox.de">thomas menzel</a>. </p>
	      <p id="footerviews">This page has been accessed 1,002 times.</p>
	    </div>

            <script type="text/javascript">
              var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
              document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
            </script>
            <script type="text/javascript">
              var pageTracker = _gat._getTracker("UA-910670-4");
              pageTracker._trackPageview();
            </script>
 
 	



		

<!-- 			<div class="visualClear"></div> -->
	
		<script type="text/javascript">if (window.runOnloadHook) runOnloadHook();</script>
</div>

<!-- Served in 0.102 secs. --></body></html>
