Files
sailing-analytics/java/com.tractrac.clientmodule/javadoc/com/tractrac/subscription/lib/api/IRaceSubscriber.html
T
Axel Uhl 510dc91794 upgraded TracAPI to 3.7.0; see below for their release notes:
1) Features

  - RaceCompetitorStatusType: New race competitor status type defined:
F_CONFIRMED. Represents a competitor with a control passing registered for the last gate/mark that is accepted as the official result (Requested by Ugo Alvazzi, 26/04/2017)
  - WebSockets support: instead of using a TCP connection is possible to retrieve data using WebSockets (using the same protocol used by the HTML Viewer). The protocol is not fully implemented and it only has to be used for testing (Requested by Jorge Piera, 30/04/2017).
  - Use an asynchronous API: the dataserver implementation has been migrated to an asynchronous API that provides a better performance downloading replay data (the tests show that is 2.5 times faster).
TracAPI has also adopted this new asynchronous interface but at this moment it continues using the synchronous approach (Requested by Jorge Piera, 03/05/2017)
  - Adding the method ISubscriberFactory.clean to release the objects in memory (Requested by André Borud, 01/06/2017)
  - Adding the method IPosition.isGPSTiming to know if the time of a position has been retrieved from a physical GPS device (Requested by Jérome Soussens, 21/06/2017)

  2) Bugs

  - When a static control is updated, the IControlPointPositionListener.gotControlPointPosition event is not called if the consumer application is not registered to the IEventSubscriber (Reported by Axel Uhl, 18/06/2017)
  - The live delay sometimes is not propagated. The server always propagates the event but TracAPI can filter it if the IEventSubscriber is not being used or if it has not been correctly initialized using the right live-uri (Reported by Julian Mayland, 21/06/2017)

Change-Id: I5c6b842268558d95491baf35db72f649ba61b032
2017-06-29 18:28:41 +02:00

