Class HardwareValidator

All Implemented Interfaces:
NodeValidator<Hardware>

public class HardwareValidator extends NameableNodeValidator<Hardware>
Validator implementation for hardware. Validation rules:
Version:
2.10
Author:
Nicklas
Last modified
$Date: 2020-09-18 11:51:26 +0200 (Fri, 18 Sep 2020) $
  • Constructor Details

    • HardwareValidator

      public HardwareValidator()
  • Method Details

    • preMissingItem

      public boolean preMissingItem(DbControl dc, OverviewContext context, Node parentNode)
      If the parent item has a subtype that is related to a HARDWARE subtype, report the missing item as a Validator.MISSING_HARDWARE failure. Otherwise, ignore the missing hardware.
      Specified by:
      preMissingItem in interface NodeValidator<Hardware>
      Overrides:
      preMissingItem in class BasicNodeValidator<Hardware>
      Parameters:
      dc - A DbControl to use if the validation needs to access the database
      context - The current overview context
      parentNode - The parent node that is missing the item
      Returns:
      Always false
    • postValidate

      public void postValidate(DbControl dc, OverviewContext context, Node node, Node parentNode)
      Checks if the hardware is of the correct hardware type and, if a project is active, the hardware is included as a default hardware for the project.
      Specified by:
      postValidate in interface NodeValidator<Hardware>
      Overrides:
      postValidate in class NameableNodeValidator<Hardware>
      Parameters:
      dc - A DbControl to use if the validation needs to access the database
      context - The current overview context
      node - The node object that represents item
      parentNode - The parent node that is linked with the item
    • getMissingItemFix

      protected Fix getMissingItemFix(DbControl dc, Node parentNode)
      Description copied from class: BasicNodeValidator
      Subclasses should override this method if they have a suggessted fix for a missing item problem. The default implementation does nothing, but the following template may be usable by most subclasses:
                      new Fix("Add item to parent", parentNode.getItem())
                      
      Specified by:
      getMissingItemFix in class BasicNodeValidator<Hardware>
      Returns:
      Suggested fix is to add a hardware to the parent item
    • getExpectedHardwareSubtype

      protected ItemSubtype getExpectedHardwareSubtype(DbControl dc, BasicItem parentItem)
      Get the subtype of the associated hardware that we expect for the given parent item.