@Override
  public FileSystem newFileSystem(URI uri, Map<String, ?> env) {
    if (env.get(INITIALIZATION_KEY) == Boolean.TRUE) {
      CoreRoutingFileSystem.setMountedFSPrefix((String)env.get(MOUNTED_FS_PREFIX));
      CorePath.setMountedDelegateClassName((String)env.get(PATH_CLASS_NAME));
      myProviderClassName = (String)env.get(PROVIDER_CLASS_NAME);
      if (env.get(INITIALIZATION_MOUNTED_FS_PROVIDER_KEY) == Boolean.TRUE) {
        synchronized (myLock) {
          //noinspection unchecked
          myFileSystem.initialize((String)env.get(FILESYSTEM_CLASS_NAME),
                                  (Class<? extends CoreRoutingFileSystemDelegate>)env.get(ROUTING_FILESYSTEM_DELEGATE_CLASS));
          getMountedFSProvider();
          return null;
        }
      }
      //noinspection unchecked
      myFileSystem.initialize((String)env.get(FILESYSTEM_CLASS_NAME),
                              (Class<? extends CoreRoutingFileSystemDelegate>)env.get(ROUTING_FILESYSTEM_DELEGATE_CLASS));
      return null;
    }
    throw new IllegalStateException("File system already exists");
  }
@Override
  public FileSystem newFileSystem(URI uri, Map<String, ?> env)