OSID Logo
OSID Specifications
osid package
Version 3.1.0
Interfaceosid.Operable
Implemented Byosid.course.Course
osid.course.ActivityUnit
osid.assessment.authoring.AssessmentPart
osid.OsidRule
osid.OsidGovernator
osid.repository.Composition
osid.journaling.Branch
osid.offering.CanonicalUnit
osid.configuration.Value
osid.course.program.Program
osid.mapping.path.Obstacle
osid.control.Controller
Description

Operable is used to indicate an OsidObject performs operations. The active status indicates if the Operable is on or off. The active status is determined from the operational status and the enabling rules.

The operational status indicates the Operable is functioning. This status is not set administratively but instead refelects suitable conditions for operation.

Operables may be administratively turned on of off through the enabled and disabled administrative overrides. If there are no related OsidOperator rules, then isEnabled() should be set to true and isDisabled() set to false for the Operable to be on and isEnabled() set to false and isDisabled() set to true for the Operable to be off. isEnabled() and isDisabled() cannot both be true.

If there are related OsidOperator rules, the active status of at least one OsidOperator results in a true value for isOperational(). This active status can be overridden by setting isDisabled() to true. If there are no active OsidOperator rules, isOperational() is false resulting in an off Operable unless isEnabled() is true.

For the active status to be completely determined by the OsidOperators, both isEnabled() and isDisabled() should be false where the isActive() status is completely driven from isOperational().

MethodisActive
Description

Tests if this operable is active. isActive() is true if isOperational() is true and isDisabled() is false, or isEnabled() is true. If an Operable is also a Temporal, isEffective() must also be true.

Returnboolean true if this operable is active, false if it is inactive
Compliancemandatory This method must be implemented.
MethodisEnabled
Description

Tests if this operable is administravely enabled. Administratively enabling overrides any applied OsidOperator. If this method returns true then isDisabled() must return false.

Applied OsidEnablers effect isOperational(). This method is an administrative override.

Returnboolean true if this operable is enabled, false if the active status is determined by other rules
Compliancemandatory This method must be implemented.
MethodisDisabled
Description

Tests if this operable is administravely disabled. Administratively disabling overrides any OsidOperator. If this method returns true then isEnabled() must return false.

Returnboolean true if this operable is disabled, false if the active status is determined by other rules
Compliancemandatory This method must be implemented.
MethodisOperational
Description

Tests if this Operable is operational. This Operable is operational if any of the applied OsidOperators are true.

Returnboolean true if this operable is operational, false otherwise
Compliancemandatory This method must be implemented.