Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.clra.web
Class SessionSet  view SessionSet download SessionSet.java

java.lang.Object
  extended bycom.clra.web.SessionSet
All Implemented Interfaces:
IEventList

public class SessionSet
extends java.lang.Object
implements IEventList

A JSP bean that provides ordered lists of SessionViews. This class is a thin wrapper around calls to RowingDBRead. In the future, it might add further value by caching and sorting views on the client side.

FIXME: this class is basically a list, not a set. A set hides duplicates, whereas a list does not. Rename this class.

In the current implementation, a list is created on the fly whenever a JSP is displayed, and the list is tossed after the page is written. For lists of 60 or so items, a page will update in 2 - 3 seconds when the app and web servers are lightly loaded. This is adequate performance, since most lists will be restricted by month, and therefore will contain roughly 30 items.

See revision 1.10 and 1.11 for a flawed implementation of caching and sorting. See ../bugs/SEVERITY3_slow_sessionlist_2001.12.05a.txt for an analysis of the resulting bugs.

Version:
$Revision: 1.3 $ $Date: 2003/02/26 03:38:46 $

Field Summary
private static java.lang.String base
           
private  java.util.Calendar calendar
          Holds the value of the month and year for restricted iterations
private  java.lang.Boolean restricted
          Holds the restriction flag
private static org.apache.log4j.Category theLog
           
 
Fields inherited from interface com.clra.web.IEventList
AN_COMPARATOR, AN_ISRESTRICTED, AN_MONTH, AN_YEAR
 
Constructor Summary
SessionSet()
          Prepares a restricted iterator for the current month and year
SessionSet(java.lang.Integer month)
          Prepares a restricted iterator for the specified month of the current year
SessionSet(java.lang.Integer month, java.lang.Integer year)
          Prepares a restricted iterator for the specified month and year
 
Method Summary
 com.clra.util.ISerializableComparator getComparator()
          Stubbed method that returns null
 java.util.Iterator getIterator()
          Returns an iterator constructed to the current setting
 java.lang.Integer getMonth()
          Returns the month used by restricted iterations
 java.lang.Boolean getRestricted()
          Returns a flag that indicates whether an iterator will be restricted to events that are scheduled to start within a particular month and year.
 java.lang.Integer getYear()
          Returns the year used by restricted iterations
 void setComparator(com.clra.util.ISerializableComparator comparator)
          Stubbed method that does nothing
 void setMonth(java.lang.Integer month)
          Sets the month used by restricted iterations
 void setRestricted(java.lang.Boolean restricted)
          Sets whether an iterator will be restricted to events that start within a particular month and year.
 void setYear(java.lang.Integer year)
          Sets the year used by restricted iterations
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

base

private static final java.lang.String base

theLog

private static final org.apache.log4j.Category theLog

restricted

private java.lang.Boolean restricted
Holds the restriction flag


calendar

private final java.util.Calendar calendar
Holds the value of the month and year for restricted iterations

Constructor Detail

SessionSet

public SessionSet()
           throws WebException
Prepares a restricted iterator for the current month and year


SessionSet

public SessionSet(java.lang.Integer month)
           throws WebException
Prepares a restricted iterator for the specified month of the current year


SessionSet

public SessionSet(java.lang.Integer month,
                  java.lang.Integer year)
           throws WebException
Prepares a restricted iterator for the specified month and year

Method Detail

getRestricted

public java.lang.Boolean getRestricted()
Returns a flag that indicates whether an iterator will be restricted to events that are scheduled to start within a particular month and year.

Specified by:
getRestricted in interface IEventList

setRestricted

public void setRestricted(java.lang.Boolean restricted)
Sets whether an iterator will be restricted to events that start within a particular month and year. A null values does not change the current restriction.

Specified by:
setRestricted in interface IEventList

getMonth

public java.lang.Integer getMonth()
Returns the month used by restricted iterations

Specified by:
getMonth in interface IEventList

setMonth

public void setMonth(java.lang.Integer month)
Sets the month used by restricted iterations

Specified by:
setMonth in interface IEventList

getYear

public java.lang.Integer getYear()
Returns the year used by restricted iterations

Specified by:
getYear in interface IEventList

setYear

public void setYear(java.lang.Integer year)
Sets the year used by restricted iterations

Specified by:
setYear in interface IEventList

getComparator

public com.clra.util.ISerializableComparator getComparator()
Stubbed method that returns null

Specified by:
getComparator in interface IEventList

setComparator

public void setComparator(com.clra.util.ISerializableComparator comparator)
Stubbed method that does nothing

Specified by:
setComparator in interface IEventList

getIterator

public java.util.Iterator getIterator()
                               throws WebException
Returns an iterator constructed to the current setting

Specified by:
getIterator in interface IEventList