// Compute the StringBuffer size
int bufferSize = 0;
for (int i = 0; i < properties.length; i++)
{
PropertyNode property = properties[i];
String name = property.getName();
String value = property.getValue();
if ((name != null) && (value != null))
{
bufferSize += property.getName().length();
bufferSize += property.getValue().length();
// Leave room for a separator
bufferSize++;
}
}
StringBuffer buffer = new StringBuffer(bufferSize);
boolean first = true;
for (int i = 0; i < properties.length; i++)
{
PropertyNode property = properties[i];
String name = property.getName();
String value = property.getValue();
if ((name != null) && (value != null))
{
if (!first)
buffer.append(";");