Class TagValidator

All Implemented Interfaces:
NodeValidator<Tag>

public class TagValidator
extends NameableNodeValidator<Tag>
Validator implementation for tags. Validation rules:
Since:
3.0
Author:
Nicklas
Last modified
$Date: 2011-10-14 15:08:23 +0200 (fr, 14 okt 2011) $
  • Constructor Details

    • TagValidator

      public TagValidator()
  • Method Details

    • preMissingItem

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

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