private String getGenericType(JType jType) {
    if (jType.erasure().name().equals("List")) {
      final String typeName = jType.fullName();
      int start = 0;
      int end = typeName.length();

      for (int i = 0; i < typeName.length(); ++i) {
        switch (typeName.charAt(i)) {
          case '<':
            start = i;
            break;
          case '>':
            end = i;
            break;
        }
      }
      // plus one for excluding '<'
      return typeName.substring(start + 1, end);
    }
    return jType.erasure().name();
  }