code: @SuppressWarnings("unchecked")
    static Map<Path, Class<? extends Mapper>> getMapperTypeMap(JobConf conf) {
      if (conf.get("mapred.input.dir.mappers") == null) {
        return Collections.emptyMap();
      }
      Map<Path, Class<? extends Mapper>> m = new HashMap<Path, Class<? extends Mapper>>();
      String[] pathMappings = conf.get("mapred.input.dir.mappers").split(",");
      for (String pathMapping : pathMappings) {
        String[] split = pathMapping.split(";");
        Class<? extends Mapper> mapClass;
        try {
         mapClass = (Class<? extends Mapper>) conf.getClassByName(split[1]);
        } catch (ClassNotFoundException e) {
         throw new RuntimeException(e);
        }
        m.put(new Path(split[0]), mapClass);
      }
      return m;
    }
docs: Retrieves a map of {@link Path}s to the {@link Mapper} class that
  should be used for them.
  
  @param conf The confuration of the job
  @see #addInputPath(JobConf, Path, Class, Class)
  @return A map of paths to mappers for the job