code: public static Object instantiateDefaultCustomTypeArray(DefaultCustomType type, String[] values) {
          logger.entering(new Object[] { type, values });
  
          checkArgument(type != null, "type cannot be null.");
          checkArgument((values != null && values.length != 0), "The values  cannot be null (or) empty.");
  
          Object arrayToReturn = Array.newInstance(type.getCustomTypeClass(), values.length);
          for (int i = 0; i < values.length; i++) {
              Array.set(arrayToReturn, i, type.instantiateObject(values[i]));
          }
          logger.exiting(arrayToReturn);
          return arrayToReturn;
      }
docs: This helper method facilitates creation of {@link DefaultCustomTypeTest} arrays and pre-populates them with the
  set of String values provided.
  
  @param type
  A {@link DefaultCustomType} object that represents the type of the array to be instantiated.
  @param values
  A {@link String} array that represents the set of values that should be used to pre-populate the
  newly constructed array.
  @return An array of type {@link DefaultCustomType}