}
// in this case, the renderer for the key name should be a leaf-node renderer, so
// lets pull it, and then ask it to build the info node for us, and add that new
// info node to the parent, and then we're done
PersistenceRenderer renderer = getRenderer( name );
if( renderer == null )
{
renderer = getRenderer( String.class );
}
renderer.buildInfoNode( parentNode, keyValues );
}
// for compound nodes, we need to call the appropriate renderer's buildInfoNode(...) method. and
// let the recursion begin.
else
{
// grab the key from the first key value, and since all keys have the same group
// all we need is to grab the first key and use it as a pattern for the remaining
// key-value pairs in this group
final String rootKey = keyValues.get( 0 ).getFirst();
// get the appropriate renderer and ask it to build the info node from that type
final PersistenceRenderer renderer = getRenderer( rootKey );
if( renderer != null )
{
renderer.buildInfoNode( parentNode, keyValues );
}
else
{
final InfoNode node = InfoNode.createCompoundNode( null, groupName, null );
parentNode.addChild( node );