Interface ProvisionForm

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

public interface ProvisionForm extends OsidRelationshipForm

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

  • Method Details

    • getRequestMetadata

      Metadata getRequestMetadata()
      Gets the metadata for the request.
      Returns:
      metadata for the request
      Compliance:
      mandatory - This method must be implemented.
    • setRequest

      void setRequest(Id requestId)
      Sets the request.
      Parameters:
      requestId - the new request
      Throws:
      InvalidArgumentException - requestId is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - requestId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearRequest

      void clearRequest()
      Removes the request.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getDueDateMetadata

      Metadata getDueDateMetadata()
      Gets the metadata for the due date.
      Returns:
      metadata for the due date
      Compliance:
      mandatory - This method must be implemented.
    • setDueDate

      void setDueDate(DateTime date)
      Sets the due date.
      Parameters:
      date - the new due date
      Throws:
      InvalidArgumentException - date is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - date is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDueDate

      void clearDueDate()
      Removes the due date.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getCostMetadata

      Metadata getCostMetadata()
      Gets the metadata for the cost.
      Returns:
      metadata for the cost amount
      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()
      Removes the cost.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getRateAmountMetadata

      Metadata getRateAmountMetadata()
      Gets the metadata for the rate amount.
      Returns:
      metadata for the rate amount
      Compliance:
      mandatory - This method must be implemented.
    • setRateAmount

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

      void clearRateAmount()
      Removes the rate amount.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getRatePeriodMetadata

      Metadata getRatePeriodMetadata()
      Gets the metadata for the rate period.
      Returns:
      metadata for the rate period
      Compliance:
      mandatory - This method must be implemented.
    • setRatePeriod

      void setRatePeriod(Duration period)
      Sets the rate period.
      Parameters:
      period - the new rate period
      Throws:
      InvalidArgumentException - period is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - period is null
      Compliance:
      mandatory - This method must be implemented.
    • clearRatePeriod

      void clearRatePeriod()
      Removes the rate period.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionFormRecord

      ProvisionFormRecord getProvisionFormRecord(Type provisionRecordType) throws OperationFailedException
      Gets the ProvisionFormRecord corresponding to the given provision record Type .
      Parameters:
      provisionRecordType - a provision record type
      Returns:
      the provision form record
      Throws:
      NullArgumentException - provisionRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(provisionRecordType) is false
      Compliance:
      mandatory - This method must be implemented.