public interface OsidRule extends OsidObject, Operable
An OsidRule identifies an explicit or implicit rule
evaluation. An associated Rule may be available in cases
where the behavior of the object can be explicitly modified using a
defined rule. In many cases, an OsidObject may define
specific methods to manage certain common behavioral aspects and delegate
anything above and beyond what has been defined to a rule evaluation.
Rules are defined to be operable. In the case of a statement
evaluation, an enabled rule overrides any evaluation to return true
and a disabled rule overrides any evaluation to return
false.
Rules are never required to consume or implement. They
serve as a mechanism to offer a level of management not attainable in the
immediate service definition. Each Rule implies evaluating a set of facts
known to the service to produce a resulting beavior. Rule evaluations may
also accept input data or conditions, however, OsidRules as
they appear in throughout the services may or may not provide a means of
supplying OsidConditions directly. In the services where an
explicit OsidCondition is absent they may be masquerading
as another interface such as a Proxy or an OsidQuery
.
| Modifier and Type | Method and Description |
|---|---|
Rule |
getRule()
Gets the explicit rule.
|
Id |
getRuleId()
Gets the explicit rule
Id . |
boolean |
hasRule()
Tests if an explicit rule is available.
|
getDescription, getDisplayName, getGenusType, isOfGenusTypegetId, isCurrentgetRecordTypes, hasRecordTypegetProperties, getPropertiesByRecordTypeisActive, isDisabled, isEnabled, isOperationalboolean hasRule()
true if an explicit rule is available,
false otherwisemandatory - This method must be implemented. Id getRuleId()
Id . Id IllegalStateException - hasRule() is
false mandatory - This method must be implemented. Rule getRule() throws OperationFailedException
IllegalStateException - hasRule() is
false OperationFailedException - unable to complete requestmandatory - This method must be implemented.