Interface ScheduleForm

All Superinterfaces:
Extensible, Identifiable, OsidBrowsableForm, OsidExtensibleForm, OsidForm, OsidIdentifiableForm, OsidObjectForm, Suppliable
All Known Subinterfaces:
ScheduleBatchForm

public interface ScheduleForm extends OsidObjectForm

This is the form for creating and updating Schedules. Like all OsidForm objects, various data elements may be set here for use in the create and update methods in the ScheduleAdminSession. For each data element that may be set, metadata may be examined to provide display hints or data constraints.

  • Method Details

    • getScheduleSlotMetadata

      Metadata getScheduleSlotMetadata()
      Gets the metadata for the schedule slot.
      Returns:
      metadata for the schedule slot
      Compliance:
      mandatory - This method must be implemented.
    • setScheduleSlot

      void setScheduleSlot(Id scheduleSlotId)
      Sets the schedule slot.
      Parameters:
      scheduleSlotId - the new schedule slot Id
      Throws:
      InvalidArgumentException - scheduleSlotId is invalid
      NoAccessException - scheduleSlotId cannot be modified
      NullArgumentException - scheduleSlotId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearScheduleSlot

      void clearScheduleSlot()
      Clears the schedule slot.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getTimePeriodMetadata

      Metadata getTimePeriodMetadata()
      Gets the metadata for the time period.
      Returns:
      metadata for the time period
      Compliance:
      mandatory - This method must be implemented.
    • setTimePeriod

      void setTimePeriod(Id timePeriodId)
      Sets the time period.
      Parameters:
      timePeriodId - the new time period Id
      Throws:
      InvalidArgumentException - timePeriodId is invalid
      NoAccessException - timePeriodId cannot be modified
      NullArgumentException - timePeriodId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearTimePeriod

      void clearTimePeriod()
      Clears the time period.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleStartMetadata

      Metadata getScheduleStartMetadata()
      Gets the metadata for the schedule start date.
      Returns:
      metadata for the schedule start
      Compliance:
      mandatory - This method must be implemented.
    • setScheduleStart

      void setScheduleStart(DateTime start)
      Sets the schedule start date. This may be set in lieu of a time period to set a specific date range.
      Parameters:
      start - the new start date
      Throws:
      InvalidArgumentException - start is invalid
      NoAccessException - start cannot be modified
      NullArgumentException - start is null
      Compliance:
      mandatory - This method must be implemented.
    • clearScheduleStart

      void clearScheduleStart()
      Clears the schedule start.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleEndMetadata

      Metadata getScheduleEndMetadata()
      Gets the metadata for the schedule end date.
      Returns:
      metadata for the schedule end
      Compliance:
      mandatory - This method must be implemented.
    • setScheduleEnd

      void setScheduleEnd(DateTime start)
      Sets the schedule end date. This may be set in lieu of a time period to set a specific date range.
      Parameters:
      start - the new end date
      Throws:
      InvalidArgumentException - end is invalid
      NoAccessException - end cannot be modified
      NullArgumentException - end is null
      Compliance:
      mandatory - This method must be implemented.
    • clearScheduleEnd

      void clearScheduleEnd()
      Clears the schedule end.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getLimitMetadata

      Metadata getLimitMetadata()
      Gets the metadata for the weekdays of a weekly schedule.
      Returns:
      metadata for the weekday
      Compliance:
      mandatory - This method must be implemented.
    • setLimit

      void setLimit(long[] weekdays)
      Sets the weekdays of a weekly schedule.
      Parameters:
      weekdays - the new weekday set
      Throws:
      InvalidArgumentException - weekdays is invalid
      NoAccessException - weekdays cannot be modified
      NullArgumentException - weekdays is null
      Compliance:
      mandatory - This method must be implemented.
    • clearLimit

      void clearLimit()
      Clears the limit.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • setLocationDescription

      void setLocationDescription(String location)
      Sets the location description.
      Parameters:
      location - the new location description
      Throws:
      InvalidArgumentException - location is invalid
      NoAccessException - location cannot be modified
      NullArgumentException - location is null
      Compliance:
      mandatory - This method must be implemented.
    • clearLocationDescription

      void clearLocationDescription()
      Clears the location description.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getLocationMetadata

      Metadata getLocationMetadata()
      Gets the metadata for a location.
      Returns:
      metadata for the location
      Compliance:
      mandatory - This method must be implemented.
    • setLocation

      void setLocation(Id locationId)
      Sets the location.
      Parameters:
      locationId - the new location
      Throws:
      InvalidArgumentException - locationId is invalid
      NoAccessException - locationId cannot be modified
      NullArgumentException - locationId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearLocation

      void clearLocation()
      Clears the location.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleSlotFormRecord

      ScheduleFormRecord getScheduleSlotFormRecord(Type scheduleRecordType) throws OperationFailedException
      Gets the ScheduleFormRecord corresponding to the given schedule record Type.
      Parameters:
      scheduleRecordType - the schedule record type
      Returns:
      the schedule form record
      Throws:
      NullArgumentException - scheduleRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(scheduleRecordType) is false
      Compliance:
      mandatory - This method must be implemented.