bgabriel998/SoftwareDevProject

View on GitHub
doc/JavaDoc/ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html

Summary

Maintainability
Test Coverage
<!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_242-release) on Fri Jun 04 18:15:42 CEST 2021 -->
<title>RemotePointsChallenge</title>
<meta name="date" content="2021-06-04">
<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="RemotePointsChallenge";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html" title="class in ch.epfl.sdp.peakar.user.challenge.goal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html" target="_top">Frames</a></li>
<li><a href="RemotePointsChallenge.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><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&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">ch.epfl.sdp.peakar.user.challenge.goal</div>
<h2 title="Class RemotePointsChallenge" class="title">Class RemotePointsChallenge</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html" title="class in ch.epfl.sdp.peakar.user.challenge.goal">ch.epfl.sdp.peakar.user.challenge.goal.PointsChallenge</a></li>
<li>
<ul class="inheritance">
<li>ch.epfl.sdp.peakar.user.challenge.goal.RemotePointsChallenge</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html" title="interface in ch.epfl.sdp.peakar.user.challenge">Challenge</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">RemotePointsChallenge</span>
extends <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html" title="class in ch.epfl.sdp.peakar.user.challenge.goal">PointsChallenge</a></pre>
<div class="block">Concrete implementation of <code>PointsChallenge</code> using Database interaction.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.ch.epfl.sdp.peakar.user.challenge.Challenge">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;ch.epfl.sdp.peakar.user.challenge.<a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html" title="interface in ch.epfl.sdp.peakar.user.challenge">Challenge</a></h3>
<code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html#FOUNDER">FOUNDER</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html#JOINED">JOINED</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html#LOSER">LOSER</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html#WINNER">WINNER</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html#RemotePointsChallenge-java.lang.String-java.lang.String-android.net.Uri-java.lang.String-java.util.List-int-java.time.LocalDateTime-int-java.time.LocalDateTime-java.time.LocalDateTime-java.util.HashMap-java.util.HashMap-">RemotePointsChallenge</a></span>(java.lang.String&nbsp;id,
                     java.lang.String&nbsp;founderID,
                     android.net.Uri&nbsp;founderUri,
                     java.lang.String&nbsp;challengeName,
                     java.util.List&lt;java.lang.String&gt;&nbsp;users,
                     int&nbsp;status,
                     java.time.LocalDateTime&nbsp;creationDateTime,
                     int&nbsp;durationInDays,
                     java.time.LocalDateTime&nbsp;startDateTime,
                     java.time.LocalDateTime&nbsp;finishDateTime,
                     java.util.HashMap&lt;java.lang.String,java.lang.Integer&gt;&nbsp;userIDPointsMap,
                     java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;userIDUsernameMap)</code>
<div class="block">Constructor for a new concrete points challenge.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== 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="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete 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>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html#endChallenge--">endChallenge</a></span>()</code>
<div class="block">Challenge Timer expired
 Give points to users
 Remove challenge from database and from each users that have participated</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html#findWinner-java.util.HashMap-">findWinner</a></span>(java.util.HashMap&lt;java.lang.String,java.lang.Integer&gt;&nbsp;enrolledUserScoreMap)</code>
<div class="block">Check among the hashMap of enrolled user which one has the most points</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html" title="interface in ch.epfl.sdp.peakar.user.challenge">Challenge</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html#generateNewChallenge-java.lang.String-java.lang.String-int-">generateNewChallenge</a></span>(java.lang.String&nbsp;founderID,
                    java.lang.String&nbsp;challengeName,
                    int&nbsp;durationInDays)</code>
<div class="block">Generate a new PointsChallenge.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.util.HashMap&lt;java.lang.String,java.lang.Integer&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html#getPointsGainedPerUser-java.util.List-">getPointsGainedPerUser</a></span>(java.util.List&lt;java.lang.String&gt;&nbsp;enrolledUsers)</code>
<div class="block">Retrieve points gained by each enrolled user during the challenge</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html#join--">join</a></span>()</code>
<div class="block">Make the authenticated user join a new challenge.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.ch.epfl.sdp.peakar.user.challenge.goal.PointsChallenge">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;ch.epfl.sdp.peakar.user.challenge.goal.<a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html" title="class in ch.epfl.sdp.peakar.user.challenge.goal">PointsChallenge</a></h3>
<code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getChallengeName--">getChallengeName</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getChallengeRanking--">getChallengeRanking</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getChallengeUserNames--">getChallengeUserNames</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getCreationDateTime--">getCreationDateTime</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getDurationInDays--">getDurationInDays</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getFinishDateTime--">getFinishDateTime</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getFounderID--">getFounderID</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getFounderUri--">getFounderUri</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getID--">getID</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getStartDateTime--">getStartDateTime</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getStatus--">getStatus</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#getUsers--">getUsers</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#setFinishDateTime-java.time.LocalDateTime-">setFinishDateTime</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#setStartDateTime-java.time.LocalDateTime-">setStartDateTime</a>, <a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#setStatus-ch.epfl.sdp.peakar.user.challenge.ChallengeStatus-">setStatus</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="RemotePointsChallenge-java.lang.String-java.lang.String-android.net.Uri-java.lang.String-java.util.List-int-java.time.LocalDateTime-int-java.time.LocalDateTime-java.time.LocalDateTime-java.util.HashMap-java.util.HashMap-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RemotePointsChallenge</h4>
<pre>public&nbsp;RemotePointsChallenge(java.lang.String&nbsp;id,
                             java.lang.String&nbsp;founderID,
                             android.net.Uri&nbsp;founderUri,
                             java.lang.String&nbsp;challengeName,
                             java.util.List&lt;java.lang.String&gt;&nbsp;users,
                             int&nbsp;status,
                             java.time.LocalDateTime&nbsp;creationDateTime,
                             int&nbsp;durationInDays,
                             java.time.LocalDateTime&nbsp;startDateTime,
                             java.time.LocalDateTime&nbsp;finishDateTime,
                             @Nullable
                             java.util.HashMap&lt;java.lang.String,java.lang.Integer&gt;&nbsp;userIDPointsMap,
                             @Nullable
                             java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;userIDUsernameMap)</pre>
