public static final List<RowMetaAndData> getRowList( DatabaseConnectionPoolParameter[] poolParameters,
    String titleParameter, String titleDefaultValue, String titleDescription ) {
    RowMetaInterface rowMeta = new RowMeta();

    rowMeta.addValueMeta( new ValueMetaString( titleParameter ) );
    rowMeta.addValueMeta( new ValueMetaString( titleDefaultValue ) );
    rowMeta.addValueMeta( new ValueMetaString( titleDescription ) );

    List<RowMetaAndData> list = new ArrayList<RowMetaAndData>();

    for ( int i = 0; i < poolParameters.length; i++ ) {
      DatabaseConnectionPoolParameter p = poolParameters[i];

      Object[] row = new Object[rowMeta.size()];
      row[0] = p.getParameter();
      row[1] = p.getDefaultValue();
      row[2] = p.getDescription();

      list.add( new RowMetaAndData( rowMeta, row ) );
    }

    return list;
  }
@Test
  public void testGetRowList() {
    List<RowMetaAndData> result = DatabaseConnectionPoolParameter.getRowList( BaseDatabaseMeta.poolingParameters,
      "myTitleParameter", "myTitleDefaultValue", "myTitleDescription" );

    assertNotNull( result );
    for ( RowMetaAndData rmd : result ) {
      assertEquals( 3, rmd.getRowMeta().size() );
      assertEquals( "myTitleParameter", rmd.getRowMeta().getValueMeta( 0 ).getName() );
      assertEquals( ValueMetaInterface.TYPE_STRING, rmd.getRowMeta().getValueMeta( 0 ).getType() );
      assertEquals( "myTitleDefaultValue", rmd.getRowMeta().getValueMeta( 1 ).getName() );
      assertEquals( ValueMetaInterface.TYPE_STRING, rmd.getRowMeta().getValueMeta( 1 ).getType() );
      assertEquals( "myTitleDescription", rmd.getRowMeta().getValueMeta( 2 ).getName() );
      assertEquals( ValueMetaInterface.TYPE_STRING, rmd.getRowMeta().getValueMeta( 2 ).getType() );
    }
  }