The answer to the question is this. The reason name never pull up the needed information is due to it being inform wrong. data needs to be replace with names. Ones that has been done it can search and retrieve the correct information, the same goes for year and num-parts, the data just needs to be replace.
Incorrect
ArrayList<String> names = handler.getnames();
System.out.println("name List");
System.out.println("----------");
for (int i = 0; i < **data**.size(); i++) {
String name = **data**.get(i);
name = name.toUpperCase();
System.out.println((i + 1) + ": " + name);
Correctly Inform
ArrayList<String> names = handler.getnames();
System.out.println("name List");
System.out.println("----------");
for (int i = 0; i < **names**.size(); i++) {
String name = **names**.get(i);
name = name.toUpperCase();
System.out.println((i + 1) + ": " + name);
Credit goes to Kelvin @ tutor.com