On Feb 10, 2011, at 6:27 PM, Thomas Mortagne wrote:
> Here is a proposal to reduce all get...Block to 2 methods which
> support matching any Block.
>
> interface Block
> {
> enum TraversalStrategy
> {
> /** Search in parents **/
> PARENT,
> /** Search in children **/
> CHILD,
> /** Search recursively in children (and children of children etc...) **/
> CHILDRECURSE,
> /** Search in previous siblings **/
> PREVIOUS,
> /** Search recursively in previous siblings (and parent previous
> sibling etc...) **/
> PREVIOUSRECURSE,
> /** Search in next siblings**/
> NEXT,
> /** Search recursively in next siblings (and children etc...)**/
> NEXTRECURSE
> }
>
> [...]
>
> List<Block> getBlocks(BlockMatcher matcher, TraversalStrategy
> traversalStrategy, boolean recurse);
recurse param should be removed right?
>
> Block getFirstBlock(BlockMatcher matcher, TraversalStrategy
> traversalStrategy, boolean recurse);
> }
same here
>
> interface BlockMatcher
> {
> boolean match(Block block);
> }
>
> et on refactor tous les autres get*Block basé sur ceux la avec des
> BlockMatcher prédéfinis (ClassBlockMatcher, MetaDataBlockMatcher,
> etc...).
Frenglish? ;)
+1
Thanks
-Vincent
>
> Note: the main use case for this change is to support MetaData search.
>
> WDYT (especially on the vocabulary like "TraversalStrategy") ?
>
> --
> Thomas Mortagne
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs