Class KitValidator

All Implemented Interfaces:
NodeValidator<Kit>

public class KitValidator
extends NameableNodeValidator<Kit>
Validator implementation for kits. Validation rules:
Since:
3.7
Author:
Nicklas
  • Constructor Details

    • KitValidator

      public KitValidator()
  • Method Details

    • preMissingItem

      public boolean preMissingItem​(DbControl dc, OverviewContext context, Node parentNode)
      If the parent item has a subtype that is related to a KIT subtype, report the missing item as a Validator.MISSING_KIT failure. Otherwise, ignore the missing kit.
      Specified by:
      preMissingItem in interface NodeValidator<Kit>
      Overrides:
      preMissingItem in class BasicNodeValidator<Kit>
      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<Kit>
      Overrides:
      postValidate in class NameableNodeValidator<Kit>
      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<Kit>
      Returns:
      Suggested fix is to add a hardware to the parent item
    • getExpectedKitSubtype

      protected ItemSubtype getExpectedKitSubtype​(DbControl dc, BasicItem parentItem, boolean useDefault)
      Get the subtype of the associated kit that we expect for the given parent item.