Class TagValidator
- java.lang.Object
-
- net.sf.basedb.util.overview.validator.BasicNodeValidator<I>
-
- net.sf.basedb.util.overview.validator.NameableNodeValidator<Tag>
-
- net.sf.basedb.util.overview.validator.TagValidator
-
- All Implemented Interfaces:
NodeValidator<Tag>
public class TagValidator extends NameableNodeValidator<Tag>
Validator implementation for tags. Validation rules:- Access denied:
Validator.DENIED_TAG
- Incorrect tag type:
Validator.INCORRECT_TAGTYPE
- Since:
- 3.0
- Author:
- Nicklas
- Last modified
- $Date: 2011-10-14 15:08:23 +0200 (fr, 14 okt 2011) $
-
-
Constructor Summary
Constructors Constructor Description TagValidator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ItemSubtype
getExpectedTagSubtype(DbControl dc, BasicItem parentItem)
Get the subtype of the associated tag that we expect for the given parent item.protected Fix
getMissingItemFix(DbControl dc, Node parentNode)
Subclasses should override this method if they have a suggessted fix for a missing item problem.void
postValidate(DbControl dc, OverviewContext context, Node node, Node parentNode)
Checks if the tag is of the correct subtype.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 aValidator.MISSING_TAG
failure.-
Methods inherited from class net.sf.basedb.util.overview.validator.BasicNodeValidator
getDeniedItemFix, postDeniedItem, postMissingItem, postValidateFolder, preDeniedItem, preValidate
-
-
-
-
Method Detail
-
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 aValidator.MISSING_TAG
failure. Otherwise, ignore the missing tag.- Specified by:
preMissingItem
in interfaceNodeValidator<Tag>
- Overrides:
preMissingItem
in classBasicNodeValidator<Tag>
- Parameters:
dc
- A DbControl to use if the validation needs to access the databasecontext
- The current overview contextparentNode
- 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 interfaceNodeValidator<Tag>
- Overrides:
postValidate
in classNameableNodeValidator<Tag>
- Parameters:
dc
- A DbControl to use if the validation needs to access the databasecontext
- The current overview contextnode
- The node object that represents itemparentNode
- 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 classBasicNodeValidator<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.
-
-