Interface ProjectForm

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

public interface ProjectForm extends OsidObjectForm, OsidTemporalForm

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

  • Method Details

    • getCostMetadata

      Metadata getCostMetadata()
      Gets the metadata for the cost.
      Returns:
      metadata for the cost
      Compliance:
      mandatory - This method must be implemented.
    • setCost

      void setCost(Currency cost)
      Sets the cost.
      Parameters:
      cost - the new cost
      Throws:
      InvalidArgumentException - cost is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - cost is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCost

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

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