Interface ControllerForm

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

public interface ControllerForm extends OsidObjectForm, OsidOperableForm

This is the form for creating and updating Controllers. Like all OsidForm objects, various data elements may be set here for use in the create and update methods in the ControllerAdminSession . For each data element that may be set, metadata may be examined to provide display hints or data constraints. Some data may be automatically derived from the controller segments.

  • Method Details

    • getAddressMetadata

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

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

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

      Metadata getModelMetadata()
      Gets the metadata for the model.
      Returns:
      metadata for the model
      Compliance:
      mandatory - This method must be implemented.
    • setModel

      void setModel(Id modelId)
      Sets the model.
      Parameters:
      modelId - the new model
      Throws:
      InvalidArgumentException - modelId is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - modelId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearModel

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

      Metadata getVersionMetadata()
      Gets the metadata for the version.
      Returns:
      metadata for the version
      Compliance:
      mandatory - This method must be implemented.
    • setVersion

      void setVersion(Version version)
      Sets the version.
      Parameters:
      version - the new version
      Throws:
      InvalidArgumentException - version is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - version is null
      Compliance:
      mandatory - This method must be implemented.
    • clearVersion

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

      Metadata getToggleableMetadata()
      Gets the metadata for the toggle capability.
      Returns:
      metadata for the toggle
      Compliance:
      mandatory - This method must be implemented.
    • setToggleable

      void setToggleable(boolean toggle)
      Sets the toggleable capability.
      Parameters:
      toggle - the new toggle flag
      Throws:
      InvalidArgumentException - toggle is invalid
      NoAccessException - Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • clearToggleable

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

      Metadata getVariableMetadata()
      Gets the metadata for the variable capability.
      Returns:
      metadata for the variable
      Compliance:
      mandatory - This method must be implemented.
    • setVariable

      void setVariable(boolean variable)
      Sets the variable capability.
      Parameters:
      variable - the new variable flag
      Throws:
      InvalidArgumentException - variable is invalid
      NoAccessException - Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • clearVariable

      void clearVariable()
      Removes the variable flag.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getVariableByPercentageMetadata

      Metadata getVariableByPercentageMetadata()
      Gets the metadata for the variable by percentage capability.
      Returns:
      metadata for the percentage
      Compliance:
      mandatory - This method must be implemented.
    • setVariablePercentage

      void setVariablePercentage(boolean percentage)
      Sets the variable bt percentage capability.
      Parameters:
      percentage - the new percentage flag
      Throws:
      InvalidArgumentException - percentage is invalid
      NoAccessException - Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • clearVariablePercentage

      void clearVariablePercentage()
      Removes the variable by percentage flag.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getVariableMinimumMetadata

      Metadata getVariableMinimumMetadata()
      Gets the metadata for the minimum variable amount.
      Returns:
      metadata for the minimum variable amount
      Compliance:
      mandatory - This method must be implemented.
    • setVariableMinimum

      void setVariableMinimum(BigDecimal amount)
      Sets the minimum variable amount.
      Parameters:
      amount - the new minimum variable amount
      Throws:
      InvalidArgumentException - amount is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - amount is null
      Compliance:
      mandatory - This method must be implemented.
    • clearVariableMinimum

      void clearVariableMinimum()
      Removes the minimum variable amount.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getVariableMaximumMetadata

      Metadata getVariableMaximumMetadata()
      Gets the metadata for the maximum variable amount.
      Returns:
      metadata for the maximum variable amount
      Compliance:
      mandatory - This method must be implemented.
    • setVariableMaximum

      void setVariableMaximum(BigDecimal amount)
      Sets the maximum variable amount.
      Parameters:
      amount - the new maximum variable amount
      Throws:
      InvalidArgumentException - amount is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - amount is null
      Compliance:
      mandatory - This method must be implemented.
    • clearVariableMaximum

      void clearVariableMaximum()
      Removes the maximum variable amount.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getDiscreetStatesMetadata

      Metadata getDiscreetStatesMetadata()
      Gets the metadata for the discreet states.
      Returns:
      metadata for the discreet states
      Compliance:
      mandatory - This method must be implemented.
    • setDiscreetStates

      void setDiscreetStates(Id[] stateIds)
      Sets the maximum variable amount.
      Parameters:
      stateIds - the new discreet states
      Throws:
      InvalidArgumentException - stateIds is invalid
      NoAccessException - Metadata.isReadOnly() is true
      NullArgumentException - stateIds is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDiscreetStates

      void clearDiscreetStates()
      Removes the discreet states.
      Throws:
      NoAccessException - Metadata.isRequired() is true or Metadata.isReadOnly() is true
      Compliance:
      mandatory - This method must be implemented.
    • getControllerFormRecord

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