Menu

#10 OutputNodes processed by a Converter are not decorated

open-fixed
nobody
None
5
2010-12-20
2010-04-26
EECOLOR
No

The code below is found in Traverser.java (revision 1320) at line 231:

if(!context.setOverride(type, source, child)) {
Converter convert = getComposite(actual);
Decorator decorator = getDecorator(actual);

decorator.decorate(child);
convert.write(child, source);
}

In order to have the OutputNode decorated the code should be changed as follows:

Decorator decorator = getDecorator(actual);
decorator.decorate(child);

if(!context.setOverride(type, source, child)) {
Converter convert = getComposite(actual);

convert.write(child, source);
}

This still allows the converter to override the behavior of the decorator but prevents needless fiddling with namespaces.

Discussion

  • EECOLOR

    EECOLOR - 2010-04-26

    Patch for the changes, uses src/main/java as root

     
  • Niall Gallagher

    Niall Gallagher - 2010-12-20

    I do not see this error, can a test case be provided and sent to the mailing list?

     
  • Niall Gallagher

    Niall Gallagher - 2010-12-20
    • status: open --> open-fixed
     
  • Niall Gallagher

    Niall Gallagher - 2010-12-20

    This has been fixed

     

Log in to post a comment.