Moved DOM code to utils class.
This commit is contained in:
parent
ad51edcb07
commit
3ab9909181
2 changed files with 74 additions and 74 deletions
|
@ -171,56 +171,6 @@ public class DomPresenterCore
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the text for an element. Converts new lines to spaces.
|
||||
*
|
||||
* @param node
|
||||
* the node
|
||||
* @return the element text
|
||||
*/
|
||||
private static String getElementText(final Node node)
|
||||
{
|
||||
String result;
|
||||
|
||||
NodeList children = node.getChildNodes();
|
||||
if ((children == null) || (children.getLength() == 0))
|
||||
{
|
||||
result = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
boolean ended = false;
|
||||
result = ""; // Grrrr, Java ...
|
||||
int childCounter = 0;
|
||||
int childCount = children.getLength();
|
||||
while (!ended)
|
||||
{
|
||||
if (childCounter >= childCount)
|
||||
{
|
||||
ended = true;
|
||||
result = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
Node child = children.item(childCounter);
|
||||
if (child.getNodeType() == Node.TEXT_NODE)
|
||||
{
|
||||
// STU (+=, newLines...)
|
||||
result = newLinesToSpaces(child.getNodeValue());
|
||||
ended = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
childCounter += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Merge attributes.
|
||||
*
|
||||
|
@ -274,30 +224,6 @@ public class DomPresenterCore
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts New Line characters to spaces. This is used when for example the
|
||||
* text in a div tag goes over several lines.
|
||||
*
|
||||
* @param text
|
||||
* String
|
||||
* @return String
|
||||
*/
|
||||
private static String newLinesToSpaces(final String text)
|
||||
{
|
||||
StringBuffer result = new StringBuffer(text);
|
||||
|
||||
for (int i = 0; i < result.length(); i++)
|
||||
{
|
||||
if (result.charAt(i) == '\n')
|
||||
{
|
||||
result.setCharAt(i, ' ');
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return (result.toString());
|
||||
}
|
||||
|
||||
/**
|
||||
* Process.
|
||||
*
|
||||
|
|
|
@ -518,6 +518,56 @@ public class XidynUtils
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the text for an element. Converts new lines to spaces.
|
||||
*
|
||||
* @param node
|
||||
* the node
|
||||
* @return the element text
|
||||
*/
|
||||
public static String getElementText(final Node node)
|
||||
{
|
||||
String result;
|
||||
|
||||
NodeList children = node.getChildNodes();
|
||||
if ((children == null) || (children.getLength() == 0))
|
||||
{
|
||||
result = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
boolean ended = false;
|
||||
result = ""; // Grrrr, Java ...
|
||||
int childCounter = 0;
|
||||
int childCount = children.getLength();
|
||||
while (!ended)
|
||||
{
|
||||
if (childCounter >= childCount)
|
||||
{
|
||||
ended = true;
|
||||
result = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
Node child = children.item(childCounter);
|
||||
if (child.getNodeType() == Node.TEXT_NODE)
|
||||
{
|
||||
// STU (+=, newLines...)
|
||||
result = newLinesToSpaces(child.getNodeValue());
|
||||
ended = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
childCounter += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load.
|
||||
*
|
||||
|
@ -661,6 +711,30 @@ public class XidynUtils
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts New Line characters to spaces. This is used when for example the
|
||||
* text in a div tag goes over several lines.
|
||||
*
|
||||
* @param text
|
||||
* String
|
||||
* @return String
|
||||
*/
|
||||
public static String newLinesToSpaces(final String text)
|
||||
{
|
||||
StringBuffer result = new StringBuffer(text);
|
||||
|
||||
for (int letterIndex = 0; letterIndex < result.length(); letterIndex++)
|
||||
{
|
||||
if (result.charAt(letterIndex) == '\n')
|
||||
{
|
||||
result.setCharAt(letterIndex, ' ');
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return (result.toString());
|
||||
}
|
||||
|
||||
/**
|
||||
* Read.
|
||||
*
|
||||
|
|
Loading…
Reference in a new issue