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.