code: private static List<String> getPathList(File f) {
  		List<String> l = new ArrayList<String>();
  		File r;
  		try {
  			r = f.getCanonicalFile();
  			while(r != null) {
  				l.add(r.getName());
  				r = r.getParentFile();
  			}
  		}
  		catch (IOException e) {
  			e.printStackTrace();
  			l = null;
  		}
  		return l;
  	}
docs: break a path down into individual elements and add to a list.
  example : if a path is /a/b/c/d.txt, the breakdown will be [d.txt,c,b,a]
  @param f input file
  @return a List collection with the individual elements of the path in
  reverse order