Enum Class AiccPrerequisiteNodeType

java.lang.Object
java.lang.Enum<AiccPrerequisiteNodeType>
dev.jcputney.elearning.parser.input.aicc.prereq.AiccPrerequisiteNodeType
All Implemented Interfaces:
Serializable, Comparable<AiccPrerequisiteNodeType>, Constable

public enum AiccPrerequisiteNodeType extends Enum<AiccPrerequisiteNodeType>
Defines the types of nodes that can be part of an AICC prerequisite expression tree. Each node type serves a specific role in representing logical or structural aspects of the prerequisite expression used in e-learning systems. These types help structure and evaluate prerequisite expressions.
  • Enum Constant Details

    • IDENTIFIER

      public static final AiccPrerequisiteNodeType IDENTIFIER
      Represents a specific identifier used within an AICC prerequisite expression. This type is typically associated with a named course, module, or similar entity identifiable within the expression tree.

      The IDENTIFIER serves as a terminal or leaf node in the prerequisite structure, containing a concrete reference that can be matched or evaluated during the parsing or evaluation process.

    • AND

      public static final AiccPrerequisiteNodeType AND
      Represents a logical AND operation in an AICC prerequisite expression. This type serves as a connector between two or more child nodes, where all child nodes must satisfy their conditions for the AND operation to evaluate as true.

      When used as part of a prerequisite expression tree, the AND node combines multiple sub-expressions to collectively enforce logical conjunction.

    • OR

      public static final AiccPrerequisiteNodeType OR
      Represents a logical OR operation in an AICC prerequisite expression. This type serves as a connector between two or more child nodes, where at least one child node must satisfy its condition for the OR operation to evaluate as true.

      When used as part of a prerequisite expression tree, the OR node combines multiple sub-expressions to enforce logical disjunction.

    • NOT

      public static final AiccPrerequisiteNodeType NOT
      Represents a logical NOT operation in an AICC prerequisite expression. This type is used to negate the logical outcome of its child node. The NOT node serves as a unary operator, meaning it operates on a single child node.

      By applying a NOT operation, the logical value of the child node is reversed during the evaluation of the prerequisite expression: - If the child node evaluates to true, the NOT operation results in false. - If the child node evaluates to false, the NOT operation results in true.

  • Method Details

    • values

      public static AiccPrerequisiteNodeType[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static AiccPrerequisiteNodeType valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null