818 lines
44 KiB
HTML
Executable File

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_111) on Thu Jun 29 10:20:57 UTC 2017 -->
<title>IRaceSubscriber</title>
<meta name="date" content="2017-06-29">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IRaceSubscriber";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/tractrac/subscription/lib/api/ILocalDataServerFactory.html" title="interface in com.tractrac.subscription.lib.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html" title="interface in com.tractrac.subscription.lib.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/tractrac/subscription/lib/api/IRaceSubscriber.html" target="_top">Frames</a></li>
<li><a href="IRaceSubscriber.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.tractrac.subscription.lib.api</div>
<h2 title="Interface IRaceSubscriber" class="title">Interface IRaceSubscriber</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html" title="interface in com.tractrac.subscription.lib.api">ISubscriber</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">IRaceSubscriber</span>
extends <a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html" title="interface in com.tractrac.subscription.lib.api">ISubscriber</a></pre>
<div class="block"><p>
This interface is used to add subscriptions for a <a href="../../../../../com/tractrac/model/lib/api/event/IRace.html" title="interface in com.tractrac.model.lib.api.event"><code>IRace</code></a> object.
</p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeControlPassings-com.tractrac.subscription.lib.api.control.IControlPassingsListener-">subscribeControlPassings</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPassingsListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPassingsListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to control passing data for the specified race.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeControlPositions-com.tractrac.subscription.lib.api.control.IControlPointPositionListener-">subscribeControlPositions</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPointPositionListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPointPositionListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to control positions for the race.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeControlPositions-com.tractrac.subscription.lib.api.control.IControlPointPositionListener-long-long-">subscribeControlPositions</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPointPositionListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPointPositionListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</code>
<div class="block">Subscribes to control positions for the race, also retrieving historic
data.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribePositions-com.tractrac.subscription.lib.api.competitor.IPositionListener-">subscribePositions</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribePositions-com.tractrac.subscription.lib.api.competitor.IPositionListener-long-long-">subscribePositions</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</code>
<div class="block">Subscribes to competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribePositionsOffset-com.tractrac.subscription.lib.api.competitor.IPositionOffsetListener-">subscribePositionsOffset</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionOffsetListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionOffsetListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to offset competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribePositionsOffset-com.tractrac.subscription.lib.api.competitor.IPositionOffsetListener-long-long-">subscribePositionsOffset</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionOffsetListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionOffsetListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</code>
<div class="block">Subscribes to offset competitor positions for a given Race, including
historic data.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribePositionsSnapped-com.tractrac.subscription.lib.api.competitor.IPositionSnappedListener-">subscribePositionsSnapped</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionSnappedListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionSnappedListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to snapped competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribePositionsSnapped-com.tractrac.subscription.lib.api.competitor.IPositionSnappedListener-long-long-">subscribePositionsSnapped</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionSnappedListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionSnappedListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</code>
<div class="block">Subscribes to snapped competitor positions for a given Race, including
historic data.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeRaceCompetitor-com.tractrac.subscription.lib.api.race.IRaceCompetitorListener-">subscribeRaceCompetitor</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceCompetitorListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceCompetitorListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to race competitor for a given Race.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeRaceMessages-com.tractrac.subscription.lib.api.race.IRaceMessageListener-">subscribeRaceMessages</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceMessageListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceMessageListener</a>&nbsp;listener)</code>
<div class="block">Subscribe to messages for a race.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeRaceTimesChanges-com.tractrac.subscription.lib.api.race.IRaceStartStopTimesChangeListener-">subscribeRaceTimesChanges</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceStartStopTimesChangeListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceStartStopTimesChangeListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to changes in race start and stop times.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeRouteChanges-com.tractrac.subscription.lib.api.control.IControlRouteChangeListener-">subscribeRouteChanges</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlRouteChangeListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlRouteChangeListener</a>&nbsp;listener)</code>
<div class="block">Subscribes to route changes for a given Race.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#subscribeRoutes-com.tractrac.subscription.lib.api.route.IRoutesListener-">subscribeRoutes</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/route/IRoutesListener.html" title="interface in com.tractrac.subscription.lib.api.route">IRoutesListener</a>&nbsp;listener)</code>
<div class="block">
Subscriber to route changes.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeControlPassings-com.tractrac.subscription.lib.api.control.IControlPassingsListener-">unsubscribeControlPassings</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPassingsListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPassingsListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to control passing data for the specified race.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeControlPositions-com.tractrac.subscription.lib.api.control.IControlPointPositionListener-">unsubscribeControlPositions</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPointPositionListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPointPositionListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to control positions.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribePositions-com.tractrac.subscription.lib.api.competitor.IPositionListener-">unsubscribePositions</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribePositionsOffset-com.tractrac.subscription.lib.api.competitor.IPositionOffsetListener-">unsubscribePositionsOffset</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionOffsetListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionOffsetListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribePositionsSnapped-com.tractrac.subscription.lib.api.competitor.IPositionSnappedListener-">unsubscribePositionsSnapped</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionSnappedListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionSnappedListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to competitor positions for a given Race.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeRaceCompetitor-com.tractrac.subscription.lib.api.race.IRaceCompetitorListener-">unsubscribeRaceCompetitor</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceCompetitorListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceCompetitorListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to race competitor</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeRaceMessages-com.tractrac.subscription.lib.api.race.IRaceMessageListener-">unsubscribeRaceMessages</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceMessageListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceMessageListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to race messages</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeRaceTimesChanges-com.tractrac.subscription.lib.api.race.IRaceStartStopTimesChangeListener-">unsubscribeRaceTimesChanges</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceStartStopTimesChangeListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceStartStopTimesChangeListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to changes in race start and stop times.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeRouteChanges-com.tractrac.subscription.lib.api.control.IControlRouteChangeListener-">unsubscribeRouteChanges</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlRouteChangeListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlRouteChangeListener</a>&nbsp;listener)</code>
<div class="block">Unsubscribes to route changes for a given Race.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/tractrac/subscription/lib/api/IRaceSubscriber.html#unsubscribeRoutes-com.tractrac.subscription.lib.api.route.IRoutesListener-">unsubscribeRoutes</a></span>(<a href="../../../../../com/tractrac/subscription/lib/api/route/IRoutesListener.html" title="interface in com.tractrac.subscription.lib.api.route">IRoutesListener</a>&nbsp;listener)</code>
<div class="block">
Unsubscribes to route changes for a given Race.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.com.tractrac.subscription.lib.api.ISubscriber">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;com.tractrac.subscription.lib.api.<a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html" title="interface in com.tractrac.subscription.lib.api">ISubscriber</a></h3>
<code><a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html#isRunning--">isRunning</a>, <a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html#start--">start</a>, <a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html#stop--">stop</a>, <a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html#subscribeConnectionStatus-com.tractrac.subscription.lib.api.event.IConnectionStatusListener-">subscribeConnectionStatus</a>, <a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html#unsubscribeConnectionStatus-com.tractrac.subscription.lib.api.event.IConnectionStatusListener-">unsubscribeConnectionStatus</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="subscribePositions-com.tractrac.subscription.lib.api.competitor.IPositionListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribePositions</h4>
<pre>void&nbsp;subscribePositions(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to competitor positions for a given Race. It uses the tracking
start time and the tracking end time as time interval to receive positions.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
</dl>
</li>
</ul>
<a name="subscribePositions-com.tractrac.subscription.lib.api.competitor.IPositionListener-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribePositions</h4>
<pre>void&nbsp;subscribePositions(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</pre>
<div class="block">Subscribes to competitor positions for a given Race.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
<dd><code>fromTime</code> - stored positions (if supported) will be requested from this time
and forward. The value <code>0</code> is allowed and means all
historic data.</dd>
<dd><code>toTime</code> - The value <code>Long.MAXVALUE</code> means all data in the future</dd>
</dl>
</li>
</ul>
<a name="unsubscribePositions-com.tractrac.subscription.lib.api.competitor.IPositionListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribePositions</h4>
<pre>void&nbsp;unsubscribePositions(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to competitor positions for a given Race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribePositionsSnapped-com.tractrac.subscription.lib.api.competitor.IPositionSnappedListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribePositionsSnapped</h4>
<pre>void&nbsp;subscribePositionsSnapped(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionSnappedListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionSnappedListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to snapped competitor positions for a given Race. It uses the
tracking start time and the tracking end time as time interval to receive
positions.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
</dl>
</li>
</ul>
<a name="subscribePositionsSnapped-com.tractrac.subscription.lib.api.competitor.IPositionSnappedListener-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribePositionsSnapped</h4>
<pre>void&nbsp;subscribePositionsSnapped(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionSnappedListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionSnappedListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</pre>
<div class="block">Subscribes to snapped competitor positions for a given Race, including
historic data.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
<dd><code>fromTime</code> - stored positions (if supported) will be requested from this time
and forward. The value <code>0</code> is allowed and means all
historic data.</dd>
<dd><code>toTime</code> - The value <code>Long.MAXVALUE</code> means all data in the future</dd>
</dl>
</li>
</ul>
<a name="unsubscribePositionsSnapped-com.tractrac.subscription.lib.api.competitor.IPositionSnappedListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribePositionsSnapped</h4>
<pre>void&nbsp;unsubscribePositionsSnapped(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionSnappedListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionSnappedListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to competitor positions for a given Race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribePositionsOffset-com.tractrac.subscription.lib.api.competitor.IPositionOffsetListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribePositionsOffset</h4>
<pre>void&nbsp;subscribePositionsOffset(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionOffsetListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionOffsetListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to offset competitor positions for a given Race. It uses the
tracking start time and the tracking end time as time interval to receive
positions.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
</dl>
</li>
</ul>
<a name="subscribePositionsOffset-com.tractrac.subscription.lib.api.competitor.IPositionOffsetListener-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribePositionsOffset</h4>
<pre>void&nbsp;subscribePositionsOffset(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionOffsetListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionOffsetListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</pre>
<div class="block">Subscribes to offset competitor positions for a given Race, including
historic data.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
<dd><code>fromTime</code> - stored positions (if supported) will be requested from this time
and forward. The value <code>0</code> is allowed and means all
historic data.</dd>
<dd><code>toTime</code> - The value <code>Long.MAXVALUE</code> means all data in the future</dd>
</dl>
</li>
</ul>
<a name="unsubscribePositionsOffset-com.tractrac.subscription.lib.api.competitor.IPositionOffsetListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribePositionsOffset</h4>
<pre>void&nbsp;unsubscribePositionsOffset(<a href="../../../../../com/tractrac/subscription/lib/api/competitor/IPositionOffsetListener.html" title="interface in com.tractrac.subscription.lib.api.competitor">IPositionOffsetListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to competitor positions for a given Race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeControlPositions-com.tractrac.subscription.lib.api.control.IControlPointPositionListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeControlPositions</h4>
<pre>void&nbsp;subscribeControlPositions(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPointPositionListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPointPositionListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to control positions for the race.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p>
<p>
It also returns the static positions using the
<a href="../../../../../com/tractrac/model/lib/api/event/IRace.html#getTrackingStartTime--"><code>IRace.getTrackingStartTime()</code></a> as the value for the position time.
These positions are sent before to start to send the dynamic positions.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
</dl>
</li>
</ul>
<a name="subscribeControlPositions-com.tractrac.subscription.lib.api.control.IControlPointPositionListener-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeControlPositions</h4>
<pre>void&nbsp;subscribeControlPositions(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPointPositionListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPointPositionListener</a>&nbsp;listener,
long&nbsp;fromTime,
long&nbsp;toTime)</pre>
<div class="block">Subscribes to control positions for the race, also retrieving historic
data.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p>
<p>
It also returns the static positions using the
<a href="../../../../../com/tractrac/model/lib/api/event/IRace.html#getTrackingStartTime--"><code>IRace.getTrackingStartTime()</code></a> as the value for the position time.
These positions are sent before to start to send the dynamic positions.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
<dd><code>fromTime</code> - stored positions (if supported) will be requested from this time
and forward. The value <code>0</code> is allowed and means all
historic data.</dd>
<dd><code>toTime</code> - The value <code>Long.MAXVALUE</code> means all data in the future</dd>
</dl>
</li>
</ul>
<a name="unsubscribeControlPositions-com.tractrac.subscription.lib.api.control.IControlPointPositionListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribeControlPositions</h4>
<pre>void&nbsp;unsubscribeControlPositions(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPointPositionListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPointPositionListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to control positions.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeControlPassings-com.tractrac.subscription.lib.api.control.IControlPassingsListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeControlPassings</h4>
<pre>void&nbsp;subscribeControlPassings(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPassingsListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPassingsListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to control passing data for the specified race.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the control passings.</dd>
</dl>
</li>
</ul>
<a name="unsubscribeControlPassings-com.tractrac.subscription.lib.api.control.IControlPassingsListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribeControlPassings</h4>
<pre>void&nbsp;unsubscribeControlPassings(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlPassingsListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlPassingsListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to control passing data for the specified race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeRaceTimesChanges-com.tractrac.subscription.lib.api.race.IRaceStartStopTimesChangeListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeRaceTimesChanges</h4>
<pre>void&nbsp;subscribeRaceTimesChanges(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceStartStopTimesChangeListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceStartStopTimesChangeListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to changes in race start and stop times.
<p>
The method returns immediately and the changes are subsequently sent to the
given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the changes.</dd>
</dl>
</li>
</ul>
<a name="unsubscribeRaceTimesChanges-com.tractrac.subscription.lib.api.race.IRaceStartStopTimesChangeListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribeRaceTimesChanges</h4>
<pre>void&nbsp;unsubscribeRaceTimesChanges(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceStartStopTimesChangeListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceStartStopTimesChangeListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to changes in race start and stop times.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeRoutes-com.tractrac.subscription.lib.api.route.IRoutesListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeRoutes</h4>
<pre>void&nbsp;subscribeRoutes(<a href="../../../../../com/tractrac/subscription/lib/api/route/IRoutesListener.html" title="interface in com.tractrac.subscription.lib.api.route">IRoutesListener</a>&nbsp;listener)</pre>
<div class="block"><p>
Subscriber to route changes. A race change happens when an static property
of the route changes.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeRouteChanges-com.tractrac.subscription.lib.api.control.IControlRouteChangeListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeRouteChanges</h4>
<pre>void&nbsp;subscribeRouteChanges(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlRouteChangeListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlRouteChangeListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to route changes for a given Race.
<p>
The method returns immediately and the positions are subsequently sent to
the given listener, as they are received.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the positions.</dd>
</dl>
</li>
</ul>
<a name="unsubscribeRoutes-com.tractrac.subscription.lib.api.route.IRoutesListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribeRoutes</h4>
<pre>void&nbsp;unsubscribeRoutes(<a href="../../../../../com/tractrac/subscription/lib/api/route/IRoutesListener.html" title="interface in com.tractrac.subscription.lib.api.route">IRoutesListener</a>&nbsp;listener)</pre>
<div class="block"><p>
Unsubscribes to route changes for a given Race.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="unsubscribeRouteChanges-com.tractrac.subscription.lib.api.control.IControlRouteChangeListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribeRouteChanges</h4>
<pre>void&nbsp;unsubscribeRouteChanges(<a href="../../../../../com/tractrac/subscription/lib/api/control/IControlRouteChangeListener.html" title="interface in com.tractrac.subscription.lib.api.control">IControlRouteChangeListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to route changes for a given Race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeRaceCompetitor-com.tractrac.subscription.lib.api.race.IRaceCompetitorListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeRaceCompetitor</h4>
<pre>void&nbsp;subscribeRaceCompetitor(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceCompetitorListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceCompetitorListener</a>&nbsp;listener)</pre>
<div class="block">Subscribes to race competitor for a given Race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener to receive the new race competitor.</dd>
</dl>
</li>
</ul>
<a name="unsubscribeRaceCompetitor-com.tractrac.subscription.lib.api.race.IRaceCompetitorListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unsubscribeRaceCompetitor</h4>
<pre>void&nbsp;unsubscribeRaceCompetitor(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceCompetitorListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceCompetitorListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to race competitor</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method</dd>
</dl>
</li>
</ul>
<a name="subscribeRaceMessages-com.tractrac.subscription.lib.api.race.IRaceMessageListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>subscribeRaceMessages</h4>
<pre>void&nbsp;subscribeRaceMessages(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceMessageListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceMessageListener</a>&nbsp;listener)</pre>
<div class="block">Subscribe to messages for a race.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - Listener the listener to receive the messages</dd>
</dl>
</li>
</ul>
<a name="unsubscribeRaceMessages-com.tractrac.subscription.lib.api.race.IRaceMessageListener-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>unsubscribeRaceMessages</h4>
<pre>void&nbsp;unsubscribeRaceMessages(<a href="../../../../../com/tractrac/subscription/lib/api/race/IRaceMessageListener.html" title="interface in com.tractrac.subscription.lib.api.race">IRaceMessageListener</a>&nbsp;listener)</pre>
<div class="block">Unsubscribes to race messages</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - the listener used in the subscribe method.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/tractrac/subscription/lib/api/ILocalDataServerFactory.html" title="interface in com.tractrac.subscription.lib.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/tractrac/subscription/lib/api/ISubscriber.html" title="interface in com.tractrac.subscription.lib.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/tractrac/subscription/lib/api/IRaceSubscriber.html" target="_top">Frames</a></li>
<li><a href="IRaceSubscriber.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>