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.