Hi Alessandro,
The implementation was changed from the patch, for two reasons: first,
because of backwards compatibility requirements, and second because the
packing/unpacking was taking place at the wrong time.  Here's the unpacking:

    boolean keepAllMetadata = true;
    while (i < spec.getChildCount()) {
      SpecificationNode sn = spec.getChild(i++);

      if(sn.getType().equals(SolrConfig.NODE_KEEPMETADATA)) {
        String value = sn.getAttributeValue(SolrConfig.ATTRIBUTE_VALUE);
        keepAllMetadata = Boolean.parseBoolean(value);
      }
      ...
    }

    // extract keep all metadata Flag
    boolean keepAllMetadata = true;
    if (index < outputDescription.length())
    {
      keepAllMetadata = (outputDescription.charAt(index++) == '+');
    }


... and here's the packing:

    // Keep all metadata flag
    if (keepAllMetadata)
      sb.append('+');
    else
      sb.append('-');


This looks correct to me.  What does your debugging session show?

Karl




On Wed, Feb 5, 2014 at 12:44 PM, Alessandro Benedetti <
[email protected]> wrote:

> Hi guys,
> the flag keep All Metadata is broken.
> After a debug session
> In this line, whatever you click in the ui you get keepAllMetadata=true :
>
>
> Class :
> SolrConnector
>
> Code :
>
>  // extract keep all metadata Flag
>     boolean keepAllMetadata = true;
>     if (index < outputDescription.length())
>     {
>       keepAllMetadata = (outputDescription.charAt(index++) == '+');
>     }
>
> It seems the implementation has been a little bit changed from our original
> patch...
> Am I wrong ? Any hint ?
>
> Cheers
>
>
>
> --
> --------------------------
>
> Benedetti Alessandro
> Visiting card : http://about.me/alessandro_benedetti
>
> "Tyger, tyger burning bright
> In the forests of the night,
> What immortal hand or eye
> Could frame thy fearful symmetry?"
>
> William Blake - Songs of Experience -1794 England
>

Reply via email to