<div class="block">Constructor for a new concrete points challenge. This constructor needs to be called to retrieve an existing challenge, not to create a new one.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - unique identifier of the challenge.</dd>
<dd><code>founderID</code> - Id of the founder</dd>
<dd><code>challengeName</code> - challenge name.</dd>
<dd><code>users</code> - users who joined the challenge.</dd>
<dd><code>creationDateTime</code> - challenge creation date</dd>
<dd><code>startDateTime</code> - challenge start date</dd>
<dd><code>finishDateTime</code> - challenge finish date</dd>
<dd><code>durationInDays</code> - challenge duration (given in days)</dd>
<dd><code>founderUri</code> - URI of the founder profile picture</dd>
<dd><code>status</code> - challenge status</dd>
<dd><code>userIDPointsMap</code> - current user ranking</dd>
<dd><code>userIDUsernameMap</code> - map between user ID and user names</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="generateNewChallenge-java.lang.String-java.lang.String-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>generateNewChallenge</h4>
<pre>public static&nbsp;<a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html" title="interface in ch.epfl.sdp.peakar.user.challenge">Challenge</a>&nbsp;generateNewChallenge(java.lang.String&nbsp;founderID,
                                             java.lang.String&nbsp;challengeName,
                                             int&nbsp;durationInDays)</pre>
<div class="block">Generate a new PointsChallenge.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>founderID</code> - ID of the founder of the challenge.</dd>
<dd><code>challengeName</code> - name of the challenge</dd>
<dd><code>durationInDays</code> - duration of the challenge in number of days</dd>
</dl>
</li>
</ul>
<a name="join--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>join</h4>
<pre>public&nbsp;void&nbsp;join()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html#join--">Challenge</a></code></span></div>
<div class="block">Make the authenticated user join a new challenge.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html#join--">join</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/Challenge.html" title="interface in ch.epfl.sdp.peakar.user.challenge">Challenge</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html#join--">join</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html" title="class in ch.epfl.sdp.peakar.user.challenge.goal">PointsChallenge</a></code></dd>
</dl>
</li>
</ul>
<a name="endChallenge--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>endChallenge</h4>
<pre>public&nbsp;int&nbsp;endChallenge()</pre>
<div class="block">Challenge Timer expired
 Give points to users
 Remove challenge from database and from each users that have participated</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of points gained. If the user has not the most points among the users during
 the challenge period, he gets 0 pts</dd>
</dl>
</li>
</ul>
<a name="findWinner-java.util.HashMap-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findWinner</h4>
<pre>public&nbsp;java.lang.String&nbsp;findWinner(java.util.HashMap&lt;java.lang.String,java.lang.Integer&gt;&nbsp;enrolledUserScoreMap)</pre>
<div class="block">Check among the hashMap of enrolled user which one has the most points</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>enrolledUserScoreMap</code> - map between UID and score points gained during the challenge</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>UID of the user with the most points gained</dd>
</dl>
</li>
</ul>
<a name="getPointsGainedPerUser-java.util.List-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getPointsGainedPerUser</h4>
<pre>public&nbsp;java.util.HashMap&lt;java.lang.String,java.lang.Integer&gt;&nbsp;getPointsGainedPerUser(java.util.List&lt;java.lang.String&gt;&nbsp;enrolledUsers)</pre>
<div class="block">Retrieve points gained by each enrolled user during the challenge</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>enrolledUsers</code> - list of enrolled users</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>HashMap<String,Integer> with key = UID and value = points gained</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="../../../../../../../ch/epfl/sdp/peakar/user/challenge/goal/PointsChallenge.html" title="class in ch.epfl.sdp.peakar.user.challenge.goal"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?ch/epfl/sdp/peakar/user/challenge/goal/RemotePointsChallenge.html" target="_top">Frames</a></li>
<li><a href="RemotePointsChallenge.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><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&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>