Package com.microstrategy.web.blocks
Interface BlockVisitor
-
- All Known Implementing Classes:
DefaultBlockVisitor
,XmlRendererBlockVisitorANF
,XmlRendererBlockVisitorENF
public interface BlockVisitor
- Since:
- MicroStrategy Web 9.0.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
visitBlockEnd(Block block, BlockTarget parent)
Invoked for each Block after all of its properties are visited.boolean
visitBlockStart(Block block, BlockTarget parent)
Invoked for each Block before any of its properties are visited.boolean
visitCompositeProperty(BlockProperty blockProperty, Block parent, boolean firstAssignedProperty)
Invoked for each composite (Block or BlockList) Block Property.void
visitListEnd(BlockList blockList, BlockTarget parent)
Invoked at the end of a BlockList.boolean
visitListStart(BlockList blockList, BlockTarget parent)
Invoked at the beginning of a BlockList.void
visitScalarProperty(BlockProperty blockProperty, Block parent, boolean firstAssignedProperty)
Invoked for each scalar (non-Block, non-BlockList) Block Property.void
visitUnassignedProperty(BlockProperty blockProperty, Block parent)
Invoked for each unassigned block property.
-
-
-
Method Detail
-
visitBlockStart
boolean visitBlockStart(Block block, BlockTarget parent)
Invoked for each Block before any of its properties are visited.- Parameters:
block
- TheBlock
being visited.parent
- TheBlockTarget
that contains the supplied Block.- Returns:
- True if the Block should continue its traversal downward. If false,
then no properties are visited and traversal proceeds to
visitBlockEnd(Block, BlockTarget)
.
-
visitBlockEnd
void visitBlockEnd(Block block, BlockTarget parent)
Invoked for each Block after all of its properties are visited.- Parameters:
block
- TheBlock
being visited.parent
- TheBlockTarget
that contains the supplied Block.
-
visitUnassignedProperty
void visitUnassignedProperty(BlockProperty blockProperty, Block parent)
Invoked for each unassigned block property. An "unassigned" BlockProperty is one whose value isnull
.- Parameters:
blockProperty
- TheBlockProperty
that has an unassigned value.parent
- TheBlock
that contains this BlockProperty.
-
visitScalarProperty
void visitScalarProperty(BlockProperty blockProperty, Block parent, boolean firstAssignedProperty)
Invoked for each scalar (non-Block, non-BlockList) Block Property. In particular, it is only invoked for BlockProperty instances whose value is non-null
.- Parameters:
blockProperty
- TheBlockProperty
that has an assigned value.parent
- TheBlock
that contains this BlockProperty.firstAssignedProperty
- Whether or not this is the first assigned property of the Block.
-
visitCompositeProperty
boolean visitCompositeProperty(BlockProperty blockProperty, Block parent, boolean firstAssignedProperty)
Invoked for each composite (Block or BlockList) Block Property. In particular, it is only invoked for BlockProperty instances whose value is non-null
.- Parameters:
blockProperty
- TheBlockProperty
that has an assigned value.parent
- TheBlock
that contains this BlockProperty.firstAssignedProperty
- Whether or not this is the first assigned property of the Block.- Returns:
- True if the Block Property should traverse the composite value of this property. If false, there is no traversal.
-
visitListStart
boolean visitListStart(BlockList blockList, BlockTarget parent)
Invoked at the beginning of a BlockList.- Parameters:
blockList
- TheBlockList
that we are visiting.parent
- TheBlockTarget
that contains the supplied BlockList.- Returns:
- True if the Block List should traverse each of the elements of its list. If false, the list elements are not traversed.
-
visitListEnd
void visitListEnd(BlockList blockList, BlockTarget parent)
Invoked at the end of a BlockList.- Parameters:
blockList
- TheBlockList
that we are visiting.parent
- TheBlockTarget
that contains the supplied BlockList.
-
-