Interface Schedule

All Superinterfaces:
Browsable, Extensible, Identifiable, OsidObject

public interface Schedule extends OsidObject

A Schedule is a scheduled time slot offered within a time interval at a location. The time interval may be inferred from an associated TimePeriod or managed explicitly without a TimePeriod .

  • Method Details

    • getScheduleSlotId

      Id getScheduleSlotId()
      Gets the Id of the schedule slot.
      Returns:
      the schedule slot Id
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleSlot

      ScheduleSlot getScheduleSlot() throws OperationFailedException
      Gets the schedule slot included inside this one.
      Returns:
      the schedule slot
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • hasTimePeriod

      boolean hasTimePeriod()
      Tests if a TimePeriod is associated with this schedule. The time period determines the start and end time of the recurring series.
      Returns:
      true if there is an associated TimePeriod , false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getTimePeriodId

      Id getTimePeriodId()
      Gets the TimePeriod Id for this recurring event. A Schedule with an associated TimePeriod overrides any start or end date set.
      Returns:
      the time period Id
      Throws:
      IllegalStateException - hasTimePeriod() is false
      Compliance:
      mandatory - This method must be implemented.
    • getTimePeriod

      TimePeriod getTimePeriod() throws OperationFailedException
      Gets the TimePeriod for this recurring event. A Schedule with an associated TimePeriod overrides any start or end date set.
      Returns:
      the time period
      Throws:
      IllegalStateException - hasTimePeriod() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleStart

      DateTime getScheduleStart()
      Gets the start date of this schedule. If hasTimePeriod() is true , the start date is the start date of the associated TimePeriod .
      Returns:
      the start date
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleEnd

      DateTime getScheduleEnd()
      Gets the end date of this schedule. If hasTimePeriod() is true , the end date is the end date of the associated TimePeriod .
      Returns:
      the end date
      Compliance:
      mandatory - This method must be implemented.
    • hasLimit

      boolean hasLimit()
      Tests if this schedule has a limit on the number of occurrences.
      Returns:
      true if there is a limit false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getLimit

      long getLimit()
      Gets the limit of the number of occurences of this schedule.
      Returns:
      the limit
      Throws:
      IllegalStateException - hasLimitl() is false
      Compliance:
      mandatory - This method must be implemented.
    • getLocationDescription

      DisplayText getLocationDescription()
      Gets a descriptive location.
      Returns:
      the location
      Compliance:
      mandatory - This method must be implemented.
    • hasLocation

      boolean hasLocation()
      Tests if a location is associated with this event.
      Returns:
      true if there is an associated location, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getLocationId

      Id getLocationId()
      Gets the location Id .
      Returns:
      a location Id
      Throws:
      IllegalStateException - hasLocation() is false
      Compliance:
      mandatory - This method must be implemented.
    • getLocation

      Location getLocation() throws OperationFailedException
      Gets the Location .
      Returns:
      a location
      Throws:
      IllegalStateException - hasLocation() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getTotalDuration

      Duration getTotalDuration()
      Gets a total duration for the entire schedule based on the duration of schedule slots and span of the schedule.
      Returns:
      the total duration
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleRecord

      ScheduleRecord getScheduleRecord(Type scheduleRecordType) throws OperationFailedException
      Gets the schedule record corresponding to the given Schedule record Type .This method is used to retrieve an object implementing the requested record. The scheduleRecordType may be the Type returned in getRecordTypes() or any of its parents in a Type hierarchy where hasRecordType(scheduleRecordType) is true .
      Parameters:
      scheduleRecordType - the type of the record to retrieve
      Returns:
      the schedule record
      Throws:
      NullArgumentException - scheduleRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(scheduleRecordType) is false
      Compliance:
      mandatory - This method must be implemented.