caltool.schedule
Class ScheduledItem

java.lang.Object
  extended by java.util.Observable
      extended by mvp.Model
          extended by caltool.schedule.ScheduledItem
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
Appointment, Event, Task

public abstract class ScheduledItem
extends mvp.Model

A ScheduledItem is the generic definition for the types of items stored in a calendar. The Title component is a brief description of what the item is for. The StartOrDueDate and EndDate components indicate when the item is scheduled. The Category component is used to organize items into related color-coded categories. There are four specializations of ScheduledItem. They are Appointment, Meeting, Event, and Task, q.q.v.

See Also:
Serialized Form

Field Summary
protected  Category category
          Used to organize items into related color-coded categories
protected  Date endDate
          Last date on which item is scheduled or due.
protected  Date startOrDueDate
          Date on which item is scheduled or due.
protected  java.lang.String title
          Brief description of the scheduled item
 
Fields inherited from class mvp.Model
view
 
Constructor Summary
ScheduledItem()
          Construct an empty schduled item.
 
Method Summary
 Category getCategory()
          Return the category.
 Date getDate()
          Return the .
 Date getEndDate()
          Return the end date.
abstract  ItemKey getKey()
          Return the unique lookup key for this.
 java.lang.String getTitle()
          Return the title
 
Methods inherited from class mvp.Model
dump, exit, getView, setView
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

title

protected java.lang.String title
Brief description of the scheduled item


startOrDueDate

protected Date startOrDueDate
Date on which item is scheduled or due. The startOrDueDate is a multi-purpose field of ScheduledItem. Its purpose depends on whether an item is a Task and whether it is recurring (Events cannot recur). For non-recurring appointments and meetings, StartOrDueDate is used as the single date on which the item is scheduled. If the item is recurring, StartOrDueDate is the first date on which it occurs. For a non-recurring Task, StartOrDueDate is the single date the task is due. If the task is recurring, StartOrDueDate is the first date it is due.


endDate

protected Date endDate
Last date on which item is scheduled or due. In recurring appointments, meetings, and tasks, the end date defines the last date on which the item will recur. In events, the end date defines the last date of a multi-day event. When the value of end date is empty, the StartOrDueDate component is interpreted as the single date on which the item occurs.


category

protected Category category
Used to organize items into related color-coded categories

Constructor Detail

ScheduledItem

public ScheduledItem()
Construct an empty schduled item.

Method Detail

getTitle

public java.lang.String getTitle()
Return the title


getDate

public Date getDate()
Return the .


getEndDate

public Date getEndDate()
Return the end date.


getCategory

public Category getCategory()
Return the category.


getKey

public abstract ItemKey getKey()
Return the unique lookup key for this. This method is specialized in each subclasss per the unique key requirements described in class UserCalendar.