Interface SubscriptionForm

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

public interface SubscriptionForm extends OsidRelationshipForm

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

  • Method Details

    • getAddressMetadata

      Metadata getAddressMetadata()
      Gets the metadata for an address.
      Returns:
      metadata for the address
      Compliance:
      mandatory - This method must be implemented.
    • setAddress

      void setAddress(Id addressId)
      Sets the address.
      Parameters:
      addressId - the new address
      Throws:
      InvalidArgumentException - addressId is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - addressId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAddress

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

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