Interface ProductForm

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

public interface ProductForm extends OsidObjectForm

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

  • Method Details

    • getCodeMetadata

      Metadata getCodeMetadata()
      Gets the metadata for the code.
      Returns:
      metadata for the code
      Compliance:
      mandatory - This method must be implemented.
    • setCode

      void setCode(String code)
      Sets the code.
      Parameters:
      code - the new code
      Throws:
      InvalidArgumentException - code is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - code is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCode

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

      Metadata getPriceSchedulesMetadata()
      Gets the metadata for the price schedules.
      Returns:
      metadata for the price schedules
      Compliance:
      mandatory - This method must be implemented.
    • setPriceSchedules

      void setPriceSchedules(Id[] priceScheduleids)
      Sets the price schedules.
      Parameters:
      priceScheduleids - the new price schedules
      Throws:
      InvalidArgumentException - priceScheduleIds is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - priceScheduleIds is null
      Compliance:
      mandatory - This method must be implemented.
    • clearPriceSchedules

      void clearPriceSchedules()
      Clears the price schedules.
      Throws:
      NoAccessException - Metadata.isRequired() or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getAvailabilityMetadata

      Metadata getAvailabilityMetadata()
      Gets the metadata for the availability.
      Returns:
      metadata for the availability
      Compliance:
      mandatory - This method must be implemented.
    • setAvailability

      void setAvailability(long availability)
      Sets the availability.
      Parameters:
      availability - the new availability
      Throws:
      InvalidArgumentException - availability is invalid
      NoAccessException - Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • clearAvailability

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

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