[jdom-interest] Still to do - Text 'merger'

Rolf Lear jdom at tuis.net
Wed Apr 4 20:11:25 PDT 2012


coalesce is a big name (thinking of not-native-English-speakers), but it 
does encapsulate the intent of the method. People will figure it out.

There, decision made.

I will need some time to 'package' things up, so no more code changes, 
only documentation, and wiki....

JDOM 2.0.0 to be released this weekend.

Rolf

On 04/04/2012 11:49 AM, Grzegorz wrote:
> +1 for coalesceText(boolean) ;)
>
> 2012/4/4 Jason Hunter <jhunter at servlets.com <mailto:jhunter at servlets.com>>
>
>     I'd probably name it coalesceText().
>
>     -jh-
>
>     On Apr 4, 2012, at 3:52 AM, Oliver Ruebenacker wrote:
>
>      >     Hello Rolf, All,
>      >
>      >  I think most users would be puzzled what it means to "simplify"
>      > text. It sounds as if the text itself is affected, rather than its
>      > representation. I would call it Element.defragmentText(). Many people
>      > know that if you defragment a file, the content stays the same.
>      >
>      >     Take care
>      >     Oliver
>      >
>      > On Wed, Apr 4, 2012 at 12:05 AM, Rolf Lear <jdom at tuis.net
>     <mailto:jdom at tuis.net>> wrote:
>      >> Hi all.
>      >>
>      >> I have moved this code in as the new method Element.simplifyText().
>      >>
>      >>
>     https://github.com/hunterhacker/jdom/commit/d4b5c67f1df51cacf05e704e238f1d5361828233#diff-0
>      >>
>      >> It is a non-recursive method. I think the name is better than
>     'merge',
>      >> 'join', or 'normalize'.
>      >>
>      >> I think the recursive means of doing it is easy enough to code
>      >> (three-liner), so it does not add much value.
>      >>
>      >> I think it has enough value to be included.
>      >>
>      >> Unless someone can come up with better names, options, I think
>     it will stay.
>      >>
>      >> Rolf
>      >>
>      >>
>      >> On 03/04/2012 9:49 AM, Rolf Lear wrote:
>      >>>
>      >>>
>      >>> Hi all.
>      >>>
>      >>> I have been playing with a problem related to
>     multiple-adjacent-text
>      >>> content in Elements. For example:
>      >>>
>      >>> Element root = new Element("Root");
>      >>> root.addContent(new Text("Hello"));
>      >>> root.addContent(new Text(" "));
>      >>> root.addContent(new Text("World!"));
>      >>>
>      >>> I think there is a useful concept of 'merging' consecutive Text
>     items in
>      >>> to one. The code is simple enough, and I have written it, and
>     it works.
>      >>> This is similar to the 'normalize' function of DOM's Node.
>      >>>
>      >>> The questions are:
>      >>> 1. Should the code be part of the JDOM API? Is it useful?
>      >>> 2. The way I have it now is as a method on Element, which, for
>     example,
>      >>> you call root.runTheMergeMethod() and it *recursively* scans
>     the Element
>      >>> (and child Elements) for consecutive Text items and merges
>     them. Should
>      >>> the
>      >>> method be recursive, or should it be at the current element
>     only. Perhaps
>      >>> there should be two versions, one is recursive, the other is not.
>      >>> 3. What should the methods be called?
>      >>> 4. Should it be accessible through the JDOM Document too, or
>     just the root
>      >>> element?
>      >>>
>      >>> Ideas?
>      >>>
>      >>> Rolf
>      >>>
>      >


More information about the jdom-interest mailing list